Добрый день! Написал внешнюю обработку по загрузке цен номенклатуры. Документ "Установка цен номенклатуры". Движение происходит в регистре сведений "ЦеныНоменклатуры". Загрузка данных происходит из файла Excel в таблицу на форме. Затем циклом по таблице добавляю в документ.
документУстановкаЦен = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
документУстановкаЦен.Дата = РеквизитДатаУстановкиЦены; // Дата, с которой начинает действовать цена с поля формы
документУстановкаЦен.Ответственный = Пользователи.ТекущийПользователь();
документУстановкаЦен.Согласован = Истина;
документУстановкаЦен.Статус = Перечисления.СтатусыУстановокЦенНоменклатуры.Согласован;
// Заполняем таб.часть "ВидыЦен".
новаяСтрокаВидЦены = документУстановкаЦен.ВидыЦен.Добавить();
новаяСтрокаВидЦены.ВидЦены = РеквизитВидЦены; // Вид цены, с поля формы
// Заполняем таб.часть "НаборыЗначенийДоступа".
новаяСтрокаНаборыЗначенийДоступа = документУстановкаЦен.НаборыЗначенийДоступа.Добавить();
новаяСтрокаНаборыЗначенийДоступа.ЗначениеДоступа = РеквизитВидЦены;
Для Каждого стрТЗ Из РеквизитТаблицаСНовымиЦенами Цикл
// Заполняем таб.часть "Товар".
новаяСтрокаТовар = документУстановкаЦен.Товары.Добавить();
новаяСтрокаТовар.ВидЦены = РеквизитВидЦены;
новаяСтрокаТовар.Номенклатура = стрТЗ.КолонкаНоменклатура;
новаяСтрокаТовар.Цена = стрТЗ.КолонкаЦена;
новаяСтрокаТовар.ЦенаИзмененаВручную = Истина;
КонецЦикла;
//документУстановкаЦен.Записать(РежимЗаписиДокумента.Запись);
Попытка
документУстановкаЦен.Записать(РежимЗаписиДокумента.Проведение);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
andr_andrey @ Сегодня, 14:12
,
Спасибо за ответ! Все, разобрался. Да, это ERP. Проблемы были две, 1-я это дубликаты в файле эксель. 2-я - в регистре сведений некоторые позиции уже были заведены на дату, которую выбирал с той же ценой, поэтому и ругался.
@lex @ 24.08.18, 8:38
,
Здравствуйте, можете поделиться вашей обработкой ?
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua