Установка цен номенклатуры

Тема в разделе "1C и всё что с ней связано", создана пользователем Sangitam, 7 сен 2011.

  1. Sangitam

    Sangitam Well-Known Member

    Регистрация:
    4 фев 2008
    Сообщения:
    90
    Симпатии:
    0
    Вот такой блочок работал себе, работал, и вдруг перестал.
    тз -- таблица, заполняемая из Екселя. По циклу в отладчике все прекрасно, но результат:
    В документ установке цен номенклатуры добавляется только одна строка из допустим ста.

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

    Sangitam Well-Known Member

    Регистрация:
    4 фев 2008
    Сообщения:
    90
    Симпатии:
    0
    Magic какой-то: поковырял сам документ УЦН, поковырял блочок, все "ковыряки" вернул на место -- теперь грузится адекватный список товаров, однако только с ценойСНДС.
     
  3. Дайнеко

    Дайнеко Well-Known Member
    1C Team

    Регистрация:
    19 ноя 2009
    Сообщения:
    951
    Симпатии:
    0
    Однако, Изящный текст. Ты вот примеру, не проверяешь НайтиПоНаименованию("ЦенаСНДС") нашло или нет? Не знаю структуру до-та, но понимаю, что логика заполнения чудная: на каждую строку исходной ТЗ в док-т две строки.
     
  4. puh14

    puh14 Well-Known Member
    1C Team

    Регистрация:
    11 июл 2008
    Сообщения:
    1.412
    Симпатии:
    0
    Ну единственное что может порезать количество в таб чсати товары строк это Стртз.Наименование = Неопределено . Где-то тут копать надо.
     
  5. Sangitam

    Sangitam Well-Known Member

    Регистрация:
    4 фев 2008
    Сообщения:
    90
    Симпатии:
    0
    Пришлось в итоге делать два документа по одному на каждый тип цен.
    Самое интересное, что, вышеприведенный код, как я говорил, долгое время заполнял УЦН двумя типами цен без проблем. Просто однажды он взял и заполнил только одной пустой строкой.
    Вопрос в общем-то сейчас перешел больше в теорию -- например, может ли такое быть из-за, допустим, апгрейда релиза платформы?

    Вот окончательный вариант


    Докум=Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
    СпрТЦ = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("ЦенаБезНДС");
    СтрТипов = Докум.ТипыЦен.Добавить();
    СтрТипов.ТипЦен = СпрТЦ;
    Докум.Дата=ТекущаяДата();
    Докум.Товары.Очистить();
    Для Каждого Стртзз из тз Цикл
    Если Стртзз.Наименование = Неопределено Тогда
    Продолжить;
    КонецЕсли;
    СпрТМЦ = Справочники.Номенклатура.НайтиПоНаименованию(Стртзз.Наименование,Истина);
    Если СпрТМЦ <> Справочники.Номенклатура.ПустаяСсылка() Тогда
    НовСтрок = Докум.Товары.Добавить();
    НовСтрок.Номенклатура = СпрТМЦ;
    НовСтрок.ТипЦен = СпрТЦ;
    Едизм = Справочники.ЕдиницыИзмерения.НайтиПоКоду("000000010");
    НовСтрок.ЕдиницаИзмерения = Едизм;
    НовСтрок.Цена = Стртзз.ЦенаБезНДС;
    СпрВал = Справочники.Валюты.НайтиПоНаименованию("UAH");
    НовСтрок.Валюта= СпрВал;
    КонецЕсли;
    КонецЦикла;
    Докум.Записать();
     
Загрузка...
Похожие Темы - Установка цен номенклатуры
  1. Serj100500
    Ответов:
    4
    Просмотров:
    49
  2. geliz
    Ответов:
    1
    Просмотров:
    692
  3. Vander
    Ответов:
    14
    Просмотров:
    2.551
  4. lionk
    Ответов:
    4
    Просмотров:
    755
  5. dimat
    Ответов:
    50
    Просмотров:
    6.314

Поделиться этой страницей