Форум программистов, компьютерный форум, киберфорум
Наши страницы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/76: Рейтинг темы: голосов - 76, средняя оценка - 4.67
Somkytom
0 / 0 / 0
Регистрация: 31.01.2008
Сообщений: 89
1

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

06.09.2011, 21:18. Просмотров 13707. Ответов 4
Метки нет (Все метки)

Вот такой блочок работал себе, работал, и вдруг перестал.
тз -- таблица, заполняемая из Екселя. По циклу в отладчике все прекрасно, но результат:
В документ установке цен номенклатуры добавляется только одна строка из допустим ста.

Докум=Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
СпрТЦ = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("ЦенаБезНДС");
СтрТипов = Докум.ТипыЦен.Добавить();
СтрТипов.ТипЦен = СпрТЦ;
СпрТЦ1 = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("ЦенаСНДС");
СтрТипов = Докум.ТипыЦен.Добавить();
СтрТипов.ТипЦен = СпрТЦ1;
Докум.Дата=ТекущаяДата();
Для Каждого Стртз из тз Цикл
Если Стртз.Наименование = Неопределено Тогда
Продолжить;
КонецЕсли;
НовСтрок = Докум.Товары.Добавить();
СпрТМЦ = Справочники.Номенклатура.НайтиПоНаименованию(Стртз.Наименование,Истина);
НовСтрок.Номенклатура = СпрТМЦ.Наименование;
НовСтрок.ТипЦен = СпрТЦ;
Едизм = Справочники.ЕдиницыИзмерения.НайтиПоКоду("000000010");
НовСтрок.ЕдиницаИзмерения = Едизм;
НовСтрок.Цена = Стртз.ЦенаБезНДС;
СпрВал = Справочники.Валюты.НайтиПоНаименованию("грн");
НовСтрок.Валюта= СпрВал;
НовСтрок = Докум.Товары.Добавить();
НовСтрок.Номенклатура = СпрТМЦ.Наименование;
НовСтрок.ТипЦен = СпрТЦ1;
НовСтрок.ЕдиницаИзмерения = Едизм;
НовСтрок.Цена = Стртз.ЦенаСНДС;
НовСтрок.Валюта= СпрВал;
КонецЦикла;
Докум.Записать();
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.09.2011, 21:18
Ответы с готовыми решениями:

Установка цен номенклатуры
Добрый день. Подскажите пожалуйста есть 4000 позиций номенклатуры, 2 склада,...

Установка Цен Номенклатуры
Всем примет. Платформа 1С:Предприятие 8.1 (8.1.14.72) Конфа Розница, редакция...

Установка цен номенклатуры по ценам контрагентов
Дано: имеются цены номенклатуры контрагентов ( = закупочные ) Необходимо...

Проблема с ТЧ документа установка цен номенклатуры в УТ
Табличную часть документа установка цен номенклатуры заполняю так (загружаю из...

Автоматизация создания документа "Установка цен номенклатуры"
Необходимо автоматически создавать документы "Ценообразование" -> "Установка...

4
Somkytom
0 / 0 / 0
Регистрация: 31.01.2008
Сообщений: 89
06.09.2011, 22:26 2
Magic какой-то: поковырял сам документ УЦН, поковырял блочок, все "ковыряки" вернул на место -- теперь грузится адекватный список товаров, однако только с ценойСНДС.
0
Дийнеки
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 947
07.09.2011, 01:15 3
Однако, Изящный текст. Ты вот примеру, не проверяешь НайтиПоНаименованию("ЦенаСНДС") нашло или нет? Не знаю структуру до-та, но понимаю, что логика заполнения чудная: на каждую строку исходной ТЗ в док-т две строки.
0
puh14
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
07.09.2011, 10:20 4
Ну единственное что может порезать количество в таб чсати товары строк это Стртз.Наименование = Неопределено . Где-то тут копать надо.
0
Somkytom
0 / 0 / 0
Регистрация: 31.01.2008
Сообщений: 89
07.09.2011, 15:19 5
Пришлось в итоге делать два документа по одному на каждый тип цен.
Самое интересное, что, вышеприведенный код, как я говорил, долгое время заполнял УЦН двумя типами цен без проблем. Просто однажды он взял и заполнил только одной пустой строкой.
Вопрос в общем-то сейчас перешел больше в теорию -- например, может ли такое быть из-за, допустим, апгрейда релиза платформы?

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


Докум=Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
СпрТЦ = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("ЦенаБезНДС");
СтрТипов = Докум.ТипыЦен.Добавить();
СтрТипов.ТипЦен = СпрТЦ;
Докум.Дата=ТекущаяДата();
Докум.Товары.Очистить();
Для Каждого Стртзз из тз Цикл
Если Стртзз.Наименование = Неопределено Тогда
Продолжить;
КонецЕсли;
СпрТМЦ = Справочники.Номенклатура.НайтиПоНаименованию(Стртзз.Наименование,Истина);
Если СпрТМЦ <> Справочники.Номенклатура.ПустаяСсылка() Тогда
НовСтрок = Докум.Товары.Добавить();
НовСтрок.Номенклатура = СпрТМЦ;
НовСтрок.ТипЦен = СпрТЦ;
Едизм = Справочники.ЕдиницыИзмерения.НайтиПоКоду("000000010");
НовСтрок.ЕдиницаИзмерения = Едизм;
НовСтрок.Цена = Стртзз.ЦенаБезНДС;
СпрВал = Справочники.Валюты.НайтиПоНаименованию("UAH");
НовСтрок.Валюта= СпрВал;
КонецЕсли;
КонецЦикла;
Докум.Записать();
0
07.09.2011, 15:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.09.2011, 15:19

Обработка "Подбор цен номенклатуры"
Имею 1с Предприятие 8,2 конфа Бухгалтерия Украины, редакция 1,2 (1.2.6.5). ...

Установка цен...
УТ 11 Как сделать так, чтобы при оформлении &quot;документа поступления&quot; цену...

Внешняя печатная форма.Установка типа цен
Доброе утро,уважаемый форум. Надеюсь на Вашу помощь: Мой вопрос состоит вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru