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


1C++ rocks!

Сообщений: 61
Зарегистрирован: 16. Сентября 2010
Ошибка в запросе
15. Июня 2011 :: 11:00
Печать  
Не могу понять, что за ошибка

;
     
           ТекстЗапроса = "
           |SELECT
           |      Рег.Контрагент            [Контрагент $Справочник.Контрагенты]
           |      ,Рег.Микс                  [Микс $Справочник.Миксы]
           |      ,Рег.КредДокумент      [КредДокумент $Документ]
           |      ,SUM(Рег.Сумма)            КонОст
           |FROM(
           |      SELECT
           |            СпрД.ParentExt            [Контрагент $Справочник.Контрагенты]
           |            ,$Р.Микс                  [Микс $Справочник.Миксы]
           |            ,$Р.КредДокумент      [КредДокумент $Документ]
           |            ,$Р.СуммаРуб            Сумма
           |      FROM
           |            $РегистрИтоги.ПокупателиПоМиксам Р With (NOLOCK)
           |      INNER JOIN
           |            $Справочник.Договоры СпрД With (NOLOCK) ON СпрД.ID=$Р.Договор
           |      WHERE
           |            Р.PERIOD= cast ('"+стрдатыПредТА+"'as datetime)
           |
           |      UNION ALL
           |
           |      SELECT
           |            СпрД.ParentExt            [Контрагент $Справочник.Контрагенты]
           |            ,$Р.Микс                  [Микс $Справочник.Миксы]
           |            ,$Р.КредДокумент      [КредДокумент $Документ]
           |            ,($Р.СуммаРуб*((DEBKRED+1)%2)-$Р.СуммаРуб*DEBKRED)      Сумма
           |      FROM
           |            $Регистр.ПокупателиПоМиксам Р With (NOLOCK)
           |      INNER JOIN
           |            $Справочник.Договоры СпрД With (NOLOCK) ON СпрД.ID=$Р.Договор
           |      WHERE
           |            Р.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~
           |      ) Рег
           |GROUP BY
           |  Рег.Контрагент
           |  ,Рег.Микс
           |  ,Рег.КредДокумент
           |";
                 
           RS = Создатьобъект("ODBCRecordset");
           
           RS.УстановитьТекстовыйПараметр("НачДата",            НачМесяца(ДатаКонца));
           RS.УстановитьТекстовыйПараметр("КонДата",            ДатаКонца);

ругается
State 42S22, native 207, message [Microsoft][ODBC SQL Server Driver][SQL Server]Недопустимое имя столбца "Контрагент"

пробовал уже псевдонимы менять и т.д., но всё никак
если убираю верхний select и оставляю только объединение двух запросов, то всё нормально
в чем может быть проблема?
  
Наверх
 
IP записан
 
Anatol
Senior Member
****
Отсутствует


тыц, пыц, тыц!!!

Сообщений: 412
Зарегистрирован: 24. Апреля 2009
Re: Ошибка в запросе
Ответ #1 - 15. Июня 2011 :: 11:50
Печать  
во вложенных запросах убери типизацию
  
Наверх
wwwICQ  
IP записан
 
Foma
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 61
Зарегистрирован: 16. Сентября 2010
Re: Ошибка в запросе
Ответ #2 - 15. Июня 2011 :: 13:35
Печать  
Убрал. Помогло. Спасибо!
Странно, а чем ему типизация не нравится?
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Ошибка в запросе
Ответ #3 - 16. Июня 2011 :: 05:43
Печать  
Foma писал(а) 15. Июня 2011 :: 13:35:
Убрал. Помогло. Спасибо!
Странно, а чем ему типизация не нравится?


Потому что типизацию смотрит непосредственно объект ОДБЦРекордСет, уже в тот момент, когда получил от скуля выборку запроса.
Для самого скуля - это просто такое извращенное имя.

т.е. запрос

          ТекстЗапроса = "
          |SELECT
          |       рег.[Контрагент $Справочник.Контрагенты]            [Контрагент $Справочник.Контрагенты]
          |      ,Рег.[Микс $Справочник.Миксы]                  [Микс $Справочник.Миксы]
          |      ,Рег.[КредДокумент $Документ]      [КредДокумент $Документ]
          |      ,SUM(Рег.Сумма)            КонОст
          |FROM(
          |      SELECT
          |            СпрД.ParentExt            [Контрагент $Справочник.Контрагенты]
          |            ,$Р.Микс                  [Микс $Справочник.Миксы]
          |            ,$Р.КредДокумент      [КредДокумент $Документ]
          |            ,$Р.СуммаРуб            Сумма


тоже должен отработать Подмигивание
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать