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


I Love YaBB 2!

Сообщений: 48
Зарегистрирован: 23. Июля 2007
Пол: Мужской
как собрать группы в прямом запросе?
21. Мая 2008 :: 07:13
Печать  
может я не совсем коректно ставлю вопрос,но надеюсь меня поймут. мне нужно из того запроса

|SELECT ПокупателиОстатки.Фирма [Фирма $Справочник.Фирмы]
           |      , ПокупателиОстатки.Контрагент [Контрагент $Справочник.Контрагенты]
           |      , ПокупателиОстатки.ВидДолга [ВидДолга $Перечисление.ВидыДолга]
           |      , ПокупателиОстатки.СуммаРубОстаток
           |FROM $РегистрОстатки.Покупатели(:ДатаН,,
           |            (Фирма = :ВыбФирма),
           |            (Фирма, Контрагент, ВидДолга),
           |            СуммаРуб) AS ПокупателиОстатки
           |WHERE ";//($Покупатели.КодОперации not in (SELECT val FROM #СписокВидов))";
           текст=текст+текстУсл;
           Текст=Текст+"
           |GROUP BY ПокупателиОстатки.Контрагент
           |      , ПокупателиОстатки.Фирма
           |      , ПокупателиОстатки.ВидДолга
           |      , ПокупателиОстатки.СуммаРубОстаток
           |";

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



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: как собрать группы в прямом запросе?
Ответ #1 - 21. Мая 2008 :: 07:22
Печать  
Мне тоже интересно уже несколько лет, но пока что простого решения не нашел, надо или использовать ИТЗ или же через CASE делать.

В принципе сделать можно по одному справочнику, но вопрос сортировки становиться в таком случае ребром, особенно если доавть WITH ROLLUP для итогов по группам справочников.
В общем или делать после получения с помощью ИТЗ (http://www.1cpp.ru/docum/html/IndexedTable.html#group) или же извращаться с CASE-ами и JOIN-ами в запросе+подзапросы.
  
Наверх
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: как собрать группы в прямом запросе?
Ответ #2 - 21. Мая 2008 :: 07:25
Печать  
+1 не просто это
  
Наверх
ICQ  
IP записан
 
Dreamka
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 48
Зарегистрирован: 23. Июля 2007
Пол: Мужской
Re: как собрать группы в прямом запросе?
Ответ #3 - 21. Мая 2008 :: 07:41
Печать  
эх,придется юзать итз,а есть какой нибудь примерчик использования caseв для данного случая,очень интересно реализовать прямым запросом,тока в скуле я не ас ((
  
Наверх
 
IP записан
 
pvase
God Member
*****
Отсутствует



Сообщений: 923
Местоположение: Киев
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: как собрать группы в прямом запросе?
Ответ #4 - 21. Мая 2008 :: 07:50
Печать  
Dreamka писал(а) 21. Мая 2008 :: 07:41:
эх,придется юзать итз,а есть какой нибудь примерчик использования caseв для данного случая,очень интересно реализовать прямым запросом,тока в скуле я не ас ((


Когда то пытался написать пример: http://metaprog.co.ua/secrprog/const_spr.html#_1_5_8
  
Наверх
IP записан
 
Dreamka
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 48
Зарегистрирован: 23. Июля 2007
Пол: Мужской
Re: как собрать группы в прямом запросе?
Ответ #5 - 21. Мая 2008 :: 08:00
Печать  
спасибо,буду пытаться создать ,что нибудь толковое
  
Наверх
 
IP записан
 
GEORG
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 43
Зарегистрирован: 15. Мая 2008
Re: как собрать группы в прямом запросе?
Ответ #6 - 21. Мая 2008 :: 10:08
Печать  
спасибо
  
Наверх
 
IP записан
 
Shavkat
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 9
Зарегистрирован: 29. Июня 2008
Re: как собрать группы в прямом запросе?
Ответ #7 - 13. Июля 2008 :: 18:51
Печать  
           "  
          |SELECT
          |        Родитель AS [Родитель $Справочник.Контрагенты]
          |        ,ПокупателиОстатки.Фирма [Фирма $Справочник.Фирмы]
          |      , ПокупателиОстатки.Контрагент [Контрагент $Справочник.Контрагенты]
          |      , ПокупателиОстатки.ВидДолга [ВидДолга $Перечисление.ВидыДолга]
          |      , ПокупателиОстатки.СуммаРубОстаток
          |FROM $РегистрОстатки.Покупатели(:ДатаН,,
          |            (Фирма = :ВыбФирма),
          |            (Фирма, Контрагент, ВидДолга),
          |            СуммаРуб) AS ПокупателиОстатки
          |LEFT JOIN $Справочник.Контрагенты AS Родитель ON Родитель.ID = ПокупателиОстатки.ParentID
          |WHERE ";//($Покупатели.КодОперации not in (SELECT val FROM #СписокВидов))";
          текст=текст+текстУсл;
          Текст=Текст+"
          |GROUP BY Родитель
          |      ,ПокупателиОстатки.Контрагент
          |      , ПокупателиОстатки.Фирма
          |      , ПокупателиОстатки.ВидДолга
          |      , ПокупателиОстатки.СуммаРубОстаток
          |";
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать