Запрос к регистру сведений ЦеныНоменклатуры

1. Lexx32 20 24.04.19 13:24 Сейчас в теме
Всем привет, пожалуйста помогите новичку..
Нужно сделать запрос к регистру сведений ценыНоменклатуры, выбрать с помощью Подобно Номенклатуру, выбрать максимальную цену и вернуть ее. Делаю функцию
Функция ПолучитьЦенуПрихода(Тов)
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ РАЗЛИЧНЫЕ
		|	ЦеныНоменклатуры.Номенклатура КАК Номенклатура,
		|	СРЕДНЕЕ(ЦеныНоменклатуры.Цена) КАК Цена
		|ИЗ
		|	РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
		|ГДЕ
		|	Номенклатура Подобно "" + Тов + "%"
		|СГРУППИРОВАТЬ ПО
		|	ЦеныНоменклатуры.Номенклатура
		|УПОРЯДОЧИТЬ ПО
		|	Номенклатура УБЫВ";
	
	 РезультатЗапроса = Запрос.Выполнить();
  	Выборка = РезультатЗапроса.Выбрать();
	ТТЗ = Запрос.Выполнить().Выгрузить();
	Если ТТЗ.Количество()>0 Тогда
		//ТТЗ.Сортировать("Цена Убыв");
		Возврат ТТЗ[0].Цена;
	Иначе
		Возврат 0;
	КонеЦЕсли;
	
КонецФункции

Показать

Выходит ошибка - Преобразование к типу число не может быть выполнено.. В чем может быть причина? И как исправить??
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. independ 1520 24.04.19 13:27 Сейчас в теме
(1)
|    Номенклатура.Наименование Подобно "" + Тов + "%"
3. VmvLer 24.04.19 13:28 Сейчас в теме
так пробуйте
Номенклатура.Наименовение Подобно &СтрокаПоиска
4. Lexx32 20 24.04.19 14:14 Сейчас в теме
(3) Тогда пишет не задано значение параметра "Тов"
Номенклатура Подобно <<?>>&Тов
5. Lexx32 20 24.04.19 14:25 Сейчас в теме
Вот так работает, всем спасибо, тема закрыта.
Функция ПолучитьЦенуПрихода(Тов)
	Тв = СокрЛП(Тов);
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ РАЗЛИЧНЫЕ
		|	ЦеныНоменклатуры.Номенклатура КАК Номенклатура,
		|	Максимум(ЦеныНоменклатуры.Цена) КАК Цена
		|ИЗ
		|	РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
		|ГДЕ
		|	Номенклатура.Наименование Подобно """+ Строка(Тв) + "%""
		|СГРУППИРОВАТЬ ПО
		|	ЦеныНоменклатуры.Номенклатура
		|УПОРЯДОЧИТЬ ПО
		|	Номенклатура УБЫВ";
	
	 РезультатЗапроса = Запрос.Выполнить();
  	Выборка = РезультатЗапроса.Выбрать();
	ТТЗ = Запрос.Выполнить().Выгрузить();
	Если ТТЗ.Количество()>0 Тогда
		//ТТЗ.Сортировать("Цена Убыв");
		Возврат ТТЗ[0].Цена;
	Иначе
		Возврат 0;
	КонеЦЕсли;
	
КонецФункции

Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот