Имя: Пароль:
1C
 
Значение не является значением объектного типа (тип цены)
0 vladis222
 
30.06.19
12:23
Подскажите,пожалуйста, есть документ "Реализация товаров", когда я написал код в событие при изменении поля табличной части "Товар" :
&НаКлиенте
    // Вставить содержимое обработчика.
    СтрокаТабличнойЧасти = Элементы.РеализуемыеТовары.ТекущиеДанные;
// Установить цену.
СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.ТекущаяЦена(
Объект.Дата, СтрокаТабличнойЧасти.Товар, Объект.ТипЦены);

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

Когда я такой же код внес в событие при изменении "Тип цены",чтобы при переключении типа цены с одного на другой, цена с одной менялась на другую,если к примеру,оптовая 30,а розничная -40, то в самом начале работы, программа выдает сообщение что Значение не является объектного типа (Объект.ТипЦены), но затем, при переключении с одного вида цены на другой цена автоматом нормально меняется.Но почему ему не нравится ТипЦены,подскажите,пожалуйста? Ведь когда я сделал это для поля табличной части Товар - то не ругалось же
1 palsergeich
 
30.06.19
12:25
Код написал коряво.
Листинг в студию.
2 vladis222
 
30.06.19
12:30
Функция ТекущаяЦена(АктуальнаяДата, ЭлементНоменклатуры, ТипЦены) Экспорт
// Создать вспомогательный объект "Отбор".
Отбор = Новый Структура("Товар, ТипЦены", ЭлементНоменклатуры, ТипЦены);
// Получить актуальные значения ресурсов регистра.
ЗначенияРесурсов = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(АктуальнаяДата, Отбор);
Возврат ЗначенияРесурсов.Цена;
КонецФункции

Это общий модуль для вычисления самой свежей цены

&НаКлиенте
    // Вставить содержимое обработчика.
    СтрокаТабличнойЧасти = Элементы.РеализуемыеТовары.ТекущиеДанные;
// Установить цену.
СтрокаТабличнойЧасти.Цена = РаботаСоСправочниками.ТекущаяЦена(
Объект.Дата, СтрокаТабличнойЧасти.Товар, Объект.ТипЦены);

А это вставил в событие при изменении типа цены
3 ДенисЧ
 
30.06.19
12:32
Отладчиком встань и посмотри...
4 vladis222
 
30.06.19
12:43
(3) Понял ошибку кажется- цена устанавливается раньше чем выбран товар,поэтому оно и ругается
Ошибка? Это не ошибка, это системная функция.