По созданной программно номенклатуре не записываются изменения цен в РС ЦеныНоменклатуры
Выгружаю много данных из Excel. В случае отсутствия номенклатуры, создаю ее программно.
Затем программно создаю док-т установки цен.
Проблема в том, что по всей этой созданной номенклатуре не записываются данные в регистр сведений ЦеныНоменклатуры. Если руками добавлю в этот док-т номенклатуру, созданную через Предприятие, то по ней запись создается.
Если создаю руками новый док-т установки цен, добавляю туда, опять же, руками номенклатуру, созданную программно, то всё равно в РС не попадают данные.
Что не так с моей номенклатурой?
[UPD]
Добавляю копированием созданной программно номенклатуры новую, по ней запись создается. ШОЗАБРЕД?!
&НаСервере
Процедура СоздатьНоменклатуру(Строка)
Номенклатура = Справочники.Номенклатура.СоздатьЭлемент();
Номенклатура.Артикул = Строка.КодТовара;
Номенклатура.ВесЕдиницаИзмерения = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоКоду(796);
Если Не ЗначениеЗаполнено(Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товары")) Тогда
СоздатьВидНоменклатуры("Товары");
КонецЕсли;
Номенклатура.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товары");
Номенклатура.ЕдиницаИзмерения = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоКоду(796);
Номенклатура.Наименование = Строка.Наименование;
Номенклатура.НаименованиеПолное = Строка.Наименование;
Если Не ЗначениеЗаполнено(Справочники.Производители.НайтиПоНаименованию(Строка.Производитель)) Тогда
СоздатьПроизводителя(Строка);
КонецЕсли;
Номенклатура.Производитель = Справочники.Производители.НайтиПоНаименованию(Строка.Производитель);
Номенклатура.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
Номенклатура.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар;
Номенклатура.Записать();
КонецПроцедуры
ПоказатьЗатем программно создаю док-т установки цен.
Проблема в том, что по всей этой созданной номенклатуре не записываются данные в регистр сведений ЦеныНоменклатуры. Если руками добавлю в этот док-т номенклатуру, созданную через Предприятие, то по ней запись создается.
Если создаю руками новый док-т установки цен, добавляю туда, опять же, руками номенклатуру, созданную программно, то всё равно в РС не попадают данные.
Что не так с моей номенклатурой?
[UPD]
Добавляю копированием созданной программно номенклатуры новую, по ней запись создается. ШОЗАБРЕД?!
По теме из базы знаний
- Всякие полезности
- Алгоритмы с решениями для экзамена Специалист УТ 11.1
- Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен)
- Интеграция с маркетплейсами МегаМаркет, Wildberries, OZON, ЯндексМаркет, VK, Avito, Леруа Мерлен, Aliexpress, КУПЕР, Dostavista
- Как читать чужой код? Часть 3. Разбор и доработка запросов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Универсальный способ: 1) сравнить программную и скопированную номенклатуру пореквизитно, например, запросом.
2) Найти все ссылки скопированной и созданной программно. Сравнить.
Либо какой-то реквизит недозаполнен/заполнен не правильно, либо в какой-то РС не прописываете.
2) Найти все ссылки скопированной и созданной программно. Сравнить.
Либо какой-то реквизит недозаполнен/заполнен не правильно, либо в какой-то РС не прописываете.
Разобрался!
Зашел в созданную мной номенклатуру, нажал "Записать" и получил ошибки:
-Поле "Вариант оформления продажи" не заполнено
-Поле "Использование характеристик" не заполнено
Дальше просто добавил две строчки кода и готово!
Зашел в созданную мной номенклатуру, нажал "Записать" и получил ошибки:
-Поле "Вариант оформления продажи" не заполнено
-Поле "Использование характеристик" не заполнено
Дальше просто добавил две строчки кода и готово!
Номенклатура.ВариантОформленияПродажи = Перечисления.ВариантыОформленияПродажи.РеализацияТоваровУслуг;
Номенклатура.ИспользованиеХарактеристик = Перечисления.ВариантыИспользованияХарактеристикНоменклатуры.НеИспользовать;
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот