0
AlexKulikov
10.11.17
✎
18:20
|
Добрый день, уважаемые форумчане.
Подскажите пожалуйста, со следующей проблемой.
Программно создаю документ установки цен номенклатуры с несколькими видами цен
Далее добавляю в табличную часть товары данные о товаре и цена, но записывается только одна цена.
Ниже привожу кусок кода:
НовыйДокументУстановкиЦенНоменклатуры = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
НовыйДокументУстановкиЦенНоменклатуры.Дата = ТекущаяДата();
НовыйДокументУстановкиЦенНоменклатуры.Согласован = Истина;
НовыйДокументУстановкиЦенНоменклатуры.Ответственный = Пользователи.ТекущийПользователь();
ВидЦеныРозничный = Справочники.ВидыЦен.НайтиПоНаименованию("Розничная, rur");
ВидЦеныОптовый = Справочники.ВидыЦен.НайтиПоНаименованию("Закупочная, rur");
ТЧВидЦены = НовыйДокументУстановкиЦенНоменклатуры.ВидыЦен.Добавить();
ТЧВидЦены.ВидЦены = ВидЦеныРозничный;
ТЧВидЦеныОтптовый = НовыйДокументУстановкиЦенНоменклатуры.ВидыЦен.Добавить();
ТЧВидЦеныОтптовый.ВидЦены = ВидЦеныОптовый;
Для каждого Элемента Из ТаблицаДанных Цикл
Если ЗначениеЗаполнено(Элемента.ОптоваяЦена) ИЛИ ЗначениеЗаполнено(Элемента.РозничнаяЦена) Тогда
НоваяСтрокаТЧТовары = НовыйДокументУстановкиЦенНоменклатуры.Товары.Добавить();
НоваяСтрокаТЧТовары.Номенклатура = Элемента.НоменклатураСсылка;
Если ЗначениеЗаполнено(Элемента.РозничнаяЦена) Тогда
НоваяСтрокаТЧТовары.ВидЦены = ВидЦеныРозничный;
ОбработаннаяЦена = УбратьЛишниеСимволыИзЦены(Элемента.РозничнаяЦена);
НоваяСтрокаТЧТовары.Цена = Формат(Число(ОбработаннаяЦена),"ЧДЦ=2");
КонецЕсли;
Если ЗначениеЗаполнено(Элемента.ОптоваяЦена) Тогда
НоваяСтрокаТЧТовары.ВидЦены = ВидЦеныОптовый;
ОбработаннаяЦена = УбратьЛишниеСимволыИзЦены(Элемента.ОптоваяЦена);
НоваяСтрокаТЧТовары.Цена = Формат(Число(ОбработаннаяЦена),"ЧДЦ=2");
КонецЕсли;
НовыйДокументУстановкиЦенНоменклатуры.Товары.Свернуть("Номенклатура,Характеристика, ВидЦены, Цена");
КонецЕсли;
КонецЦикла;
|
|