Запрос с условием
X

Привет дорогой друг

Наш сайт существует и развиваетется за счет рекламы. Пожалуйста, отключите блокировку рекламы AdBlock или подобное, для нашего сайта. Спасибо!
Показано с 1 по 5 из 5
  1. #1
    Пришел за помощью

    Регистрация
    09.12.2016
    Сообщений
    11
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях

    По умолчанию Запрос с условием

    Есть справочник Ингредиенты и документ Калькуляция блюд с табличной частью Составляющие.
    Необходимо при изменении номенклатуры в форме документа поставить значение "Ккал" из справочника Ингредиенты.

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

  2. #2
    Гордость форума PRO +

    Регистрация
    29.11.2013
    Адрес
    Берег Волги
    Сообщений
    2010
    Сказал(а) спасибо
    650
    Поблагодарили 10221 раз(а) в 2691 сообщениях

    По умолчанию Re: Запрос с условием

    Какой тип значения у Стр.НаименованиеИнгредиен� �а?

  3. #3
    Просто юзер
    Аватар для Анатолик
    Регистрация
    21.01.2011
    Адрес
    Россия, РО
    Сообщений
    52
    Сказал(а) спасибо
    6
    Поблагодарили 9 раз(а) в 6 сообщениях

    По умолчанию Re: Запрос с условием

    А в чем вопрос, не возвращает значение? Что возвращает?

  4. #4
    Пришел за помощью

    Регистрация
    09.12.2016
    Сообщений
    11
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях

    По умолчанию Re: Запрос с условием

    В том что условие не выполняется. Приведу пример.
    В пошаговой отладке значение "ВыборкаДетальныеЗаписи.На именование" пишется в двойных ковычках, а "Ингредиент" записывается без ковычек. В результате условие выглядит след.образом Если "Рис" = Рис Тогда....

  5. #5
    Гордость форума PRO

    Регистрация
    29.01.2010
    Сообщений
    1212
    Сказал(а) спасибо
    30
    Поблагодарили 261 раз(а) в 245 сообщениях

    По умолчанию Re: Запрос с условием

    Цитата Сообщение от DenisSt Посмотреть сообщение
    В том что условие не выполняется. Приведу пример.
    В пошаговой отладке значение "ВыборкаДетальныеЗаписи.На именование" пишется в двойных ковычках, а "Ингредиент" записывается без ковычек. В результате условие выглядит след.образом Если "Рис" = Рис Тогда....
    (задумчиво) Очень похоже, что вам показывают, что "ВыборкаДетальныеЗаписи.На именование" имеет тип "Строка" и поэтому вы видите это "в кавычках", ну а "Ингредиент" - это ссылка, поэтому естественно идет "без кавычек". Хотите кавычки - выбирайте "Ингредиент.Наименование ".

    Но в вашем случае проблема на самом деле в том, что в контексте "&НаСервереБезКонтекста" 1Ска "знает" что такое ссылка на элемент справочника, а вот процедура в контексте "&НаКлиенте" этого ясен пень "не знает", вот при возврате все и теряется.

Похожие темы

  1. Помогите с условием
    от lekhaplaton в разделе 1С - Предприятие 8.0, 8.1, 8.2, 8.3
    Ответов: 0
    Последнее сообщение: 28.07.2014, 09:57
  2. Как правельно поставить запрос с условием
    от DIZZID в разделе 1С - Предприятие 8.0, 8.1, 8.2, 8.3
    Ответов: 1
    Последнее сообщение: 16.07.2014, 04:21

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •