Имя: Пароль:
1C
 
УТ 11.2 Цена регистрируется, но не выводится в ценах(прайс-лист)
0 _Дайвер_
 
03.08.16
03:02
Доработал документ ПеремещениеТоваров, вывел 3 доп. реквизита ТекЦена(Подр№1), ТекЦена(Подр№2), НоваяЦена(Подр№2). Предназначается для установки ценЮ, провожу документ. Движения по регистру цен есть, а вот цены не выводятся не в прайс листе ни где либо еще. Сделал ВнешнийОтчет по ценам в разрезе подразделений, проверяю...Вуаля там цены эти есть. Что за магия!? Где копать?
1 Garykom
 
гуру
03.08.16
03:12
(0) Копать в сторону запросов/кода для "выводятся в прайс лист"
2 _Дайвер_
 
03.08.16
03:21
(1) Ты имеешь ввиду в обработке ПрайсЛист?
3 Garykom
 
гуру
03.08.16
03:27
(2) Смотри ты "доработал документ" добавив какие то свои реквизиты "цены".
Для начала вопрос зачем это?

Ну ладно типа все правильно доработал и "модуль проведения" поправил чтобы твои "новые цены" правильно в регистр цен писались.

А с чего взял что "обработка Прайс-Лист" берет данные именно из этого регистра?
4 Garykom
 
гуру
03.08.16
03:29
(3)+ Ну или не совсем правильно записи в регистр цен добавляешь, может заменять нуна по периоду нужному.

ЗЫ
Кстати когда приходится дорабатывать типовые предпочитаю не лезти во внутренности "проведения" а юзать типовые документы для этого.
Например в этом случае путем создания/заполнения и проведения документов типа "установка цен".
5 _Дайвер_
 
03.08.16
03:34
(4) Сделал подписку на событие, в обработчике прописал код:
Процедура ХХХ_ПроведениеПеремещениеТоваровОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт
    
    Если Ложь Тогда
        Источник = Документы.ПеремещениеТоваров.СоздатьДокумент();
    КонецЕсли;
    
    ЦеныНоменклатуры = Источник.Движения.ЦеныНоменклатуры;
    ЦеныНоменклатуры.Записывать = Истина;
    
    Для каждого СтрокаТабличнойЧасти Из Источник.Товары Цикл
        
        Если СтрокаТабличнойЧасти.кит_ЦенаНовая = 0 Тогда
            Продолжить;
        КонецЕсли;
        
        // Розничная филиала
        Движение = ЦеныНоменклатуры.Добавить();
        Движение.Период = Источник.Дата;
        Движение.Валюта = Источник.ВидЦены.ВалютаЦены;
        Движение.ВидЦены = Источник.ВидЦены;
        Движение.Номенклатура = СтрокаТабличнойЧасти.Номенклатура;
        Движение.Цена = СтрокаТабличнойЧасти.кит_ЦенаНовая;
        
    КонецЦикла

КонецПроцедуры
6 _Дайвер_
 
03.08.16
03:37
(3) Цены берет из регистра сведений :ЦеныНоменклатуры, нужно это для того, что пользователям лень заходить куда - то и делать те же операции по смыслу, как обычно хотят все в одном месте чтобы было, и само делалось)
7 Garykom
 
гуру
03.08.16
03:40
(6) Я понимаю что из регистра, ты штатный док установки цен глянь, потом 2-й такой же сделай и посмотри что записями в регистре вышло (скоко их).

Документу можно делать программно, в (4) об этом речь а не вручную юзерам. Причем ссылку на документу лучше тоже в реквизит шапки дока тогда и если пустой то создаем, если есть док "установки цен" уже программный то перезаполняем.
А при отмене проведения своего "доработанного дока" аналогично отменяем "установку цен" программно

(5) "Движение = ЦеныНоменклатуры.Добавить();"
8 Garykom
 
гуру
03.08.16
03:41
9 _Дайвер_
 
03.08.16
03:48
(8) Спасибо за помощь, щас буду проверять
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.