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


1C++ rocks!

Сообщений: 52
Зарегистрирован: 29. Декабря 2010
Ошибка при соединении
01. Февраля 2011 :: 14:25
Печать  
запрос выдает пустую таблицу, хотя обе части соединения по отдельности работают...помогите разобраться. текст запроса:

     |SELECT
     |      РеалОфф.ДатаДок as ДатаДок,
     |      SUM(РеалОфф.КолДок) as Заказы,
     |FROM ( SELECT
     |            CAST(LEFT(Жур.Date_Time_IDDoc, 8) as DateTime) as ДатаДок,
     |            COUNT(Жур.IDDOCDEF) as КолДок,
     |            $Док.Контрагент as Контрагент,
     |            $Док.ДокОснование as ДокОсн
     |      FROM
     |            _1SJourn Жур
     |      RIGHT JOIN
     |            $Документ.Реализация as Док ON Док.IDDoc = Жур.IDDoc
     |WHERE
     |      Жур.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~ AND
     |      Жур.IDDocDef = $ВидДокумента.Реализация AND
     |      Жур.Closed & 1 = 1
     |GROUP BY
     |      Жур.IDDoc,
     |      CAST(LEFT(Жур.Date_Time_IDDoc, 8) as DateTime),
     |      $Док.Контрагент,
     |      $Док.ДокОснование
     |) As РеалОфф
     |INNER JOIN(SELECT
     |                        ЖурВ.IDDoc ДокВозврат,
     |                        $ДокВ.Контрагент КонтрагентВ
     |                        FROM
     |                              _1SJourn ЖурВ
     |                        INNER JOIN
     |                              $Документ.ВозвратОтПокупателя AS ДокВ ON ДокВ.IDDoc = ЖурВ.IDDoc
     |                        RIGHT JOIN(SELECT Контрагенты.ID Контрагент
     |                                          , $СвойстваКонтрагентов.ЗначениеСвойства Дилер
     |                                          FROM $Справочник.Контрагенты AS Контрагенты
     |                                          LEFT JOIN $Справочник.СвойстваКонтрагентов AS СвойстваКонтрагентов ON $Контрагенты.ОсновноеСвойство = СвойстваКонтрагентов.ID
     |                                          WHERE $СвойстваКонтрагентов.ЗначениеСвойства IN (SELECT Val FROM #ВыбДилер)
     |                                          GROUP BY Контрагенты.ID
     |                                                      , $СвойстваКонтрагентов.ЗначениеСвойства
     |                                          ) AS Подзапрос ON $ДокВ.Контрагент = Подзапрос.Контрагент
     |                        WHERE
     |                              ЖурВ.IDDocDef = $ВидДокумента.ВозвратОтПокупателя AND
     |                              ЖурВ.Closed & 1 = 1
     |                        GROUP BY
     |                              ЖурВ.IDDoc,
     |                              $ДокВ.Контрагент
     |                              ) As Возврат ON РеалОфф.ДокОсн = Возврат.ДокВозврат
     |WHERE
     |      РеалОфф.Контрагент = :ВыбКонтрагент
     |GROUP BY      
     |      РеалОфф.ДатаДок
     |";
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Ошибка при соединении
Ответ #1 - 01. Февраля 2011 :: 15:10
Печать  
Наверное реквизит "ДокОснование" в документе "Реализация" имеет тип "Документ" (неопределенного вида)
  
Наверх
 
IP записан
 
JBoy
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 52
Зарегистрирован: 29. Декабря 2010
Re: Ошибка при соединении
Ответ #2 - 02. Февраля 2011 :: 10:25
Печать  
да, спасибо, уже сам разобрался
....
As Возврат ON RIGHT(РеалОфф.ДокОсн, 9) = Возврат.ДокВозврат
....
так работает
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать