Есть таблица с товарами и ценами в документе Поставка. Есть справочник контрагентов с таблицей цен для каждого контрагента. Нужно из таблицы цен контрагента вытащить цену на нужный товар. Для этого написал такой код:
&НаКлиенте
Процедура ТоварыНоменклатураПриИзменении(Элемент)
Контрагент = Объект.Контрагент;
СтрокаТабличнойЧасти = Элементы.Товары.ТекущиеДанные;
Товар = Элементы.Товары.ТекущиеДанные.Номенклатура;
СтрокаТабличнойЧасти.Цена = ПолучитьЦены(Контрагент,Товар);
КонецПроцедуры
&НаСервере
Функция ПолучитьЦены(Контрагент, Товар)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| Контрагенты.Цены.Цена
|ИЗ
| Справочник.Контрагенты КАК Контрагенты
|ГДЕ
| Контрагенты.Наименование = &Контрагент
| И Контрагенты.Цены.Товар = &Товар";
Запрос.УстановитьПараметр("Контрагент", Контрагент);
Запрос.УстановитьПараметр("Товар", Товар);
Результат = Запрос.Выполнить();
Возврат Результат.Цена;
КонецФункции
Но вот получить цену так и не удалось. Где здесь может быть ошибка?
При отладке данного кода такой результат:
{Документ.Поставка.Форма.ФормаДокумента.Форма(40)}: Поле объекта не обнаружено (Цена)
Возврат Результат.Цена;