Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Проведение документа "установка цен" программно

Проведение документа
Я
   Pyryrym
 
04.08.20 - 19:09
У меня есть таблица, с перечнем номенклатуры и ценой. Необходимо при вызове внешней обработки, установить новые цены. Вид цены для всей таблицы одинаковый

    
Для Каждого Строка из ТЗ Цикл
    Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Док.Согласован = Истина;
    Док.Ответственный = Пользователи.ТекущийПользователь();
        
        НоваяЦена = Док.Товары.Добавить();
    НоваяЦена.Номенклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Строка.Артикул).Ссылка;
    НоваяЦена.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию(Строка.ВидЦены).Ссылка;
    НоваяЦена.Упаковка = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоНаименованию(Строка.ЕдиницаИзмерения).Ссылка;
    НоваяЦена.Цена = Строка.Цена;
    Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Оперативный);

КонецЦикла;


Но при этом никакие цены не задаются, можете помочь?
   dka80
 
1 - 04.08.20 - 19:15
Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    Док.Дата = ТекущаяДата(); 
    Док.Согласован = Истина; 
    Док.Ответственный = Пользователи.ТекущийПользователь();
         
И проведнние документа вынеси за цикл
   Pyryrym
 
2 - 04.08.20 - 19:24
(1) Ни в этом
   Pyryrym
 
3 - 04.08.20 - 19:25
(1) Ни в этом

Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
Док.Дата = ТекущаяДата();
Док.Согласован = Истина;
Док.Ответственный = Пользователи.ТекущийПользователь();
Для Каждого Строка из ТЗ Цикл

        
        НоваяЦена = Док.Товары.Добавить();
    НоваяЦена.Номенклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Строка.Артикул).Ссылка;
    НоваяЦена.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию(Строка.ВидЦены).Ссылка;
    НоваяЦена.Упаковка = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоНаименованию(Строка.ЕдиницаИзмерения).Ссылка;
    НоваяЦена.Цена = Строка.Цена;

КонецЦикла;
Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Оперативный);


Ни в этом

Для Каждого Строка из ТЗ Цикл
    Док = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Док.Согласован = Истина;
    Док.Ответственный = Пользователи.ТекущийПользователь();
        
        НоваяЦена = Док.Товары.Добавить();
    НоваяЦена.Номенклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Строка.Артикул).Ссылка;
    НоваяЦена.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию(Строка.ВидЦены).Ссылка;
    НоваяЦена.Упаковка = Справочники.УпаковкиЕдиницыИзмерения.НайтиПоНаименованию(Строка.ЕдиницаИзмерения).Ссылка;
    НоваяЦена.Цена = Строка.Цена;
КонецЦикла;
Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Оперативный);

случае ничего не поменялось
   RomanYS
 
4 - 04.08.20 - 19:28
(0) ТЗ то не пустая?
".Ссылка" - убери везде
   Pyryrym
 
5 - 04.08.20 - 19:36
(4) Не пустая, не помогло
   RomanYS
 
6 - 04.08.20 - 19:39
(5) и не должно было.
Если не пустая, смотри созданные документы. Може ещё что нужно было заполнить, чтобы движения правильные сформировались. Реквизита Организация нет?
   Креатив
 
7 - 04.08.20 - 19:42
(0)Конфа-то какая? В Рознице нужно ещё ТЧ с видами цен заполнять.
   Креатив
 
8 - 04.08.20 - 19:43
(7)+А так создай документ ручками и посмотри все заполненные данные.
   Pyryrym
 
9 - 04.08.20 - 19:48
(7) УТ ред11
   Pyryrym
 
10 - 04.08.20 - 19:51
Кажется понял, в чем ошибка

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.