Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) Помогите получить группы Агентов и Контрагентов... (число прочтений - 3134 )
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Помогите получить группы Агентов и Контрагентов...
13. Сентября 2009 :: 08:22
Печать  
           |      SELECT  
           |           $РегОбКли.Фирма as [Фирма $Справочник.Фирмы]
           |              , $РегОбКли.Договор as [Договор $Справочник.Договоры]
           |              , СпрДог.ParentExt as [Контрагент $Справочник.Контрагенты]
           |              , $СпрДог.Агенты   as [Агент $Справочник.ФизЛица]
           |         , MAX($РегОбКли.ВидДолга) [ВидДолга $Перечисления.ВидыДолга]
           |         , MAX($РегОбКли.КодОперации) [КодОперации $Перечисление.КодыОпераций]
           |              , Sum(CASE WHEN (РегОбКли.debkred<>1) THEN $РегОбКли.СуммаРуб ELSE 0 END) П_СуммаРубПриход
           |              , Sum(CASE WHEN (РегОбКли.debkred=1 ) THEN $РегОбКли.СуммаРуб ELSE 0 END) Р_СуммаРубРасход  
           |      FROM  $Регистр.Покупатели AS РегОбКли
           |   LEFT JOIN $Справочник.Договоры as СпрДог  (NOLOCK) on СпрДог.ID  = $РегОбКли.Договор
           |   WHERE РегОбКли.date_time_iddoc > :НачДата AND РегОбКли.date_time_iddoc < :КонДата~  
           |";
             
           ТекстЗапроса=ТекстЗапроса+"
           |      GROUP BY  $РегОбКли.Фирма,$СпрДог.Агенты, СпрДог.ParentExt, $РегОбКли.Договор WITH ROLLUP";

Есть вот такой запрос, надо чтобы сверху выводились группы Агентов и группы Контрагентов.
  
Наверх
 
IP записан
 
vivm
Full Member
***
Отсутствует



Сообщений: 159
Местоположение: Новосибирск
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #1 - 14. Сентября 2009 :: 02:09
Печать  
Приджоинь $Справочник.Агенты и $Справочник.Контрагенты и возьми СпрАгенты.Parentid и СпрКонтрагенты.Parentid
  
Наверх
ICQ  
IP записан
 
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #2 - 14. Сентября 2009 :: 03:43
Печать  
LEFT JOIN $Справочник.Контрагенты as СпрКонтрагенты  (NOLOCK) on СпрСпрКонтрагенты..Parentid  = ???
  
Наверх
 
IP записан
 
vivm
Full Member
***
Отсутствует



Сообщений: 159
Местоположение: Новосибирск
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #3 - 14. Сентября 2009 :: 04:54
Печать  
Если в регистре Контрагент есть, то:

LEFT JOIN $Справочник.Контрагенты as СпрКонтрагенты  (NOLOCK) on СпрКонтрагенты.id  = $РегОбКли.Контрагент

  
Наверх
ICQ  
IP записан
 
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #4 - 14. Сентября 2009 :: 05:49
Печать  
Вот в том и дело, что в регистре нет ни Контрагента, н Агента...
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #5 - 14. Сентября 2009 :: 06:04
Печать  
А не проще результат запроса в Индексированную таблицу - и там уже сгруппировать?
  
Наверх
ICQ  
IP записан
 
vivm
Full Member
***
Отсутствует



Сообщений: 159
Местоположение: Новосибирск
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #6 - 14. Сентября 2009 :: 06:23
Печать  
MAT писал(а) 14. Сентября 2009 :: 05:49:
Вот в том и дело, что в регистре нет ни Контрагента, н Агента...


Если их нет в регистре, а они есть в документе, который регистр двинул, джоин нужно сделать от регистра к документу, а потом справочник - к документу
  
Наверх
ICQ  
IP записан
 
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #7 - 14. Сентября 2009 :: 06:44
Печать  
Может я как-то не так выражаюсь... В запросе Агента и Контрагента я приджонил (см. Select), вот только нужно, чтобы еще группы Контрагентов выводились и Агентов
  
Наверх
 
IP записан
 
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #8 - 14. Сентября 2009 :: 06:49
Печать  
и даже работает, прошу пощения, если я туплю, но это мой первый запрос  Подмигивание
  
Наверх
 
IP записан
 
Anatol
Senior Member
****
Отсутствует


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

Сообщений: 412
Зарегистрирован: 24. Апреля 2009
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #9 - 14. Сентября 2009 :: 09:15
Печать  
MAT писал(а) 14. Сентября 2009 :: 03:43:
LEFT JOIN $Справочник.Контрагенты as СпрКонтрагенты  (NOLOCK) on СпрСпрКонтрагенты..Parentid  = ???


LEFT JOIN $Справочник.Контрагенты as СпрКонтрагенты  (NOLOCK) on СпрСпрКонтрагенты.ID  = СпрДог.ParentEx

а потом уже к контрагенту группы

http://www.1cpp.ru/forum/YaBB.pl?num=1249210135
  
Наверх
wwwICQ  
IP записан
 
MAT
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Зарегистрирован: 05. Сентября 2009
Пол: Мужской
Re: Помогите получить группы Агентов и Контрагентов...
Ответ #10 - 14. Сентября 2009 :: 14:18
Печать  
Спасибо всем, особенно Anatol.
Догнал чего куда  Смех
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать