Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема почему не работает простая конструкция (число прочтений - 2522 )
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
почему не работает простая конструкция
08. Ноября 2007 :: 12:22
Печать  
Код
Выбрать все
	ТекстЗапроса="
	|SELECT
	|   Рег.Товар [Товар $Справочник.Номенклатура]
	| , SUM(СтоимостьПриход+НДСПриход) AS Прих
	| , SUM(СтоимостьРасход+НДСРасход) AS Расх
	|FROM $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,,(Фирма =	   $ПустойИд),(Фирма,Товар),(Стоимость,НДС)) AS рег
	|";
 


 
Ругается на Товар.Column 'рег.Товар' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: почему не работает простая конструкция
Ответ #1 - 08. Ноября 2007 :: 12:25
Печать  
Код
Выбрать все
ТекстЗапроса="
	|SELECT
	|   Рег.Товар [Товар $Справочник.Номенклатура]
	| , SUM(СтоимостьПриход+НДСПриход) AS Прих
	| , SUM(СтоимостьРасход+НДСРасход) AS Расх
	|FROM $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,,(Фирма =	   $ПустойИд),(Фирма,Товар),(Стоимость,НДС)) AS рег
	  |Group By Рег.Товар
	|";
 


  
Наверх
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: почему не работает простая конструкция
Ответ #2 - 08. Ноября 2007 :: 12:32
Печать  
maxa писал(а) 08. Ноября 2007 :: 12:22:
Код
Выбрать все
	ТекстЗапроса="
	|SELECT
	|   Рег.Товар [Товар $Справочник.Номенклатура]
	| , SUM(СтоимостьПриход+НДСПриход) AS Прих
	| , SUM(СтоимостьРасход+НДСРасход) AS Расх
	|FROM $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,,(Фирма =	   $ПустойИд),(Фирма,Товар),(Стоимость,НДС)) AS рег
	|";
 


 
Ругается на Товар.Column 'рег.Товар' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


Ну вот уже гораздо лутше Улыбка
  
Наверх
ICQ  
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: почему не работает простая конструкция
Ответ #3 - 08. Ноября 2007 :: 12:42
Печать  
maxa писал(а) 08. Ноября 2007 :: 12:22:
 
Ругается на Товар.Column 'рег.Товар' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


Цитата:
Столбец 'рег.Товар' в списке переменных запроса ошибочен, так как он не содержится ни в агрегатной функции ни в разделе GROUP BY
  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: почему не работает простая конструкция
Ответ #4 - 08. Ноября 2007 :: 12:56
Печать  
учус, блин....
Плачущий
  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: почему не работает простая конструкция
Ответ #5 - 08. Ноября 2007 :: 12:58
Печать  
Теперь не работает заремленная строка, на Позицию документа ругается...
Подскажите что не так.Хочу покупателя из взаиморасчетов вытянуть?Это вообще корректно или я не в том направлении иду?

Код
Выбрать все
	ТекстЗапроса="
	|SELECT
	|  $СвойстваНоменклатуры.ЗначениеСвойства [ЗначениеСвойства $Справочник.ЗначенияСвойств]
	| , SUM(СтоимостьПриход+НДСПриход) AS Прих
	| , SUM(СтоимостьРасход+НДСРасход) AS Расх
	|FROM $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,
	|,(Фирма = $ПустойИд) AND (Оборот<>0),(Фирма,Товар),(Стоимость,НДС)) AS рег
    |	INNER JOIN $Справочник.СвойстваНоменклатуры AS СвойстваНоменклатуры With (NOLOCK) ON СвойстваНоменклатуры.PARENTEXT = Рег.Товар
//    |	INNER JOIN  $Регистр.ВзаиморасчетыПокупателей as РегВ With (NOLOCK) ON Рег.ПозицияДокумента = РегВ.ПозицияДокумента
	|	WHERE ($СвойстваНоменклатуры.ВидСвойства = :ВыбСвойство)
  |Group By $СвойстваНоменклатуры.ЗначениеСвойства WITH ROLLUP
	|";
 

  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: почему не работает простая конструкция
Ответ #6 - 08. Ноября 2007 :: 13:21
Печать  
Расту. Уже все почти работает, только итоги почему-то задвоенные ,в чем ошибка
Код
Выбрать все
SELECT
	|   $РегВ.Клиент [Клиент $Справочник]
	| , $СвойстваНоменклатуры.ЗначениеСвойства [ЗначениеСвойства $Справочник.ЗначенияСвойств]
	| , SUM(СтоимостьПриход+НДСПриход) AS Прих
	| , SUM(СтоимостьРасход+НДСРасход) AS Расх
	|FROM $РегистрОбороты.ПартииТоваров(:ДатаНач,:ДатаКон~,Документ,
	|,(Фирма = $ПустойИд) AND (Оборот<>0),(Фирма,Товар),(Стоимость,НДС)) AS рег
    |	INNER JOIN $Справочник.СвойстваНоменклатуры AS СвойстваНоменклатуры With (NOLOCK) ON СвойстваНоменклатуры.PARENTEXT = Рег.Товар
    |	INNER JOIN  $Регистр.ВзаиморасчетыПокупателей as РегВ With (NOLOCK) ON RIGHT(Рег.ПозицияДокумента,9) = РегВ.IDDOC
	|	WHERE ($СвойстваНоменклатуры.ВидСвойства = :ВыбСвойство)
    |Group By $РегВ.Клиент,$СвойстваНоменклатуры.ЗначениеСвойства WITH ROLLUP
    |Order By $РегВ.Клиент 

  
Наверх
 
IP записан
 
U_zer
Экс-Участник


Re: почему не работает простая конструкция
Ответ #7 - 08. Ноября 2007 :: 13:55
Печать  
maxa писал(а) 08. Ноября 2007 :: 13:21:
Расту. Уже все почти работает, только итоги почему-то задвоенные ,в чем ошибка


Потому что джойнишь по ParentExt
  
Наверх
 
IP записан
 
maxa
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 130
Зарегистрирован: 07. Ноября 2007
Re: почему не работает простая конструкция
Ответ #8 - 08. Ноября 2007 :: 14:03
Печать  
и как мне это обойти?
Плачущий
  
Наверх
 
IP записан
 
U_zer
Экс-Участник


Re: почему не работает простая конструкция
Ответ #9 - 09. Ноября 2007 :: 06:57
Печать  
maxa писал(а) 08. Ноября 2007 :: 14:03:
и как мне это обойти?
Плачущий


1. Подумать.
2. Если ты используешь ВТ, старайся строго фиксировать измерения.
В твоем случае, было бы лучше, если бы в измерении стояли СвойстваНоменклатуры.
3. Используй Union.
4. Нафиг тут Rollup я вообще не пойму.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать