Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Помогите с соединениями (число прочтений - 15115 )
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Помогите с соединениями
15. Ноября 2007 :: 07:22
Печать  
Есть запрос по регистру Остатки. В нем делают движения много документов. По этим документам нужно вытащить Клиента, но не во всех документах есть это поле. Пытался создать соединения по тем документам у которых это поле есть, но когда я делаю хотя бы одно соединения, сразе же происходит фильтр.
КОД:
|Select
|      Жур.IDDOC as [Док $Документ]
|      ,Жур.IDDOCDEF as Док_вид
|      ,Sum(Рег.СуммаГРНПриход) as ПрихСумГРН          
|      ,Sum(Рег.НаценкаПриход) as ПрихСумНац
|      ,Sum(Рег.СуммаГРНРасход) as РасхСумГРН
|      ,Sum(Рег.НаценкаРасход) as РасхСумНац "+Групин+"
|From
|      $РегистрОстаткиОбороты.Остатки(:ДатаС, :ДатаПо~,Документ,Движения,
|      ,Фирма=:выбФирма and ВидУчета=:сВидУчета"+Пер2+"
|      ,(Фирма,ВидУчета,ТМЦ,Склад),(СуммаГрн,СуммаБезНДС,Наценка)) AS Рег
|Inner JOIN
|      _1SJOURN AS Жур (nolock) ON Рег.ПозицияДокумента  = Жур.DATE_TIME_IDDOC
|Inner JOIN
|      $Справочник.ТМЦ AS СпрТ (nolock) ON СпрТ.ID  = Рег.ТМЦ
|Right Outer JOIN
|      $Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)

|Group by  
|      Жур.IDDOC, Жур.IDDOCDEF";
Как правильно написать соединение, чтобы он пропускал и остальные документы
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #1 - 15. Ноября 2007 :: 07:26
Печать  
LEFT JOIN
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #2 - 15. Ноября 2007 :: 07:36
Печать  
Все получилось, только не пойму почему так. Заранее не направляй на Инфу.  Ее я уже читал
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #3 - 15. Ноября 2007 :: 07:41
Печать  
NickAn писал(а) 15. Ноября 2007 :: 07:36:
Все получилось, только не пойму почему так. Заранее не направляй на Инфу.  Ее я уже читал


Либо плохо читал, либо непонял Улыбка
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #4 - 15. Ноября 2007 :: 07:42
Печать  
Ну все равно СПАСИБО
  
Наверх
 
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #5 - 15. Ноября 2007 :: 07:49
Печать  
Есть продолжение
Код
Выбрать все
|Select
	|	MAX(CONVERT(varchar(30), Case
	|	When Жур.IDDOCDEF=$ВидДокумента36.ПриходнаяНакладная Then СпрК.ID
	|	When Жур.IDDOCDEF=$ВидДокумента36.ВозвратнаяНакладная Then СпрК.ID
	|	When Жур.IDDOCDEF=$ВидДокумента36.РозничнаяНакладная Then СпрК.ID
	|	When Жур.IDDOCDEF=$ВидДокумента36.ВозвратПоставщику Then СпрК.ID
	|	When Жур.IDDOCDEF=$ВидДокумента36.РасходнаяНакладная Then СпрК.ID
	|	When Жур.IDDOCDEF=$ВидДокумента36.ПереоценкаТМЦ Then 'Акт переоценки'
	|	When Жур.IDDOCDEF=$ВидДокумента36.ОстаткиТМЦ Then 'Акт списания'
	|	When Жур.IDDOCDEF=$ВидДокумента36.ПеремещениеРасход Then $ДПР.Откуда
	|	When Жур.IDDOCDEF=$ВидДокумента36.ПеремещениеПриход Then $ДПП.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента36.СторнированиеДокумента Then 'Сторнирование'
	|	Else 'Нет кл' End)) as Клиент 


Ошибка: Syntax error converting the varchar value '  UM' to a column of data type int.
  
Наверх
 
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #6 - 15. Ноября 2007 :: 08:09
Печать  
Можно ли вообще "MAX" применять для строковых данных или у меня не правильно convert работает?
  
Наверх
 
IP записан
 
semka49
Junior Member
**
Отсутствует


а что такое 1с?

Сообщений: 16
Местоположение: Москва
Зарегистрирован: 15. Ноября 2007
Пол: Женский
Re: Помогите с соединениями
Ответ #7 - 15. Ноября 2007 :: 08:11
Печать  
А помогите пжлста с запросом

     |SELECT
     |      $ДокС.ВидДвижения as [ВидДвижения $Справочник.ДвиженияДенежныхСредств],  
     |      $ДокС.Субконто1 as [Контрагент $Неопределенный],
     |      $ДокС.Субконто2 as [Договор $Неопределенный],
     |      SUM($ДокС.Приход) as Оплата
     |   ,ДокЗ.Всего Всего
     |
     |FROM
     |      $ДокументСтроки.Выписка as ДокС
     |INNER JOIN
     |      $Документ.Выписка as Док ON Док.IDDoc = ДокС.IDDoc
     |                                                AND $ДокС.ВидДвижения = :пВидДвижения
     |LEFT JOIN
     |      (
     |      SELECT
     |       $ДокЗ.Договор as [Договор1 $Справочник],
     |       SUM($ДокЗС.Всего) as [Всего $Число]
     |      FROM
     |            $ДокументСтроки.Заказ as ДокЗС
     |      INNER JOIN
     |            $Документ.Заказ as ДокЗ ON ДокЗС.IDDoc = ДокЗ.IDDoc
     |      GROUP BY $ДокЗ.Договор
     |      ) as ДокЗк ON ДокЗк.Договор1 = ДокС.Договор  
     |
     |INNER JOIN
     |      _1SJourn as Жур ON Жур.IDDoc = ДокС.IDDoc AND
     |                         Жур.Date_Time_IDDoc BETWEEN :НДата AND :КДата~ AND
     |                         Жур.Closed & 1 = 1
     |GROUP BY
     |   $ДокС.ВидДвижения,$ДокС.Субконто1,$ДокС.Субконто2
     |";
     
  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #8 - 15. Ноября 2007 :: 08:15
Печать  
Семка, создай свою ветку и напиши там что ты хочешь. Тут другой человек решает свои проблемы.
  
Наверх
 
IP записан
 
semka49
Junior Member
**
Отсутствует


а что такое 1с?

Сообщений: 16
Местоположение: Москва
Зарегистрирован: 15. Ноября 2007
Пол: Женский
Re: Помогите с соединениями
Ответ #9 - 15. Ноября 2007 :: 08:17
Печать  
прошу прощения Улыбка
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #10 - 15. Ноября 2007 :: 08:19
Печать  
NickAn писал(а) 15. Ноября 2007 :: 08:09:
Можно ли вообще "MAX" применять для строковых данных или у меня не правильно convert работает?


MAX использовать можно

Ты уверен что проблема в этом выражении?
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #11 - 15. Ноября 2007 :: 08:26
Печать  
Да уверен. и у меня такая ошибка не в первый раз. Без этого выражения все работает
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #12 - 15. Ноября 2007 :: 08:59
Печать  
Ну тогда выкладывай весь запрос
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #13 - 15. Ноября 2007 :: 09:02
Печать  
|Select  
     |      MAX(Convert(varchar(30),Case
     |      When Жур.IDDOCDEF=$ВидДокумента36.ПриходнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.ВозвратнаяНакладная Then cast(СпрК.ID as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.РозничнаяНакладная Then cast(СпрК.ID as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.ВозвратПоставщику Then cast(СпрК.ID as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.РасходнаяНакладная Then cast(СпрК.ID as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.ПереоценкаТМЦ Then 'Акт переоценки'
     |      When Жур.IDDOCDEF=$ВидДокумента36.ОстаткиТМЦ Then 'Акт списания'
     |      When Жур.IDDOCDEF=$ВидДокумента36.ПеремещениеРасход Then cast($ДПР.Откуда as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.ПеремещениеПриход Then cast($ДПП.Клиент as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента36.СторнированиеДокумента Then 'Сторнирование'
     |      Else 'Нет Кл' End)) as Клиент
     |      ,Жур.IDDOC as [Док $Документ]
     |      ,MAX(Жур.IDDOCDEF) as Док_вид
     |      ,Sum(Рег.СуммаГРНПриход) as ПрихСумГРН          
     |      ,Sum(Рег.НаценкаПриход) as ПрихСумНац
     |      ,Sum(Рег.СуммаГРНРасход) as РасхСумГРН
     |      ,Sum(Рег.НаценкаРасход) as РасхСумНац "+Групин+"
     |From
     |      $РегистрОстаткиОбороты.Остатки(:ДатаС, :ДатаПо~,Документ,Движения,
     |      ,Фирма=:выбФирма and ВидУчета=:сВидУчета"+Пер2+"
     |      ,(Фирма,ВидУчета,ТМЦ,Склад),(СуммаГрн,СуммаБезНДС,Наценка)) AS Рег
     |Inner JOIN
     |      _1SJOURN AS Жур (nolock) ON Рег.ПозицияДокумента  = Жур.DATE_TIME_IDDOC
     |Inner JOIN
     |      $Справочник.ТМЦ AS СпрТ (nolock) ON СпрТ.ID  = Рег.ТМЦ
     |Left JOIN
     |      $Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
     |LEFT JOIN  
     |      $Справочник.Клиенты СпрК on ($ДПН.Клиент=СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ВозвратнаяНакладная ДВН on (ДВН.IDDoc = Жур.IDDoc)and($ДВН.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.РозничнаяНакладная ДРН on (ДРН.IDDoc = Жур.IDDoc)and($ДРН.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ВозвратПоставщику ДВП on (ДВП.IDDoc = Жур.IDDoc)and($ДВП.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.РасходнаяНакладная ДРас on (ДРас.IDDoc = Жур.IDDoc)and($ДРас.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ПереоценкаТМЦ ДПтм on (ДПтм.IDDoc = Жур.IDDoc)
     |LEFT JOIN  
     |      $Документ.ОстаткиТМЦ ДОтм on (ДОтм.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.ПеремещениеРасход ДПР on (ДПР.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.ПеремещениеПриход ДПП on (ДПП.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.СторнированиеДокумента ДСД on (ДСД.IDDoc = Жур.IDDoc)
     |Group by  
           Жур.IDDOC";
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #14 - 15. Ноября 2007 :: 09:13
Печать  
Ну во первых так справочник клиенты привязывать нельзя!
Так у тебя будут клиенты только для одного вида документов

Во вторых что этот запрос должен делать?

Зачем там Cast  и Convert?
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #15 - 15. Ноября 2007 :: 09:17
Печать  
Дело в том, что группировать мне нужно только по IDDOC, а чтобы избежать группировки по всем документам я прикрутил туда MAX. Да и как правильно привязать спрвочник клиенты
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #16 - 15. Ноября 2007 :: 09:31
Печать  
NickAn писал(а) 15. Ноября 2007 :: 09:17:
Дело в том, что группировать мне нужно только по IDDOC, а чтобы избежать группировки по всем документам я прикрутил туда MAX. Да и как правильно привязать спрвочник клиенты


1. Ни чего не понял
2.
Select
...
FROM
(Твой запрос) as Подзапрос
Left join $Справочник.Клиены
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #17 - 15. Ноября 2007 :: 09:40
Печать  
Я пытаюсь сделать запрос по рег Остатки вытянуть из него документы, которые сделали движения и вытянуть клиентов из этих документво
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #18 - 15. Ноября 2007 :: 09:50
Печать  
NickAn писал(а) 15. Ноября 2007 :: 09:40:
Я пытаюсь сделать запрос по рег Остатки вытянуть из него документы, которые сделали движения и вытянуть клиентов из этих документво


ААА Улыбка

Зачем тогда (Фирма,ВидУчета,ТМЦ,Склад) ?

и $РегистрОстаткиОбороты - если тебе нужны только обороты используй $РегистрОбороты

  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #19 - 15. Ноября 2007 :: 09:55
Печать  
Цитата:
Зачем тогда (Фирма,ВидУчета,ТМЦ,Склад) ?

Эти параметры нужны для фильтра данных.
Цитата:
$РегистрОстаткиОбороты

Это Осталось от старого отчета, я по началу вытягивал остатки
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #20 - 15. Ноября 2007 :: 10:05
Печать  
NickAn писал(а) 15. Ноября 2007 :: 09:55:
Эти параметры нужны для фильтра данных.


У тебя фильтр делаетс в нутри VT, сдесь перечисляются поля которые должны быть видны снаружи ВТ
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #21 - 15. Ноября 2007 :: 10:10
Печать  
Дело в том что этот запрос меняется в зависимости от выставленных параметров. Некоторые эти параметры используются в других запросах. Разве они могут помешать?
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #22 - 15. Ноября 2007 :: 10:13
Печать  
NickAn писал(а) 15. Ноября 2007 :: 10:10:
Дело в том что этот запрос меняется в зависимости от выставленных параметров. Некоторые эти параметры используются в других запросах. Разве они могут помешать?


В этом случае у тебя группировка не будет только по IDDoc

В общем убирай MAX, группируй по IDDOC, идКлиента
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #23 - 15. Ноября 2007 :: 10:22
Печать  
Я бы и не против сделать группировку по клиенту, но там же не только клиенты, там есть и фирма и склад, и просто текст. По всем им прийдется делать группировку. По другому ни как
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #24 - 15. Ноября 2007 :: 10:26
Печать  
NickAn писал(а) 15. Ноября 2007 :: 10:22:
Я бы и не против сделать группировку по клиенту, но там же не только клиенты, там есть и фирма и склад, и просто текст. По всем им прийдется делать группировку. По другому ни как

  Если ты будешь их использовать в SELECT то никак, хотя конечно можно и MAX Улыбка
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #25 - 15. Ноября 2007 :: 10:33
Печать  
ну вот все и уперлось в МАХ. МАХ потом можно кинуть в сортировку вместе с датой документы и должен получиться желаемый результат. Может есть ответ как разобраться с МАХ. Как правильно применить convert или cast. Потому что мне кажется все упирается в это
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #26 - 15. Ноября 2007 :: 10:39
Печать  
NickAn писал(а) 15. Ноября 2007 :: 10:33:
ну вот все и уперлось в МАХ. МАХ потом можно кинуть в сортировку вместе с датой документы и должен получиться желаемый результат. Может есть ответ как разобраться с МАХ. Как правильно применить convert или cast. Потому что мне кажется все упирается в это


Сделай с начала без группировки! И соответственно без MAX
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #27 - 15. Ноября 2007 :: 11:50
Печать  
Все получилось без МАХ, когда ВидДокумента36 заменил на ВидДокумента. Но теперь появилась проблема в том, что Клиент выводится пустой строкой где стояло СпрК.ID или СпрК.Descr
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #28 - 15. Ноября 2007 :: 11:55
Печать  
NickAn писал(а) 15. Ноября 2007 :: 11:50:
Все получилось без МАХ, когда ВидДокумента36 заменил на ВидДокумента. Но теперь появилась проблема в том, что Клиент выводится пустой строкой где стояло СпрК.ID или СпрК.Descr


Ну да вообщето в журнале он хранится в числовой виде

Запрос покажи Улыбка
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #29 - 15. Ноября 2007 :: 12:09
Печать  
|      Case
     |      When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.РозничнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ВозвратПоставщику Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.РасходнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ПереоценкаТМЦ Then cast('Акт переоценки' as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ОстаткиТМЦ Then cast('Акт списания' as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ПеремещениеРасход Then cast($ДПР.Откуда as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.ПеремещениеПриход Then cast($ДПП.Клиент as varchar(30))
     |      When Жур.IDDOCDEF=$ВидДокумента.СторнированиеДокумента Then cast('Сторнирование' as varchar(30))
     |      Else cast('Не кл' as varchar(30)) End as Клиент
     |      ,Жур.IDDOC as [Док $Документ]
     |      ,Жур.IDDOCDEF as Док_вид
|From
     |      $РегистрОстаткиОбороты.Остатки(:ДатаС, :ДатаПо~,Документ,Движения,
     |      ,Фирма=:выбФирма and ВидУчета=:сВидУчета"+Пер2+"
     |      ,(Фирма,ВидУчета,ТМЦ,Склад),(СуммаГрн,СуммаБезНДС,Наценка)) AS Рег
     |Inner JOIN
     |      _1SJOURN AS Жур (nolock) ON Рег.ПозицияДокумента  = Жур.DATE_TIME_IDDOC
     |Inner JOIN
     |      $Справочник.ТМЦ AS СпрТ (nolock) ON СпрТ.ID  = Рег.ТМЦ
     |Left JOIN
     |      $Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
     |LEFT JOIN  
     |      $Справочник.Клиенты СпрК on ($ДПН.Клиент=СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ВозвратнаяНакладная ДВН on (ДВН.IDDoc = Жур.IDDoc)and($ДВН.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.РозничнаяНакладная ДРН on (ДРН.IDDoc = Жур.IDDoc)and($ДРН.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ВозвратПоставщику ДВП on (ДВП.IDDoc = Жур.IDDoc)and($ДВП.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.РасходнаяНакладная ДРас on (ДРас.IDDoc = Жур.IDDoc)and($ДРас.Клиент = СпрК.ID)
     |LEFT JOIN  
     |      $Документ.ПереоценкаТМЦ ДПтм on (ДПтм.IDDoc = Жур.IDDoc)
     |LEFT JOIN  
     |      $Документ.ОстаткиТМЦ ДОтм on (ДОтм.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.ПеремещениеРасход ДПР on (ДПР.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.ПеремещениеПриход ДПП on (ДПП.IDDoc = Жур.IDDoc)
     |LEFT JOIN
     |      $Документ.СторнированиеДокумента ДСД on (ДСД.IDDoc = Жур.IDDoc)
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #30 - 15. Ноября 2007 :: 12:22
Печать  
Я ж тебе писал что такое соединение со справочником не прокатит
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #31 - 15. Ноября 2007 :: 12:35
Печать  
Я помню. Но как же его по другому сделать?
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #32 - 16. Ноября 2007 :: 03:06
Печать  
Используй подзапрос
  
Наверх
ICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #33 - 16. Ноября 2007 :: 12:38
Печать  
Злой Замечание автору: для КОДА используйте теги "code":
Код
Выбрать все
	Case
     |	When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |	When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |	When Жур.IDDOCDEF=$ВидДокумента.РозничнаяНакладная Then cast(СпрК.Descr as varchar(30))
     |	When Жур.IDDOCDEF=$ВидДокумента.ВозвратПоставщику Then cast(СпрК.Descr as varchar(30))
  

  

code.JPG ( 45 KB | Загрузки )
code.JPG
Наверх
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #34 - 19. Ноября 2007 :: 09:17
Печать  
Попытался создать подзапрос, но выдает ошибку
     
Код
Выбрать все
|	Case
|	When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then cast(СпрК.Descr as varchar(30))
|	When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then cast(СпрК.Descr as varchar(30))
...
|	Else cast('Не кл' as varchar(30)) End as Клиент
|	,Жур.IDDOC as [Док $Документ]
|	,Жур.IDDOCDEF as Док_вид
|From
|(SELECT
|	Рег.ПозицияДокумента as ПозицияДокумента
|FROM
|	$РегистрОстаткиОбороты.Остатки(:ДатаС, :ДатаПо~,Документ,Движения,
|	,Фирма=:выбФирма and ВидУчета=:сВидУчета"+Пер2+"
|	,(Фирма,ВидУчета,ТМЦ,Склад),(СуммаГрн,СуммаБезНДС,Наценка)) AS Рег) as Рег,
|(SELECT
|	СпрK.ID as ID
|	СпрК.Descr as Descr
|FROM
|	$Справочник.Клиенты as СпрК) as СпрК
|Inner JOIN
|	_1SJOURN AS Жур (nolock) ON Рег.ПозицияДокумента  = Жур.DATE_TIME_IDDOC
|Inner JOIN
|	$Справочник.ТМЦ AS СпрТ (nolock) ON СпрТ.ID  = Рег.ТМЦ
|Left JOIN
|	$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)and($ДПН.Клиент=СпрК.ID) 


Ошибка: The column prefix 'СпрК' does not match with a table name or alias name used in the query.
  
Наверх
 
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #35 - 19. Ноября 2007 :: 09:47
Печать  
Вроде существенного ничего не поменял, но выдало новую ошибку:
The correlation name 'СпрК' is specified multiple times in a FROM clause.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #36 - 19. Ноября 2007 :: 10:03
Печать  
Тебя просят помятять один из алиасов "СпрК"
  
Наверх
 
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #37 - 19. Ноября 2007 :: 11:53
Печать  
Убрал и вернулась ошибка: The column prefix 'СпрК' does not match with a table name or alias name used in the query.
Подскажите как от нее избавиться, и можно ли так писать запрос?
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #38 - 19. Ноября 2007 :: 12:06
Печать  
Если честно, я вообще не понял зачем вот это:
Код
Выбрать все
(SELECT
|	СпрK.ID as ID
|	СпрК.Descr as Descr
|FROM
|	$Справочник.Клиенты as СпрК) as СпрК 

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



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #39 - 19. Ноября 2007 :: 12:12
Печать  
Цитата:
Если честно, я вообще не понял зачем вот это

это нужно для того чтобы произвести соединение Справочника Клиенты и Реквизита документов
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #40 - 19. Ноября 2007 :: 12:23
Печать  
NickAn писал(а) 19. Ноября 2007 :: 12:12:
Цитата:
Если честно, я вообще не понял зачем вот это

это нужно для того чтобы произвести соединение Справочника Клиенты и Реквизита документов

Когда я тебе советовал использовать подзапрос я даже не догадовался что можно его использовать ТАК Печаль
То что ты написал смысла не имеет
  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #41 - 19. Ноября 2007 :: 12:26
Печать  
Если я тебя правильно понимаю, то тебе нужны наименования клиентов для реквизита документа $ДПН.Клиент.
Если да, то попробуй написать так:
Код
Выбрать все
...FROM
|	$РегистрОстаткиОбороты.Остатки(:ДатаС, :ДатаПо~,Документ,Движения,
|	,Фирма=:выбФирма and ВидУчета=:сВидУчета"+Пер2+"
|	,(Фирма,ВидУчета,ТМЦ,Склад),(СуммаГрн,СуммаБезНДС,Наценка)) AS Рег) as Рег
|Inner JOIN
|	_1SJOURN AS Жур (nolock) ON Рег.ПозицияДокумента  = Жур.DATE_TIME_IDDOC
|Inner JOIN
|	$Справочник.ТМЦ AS СпрТ (nolock) ON СпрТ.ID  = Рег.ТМЦ
|Left JOIN
|	$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
|LEFT JOIN $Справочник.Клиенты as СпрК on $ДПН.Клиент=СпрК.ID  

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



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #42 - 19. Ноября 2007 :: 12:29
Печать  
На предыдущей странице видно, что я так уже писал, но проблема все-равно стояло. У меня дело в том, что не поодному документу нужен клиент
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #43 - 19. Ноября 2007 :: 12:33
Печать  
NickAn писал(а) 19. Ноября 2007 :: 12:29:
На предыдущей странице видно, что я так уже писал, но проблема все-равно стояло. У меня дело в том, что не поодному документу нужен клиент


Сделай шаг 1:

Напиши запрос который бы выводил ИД клиента или NULL (Если он не указан для документа) и все остальные данные - справочник клиенты в этом запросе вообще не используется
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #44 - 19. Ноября 2007 :: 12:40
Печать  
Уточни.
Запрос по справочнику?
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #45 - 19. Ноября 2007 :: 12:47
Печать  
NickAn писал(а) 19. Ноября 2007 :: 12:40:
Уточни.
Запрос по справочнику?


По какому справочнику? Напиши твой запрос по документам, чтобы в нём были все документы какие тебе нужны
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #46 - 19. Ноября 2007 :: 16:16
Печать  
Знаешь у меня че то не выходит. написал типа так, но выводит только по первому запросу клиента
Код
Выбрать все
|SELECT
	|	СпрК.ID as Клиент
	|	,Жур.IDDOC as [Док $Документ]
	|	,Жур.IDDOCDEF as Док_вид
	|FROM
	|	_1SJourn as Жур
	|Inner JOIN
	|	$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
	|LEFT JOIN
	|	$Справочник.Клиенты СпрК ON $ВидСправочника36.Клиенты + СпрК.ID = $ДПН.Клиент
	|WHERE
	|  Жур.Date_Time_IDDoc BETWEEN :ДатаС AND :ДатаПо~
	|Union all
	|SELECT
	|	СпрК.ID as Клиент
	|	,Жур.IDDOC as [Док $Документ]
	|	,Жур.IDDOCDEF as Док_вид
	|FROM
	|	_1SJourn as Жур
	|Inner JOIN
	|	$Документ.РасходнаяНакладная  ДРН (nolock) on (ДРН.IDDOC = Жур.IDDOC)
	|LEFT JOIN
	|	$Справочник.Клиенты СпрК ON $ВидСправочника36.Клиенты + СпрК.ID = $ДРН.Клиент
	|WHERE
	|  Жур.Date_Time_IDDoc BETWEEN :ДатаС AND :ДатаПо~ 


Ну я тебя так понял
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #47 - 20. Ноября 2007 :: 02:32
Печать  
Вот тебе один из вариантов:

Код
Выбрать все
Select
   .....
 ( CASE
  WHEN iddocdef = $ВидДокумента.Документ1  THEN Док1.Клиент
  WHEN iddocdef = $ВидДокумента.Документ2  THEN Док2.Клиент
  WHEN iddocdef = $ВидДокумента.Документ3  THEN Док3.Клиент
 .........
  ELSE ....
  END) as  [Клиент Справочник.Клиенты]
FROM
_1SJourn as Жур
Inner JOIN
$Документ.Документ1  Док1 (nolock) on (Док1.IDDOC = Жур.IDDOC)
Inner JOIN
$Документ.Документ2  Док2 (nolock) on (Док2.IDDOC = Жур.IDDOC)
Inner JOIN
$Документ.Документ3  Док3 (nolock) on (Док3.IDDOC = Жур.IDDOC)
........................
WHERE .......................

 



Если тебе в запросе реквизиты справочника клиены не нужны то этого тебе должно быть достаточно
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #48 - 20. Ноября 2007 :: 07:10
Печать  
Цитата:
( CASE
  WHEN iddocdef = $ВидДокумента.Документ1  THEN Док1.Клиент
  WHEN iddocdef = $ВидДокумента.Документ2  THEN Док2.Клиент
  WHEN iddocdef = $ВидДокумента.Документ3  THEN Док3.Клиент
.........
  ELSE ....
  END) as  [Клиент Справочник.Клиенты]
Дело в том что такая конструкция выдает внутреннее имя или вообще говорит объект не найден. но все же хотелось бы, чтобы была возможность вытянуть и другие реквизиты. Есть ли вариант сделать это через соединения со справочником
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #49 - 20. Ноября 2007 :: 07:18
Печать  
NickAn писал(а) 20. Ноября 2007 :: 07:10:
Цитата:
( CASE
 WHEN iddocdef = $ВидДокумента.Документ1  THEN Док1.Клиент
 WHEN iddocdef = $ВидДокумента.Документ2  THEN Док2.Клиент
 WHEN iddocdef = $ВидДокумента.Документ3  THEN Док3.Клиент
.........
 ELSE ....
 END) as  [Клиент Справочник.Клиенты]
Дело в том что такая конструкция выдает внутреннее имя или вообще говорит объект не найден. но все же хотелось бы, чтобы была возможность вытянуть и другие реквизиты. Есть ли вариант сделать это через соединения со справочником


Но запрос выполняется нормально? Покажи запрос
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #50 - 20. Ноября 2007 :: 10:54
Печать  
Код
Выбрать все
|SELECT
	|	(Case
	|	When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then $ДПН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then $ДВН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.РозничнаяНакладная Then $ДРН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.ВозвратПоставщику Then $ДВП.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.РасходнаяНакладная Then $ДРас.Клиент
	|	Else :ПустоеЗначениеКлиенты End) as Клиент
	|	,Жур.IDDOC as [Док $Документ]
	|	,Жур.IDDOCDEF as Док_вид
	|FROM
	|	_1SJourn as Жур (nolock)
	|Left JOIN
	|	$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
	|Left JOIN
	|	$Документ.РасходнаяНакладная  ДРас (nolock) on (ДРас.IDDOC = Жур.IDDOC)
	|Left JOIN
	|	$Документ.ВозвратнаяНакладная ДВН (nolock) on (ДВН.IDDoc = Жур.IDDoc)
	|Left JOIN
	|	$Документ.РозничнаяНакладная ДРН (nolock) on (ДРН.IDDoc = Жур.IDDoc)
	|Left JOIN
	|	$Документ.ВозвратПоставщику ДВП (nolock) on (ДВП.IDDoc = Жур.IDDoc)
	|WHERE
	|  Жур.Date_Time_IDDoc BETWEEN :ДатаС AND :ДатаПо~ 


У меня дело в том, что почти во всех документах клиент не определенного вида. Поэтому было бы не плохо отсечь ВидСправочника.  для определения клиента
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #51 - 20. Ноября 2007 :: 11:04
Печать  
Теперь делаешь так:

Код
Выбрать все
Select
 Док.*,
 СпрК.Реквизит1,
 СпрК.Реквизит2,
 ................
FROM
(
|SELECT
|(Case
|When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then $ДПН.Клиент
|When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then $ДВН.Клиент
|When Жур.IDDOCDEF=$ВидДокумента.РозничнаяНакладная Then $ДРН.Клиент
|When Жур.IDDOCDEF=$ВидДокумента.ВозвратПоставщику Then $ДВП.Клиент
|When Жур.IDDOCDEF=$ВидДокумента.РасходнаяНакладная Then $ДРас.Клиент
|Else :ПустоеЗначениеКлиенты End) as Клиент
|,Жур.IDDOC as [Док $Документ]
|,Жур.IDDOCDEF as Док_вид
|FROM
|_1SJourn as Жур (nolock)
|Left JOIN
|$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
|Left JOIN
|$Документ.РасходнаяНакладная  ДРас (nolock) on (ДРас.IDDOC = Жур.IDDOC)
|Left JOIN
|$Документ.ВозвратнаяНакладная ДВН (nolock) on (ДВН.IDDoc = Жур.IDDoc)
|Left JOIN
|$Документ.РозничнаяНакладная ДРН (nolock) on (ДРН.IDDoc = Жур.IDDoc)
|Left JOIN
|$Документ.ВозвратПоставщику ДВП (nolock) on (ДВП.IDDoc = Жур.IDDoc)
|WHERE
|  Жур.Date_Time_IDDoc BETWEEN :ДатаС AND :ДатаПо~ ) as Док
Left join $Справочник.Клиенты СпрК (nolock) on СпрК.id = Док.Клиент
 



Про неопределённый вид не понял, у тебя клиенты не в одном справочнике хранятся?
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #52 - 20. Ноября 2007 :: 12:22
Печать  
Бывает вместо клиента выбирается МОЛ (Сотрудники)
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #53 - 20. Ноября 2007 :: 12:30
Печать  
NickAn писал(а) 20. Ноября 2007 :: 12:22:
Бывает вместо клиента выбирается МОЛ (Сотрудники)

А реквизиты клиента тебе в запросе для чего нужны? Просто вывести или для фильтра?
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #54 - 20. Ноября 2007 :: 12:40
Печать  
Нет они мне не нужны пока, но дальше могут понадибиться
  
Наверх
 
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #55 - 20. Ноября 2007 :: 16:15
Печать  
Все заработало как и хотелось бы, но у меня в Приходной Накладной в клиенте может быть и сотрудник. Я написал так
Код
Выбрать все
|SELECT
	|	COALESCE(СпрК.Descr, СпрC.Descr) as Клиент_Наименование
        |	,Док.*
	|FROM
	|(SELECT
	|	(Case
	|	When Жур.IDDOCDEF=$ВидДокумента.ПриходнаяНакладная Then $ДПН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.ВозвратнаяНакладная Then $ВидСправочника36.Клиенты +  $ДВН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.РозничнаяНакладная Then $ВидСправочника36.Клиенты + $ДРН.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.ВозвратПоставщику Then $ВидСправочника36.Клиенты + $ДВП.Клиент
	|	When Жур.IDDOCDEF=$ВидДокумента.РасходнаяНакладная Then $ВидСправочника36.Клиенты + $ДРас.Клиент
	|	Else :ПустоеЗначениеКлиенты End) as Клиент
	|	,Жур.IDDOC as [Докум $Документ]
	|	,Жур.IDDOCDEF as Докум_вид
	|FROM
	|	_1SJourn as Жур (nolock)
	|Left JOIN
	|	$Документ.ПриходнаяНакладная  ДПН (nolock) on (ДПН.IDDOC = Жур.IDDOC)
...................
	|WHERE
	|  Жур.Date_Time_IDDoc BETWEEN :ДатаС AND :ДатаПо~) as Док
	|LEFT JOIN  
	|	$Справочник.Клиенты СпрК ON $ВидСправочника36.Клиенты + СпрК.ID=Док.Клиент
	|LEFT JOIN
	|	$Справочник.Сотрудники СпрС ON $ВидСправочника36.Сотрудники + СпрС.ID=Док.Клиент 


Ошибка: The column prefix 'СпрС does not match with a table name or alias name used in the query
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Помогите с соединениями
Ответ #56 - 20. Ноября 2007 :: 21:02
Печать  
WHERE обычно идет после соединении (LEFT JOIN)
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #57 - 21. Ноября 2007 :: 02:20
Печать  
Цитата:
WHERE обычно идет после соединении (LEFT JOIN)

У него там подзапрос та что всё ОК
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #58 - 21. Ноября 2007 :: 02:28
Печать  
Для начала проверь везде ли в СпрC у тебя С русская?
  
Наверх
ICQ  
IP записан
 
NickAn
Junior Member
**
Отсутствует



Сообщений: 69
Зарегистрирован: 08. Октября 2007
Пол: Мужской
Re: Помогите с соединениями
Ответ #59 - 21. Ноября 2007 :: 07:04
Печать  
Действительно 'С' скорей всего стояла не русская, хотя вроде и до этого проверял? Озадачен
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать