Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) Область применения прямых запросов (число прочтений - 2805 )
alest
Senior Member
****
Отсутствует



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Область применения прямых запросов
04. Декабря 2007 :: 13:54
Печать  
Каковы типовые задачи, в которых можно и нужно применять прямые запросы, или наоборот, когда не стоит этим заниматься?
Вот, скажем, есть отчет с несколькими группировками, с изменяемым порядком- можно/нужно делать такие отчеты на прямых запросах?
Или все просто:
1 и самое трудное получаем таблицу из запроса с использованием GROUPING
2 по полям GROUPING выводим группировки
?
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Область применения прямых запросов
Ответ #1 - 04. Декабря 2007 :: 14:02
Печать  
alest писал(а) 04. Декабря 2007 :: 13:54:
Каковы типовые задачи, в которых можно и нужно применять прямые запросы, или наоборот, когда не стоит этим заниматься?
Вот, скажем, есть отчет с несколькими группировками, с изменяемым порядком- можно/нужно делать такие отчеты на прямых запросах?
Или все просто:
1 и самое трудное получаем таблицу из запроса с использованием GROUPING
2 по полям GROUPING выводим группировки
?


При выборке больших объёмов данных прямые запросы всегда отрабатывают быстрее, конечно если не писать их как 1с Улыбка. По сути движок 1с тоже выполняет прямые запросы только зачастую фильтр накладывается уже на извлеченные данные или тот же (nolock) не используется  в общем всё зависит от кривости рук
  
Наверх
ICQ  
IP записан
 
alest
Senior Member
****
Отсутствует



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #2 - 04. Декабря 2007 :: 14:23
Печать  
Понятно, примем за начальное условие, что база большая.
Я имел ввиду, были ли у кого-то ситуации, когда на прямых запросах или ОЧЕНЬ сложно переписать отчет, или в результате получилось, что выборка идет быстро, а обработка и вывод медленно и в результате= нулевой/незначительный прирост в скорости получения отчета пользователем...
  
Наверх
ICQ  
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Область применения прямых запросов
Ответ #3 - 04. Декабря 2007 :: 14:27
Печать  
alest писал(а) 04. Декабря 2007 :: 14:23:
Понятно, примем за начальное условие, что база большая.
Я имел ввиду, были ли у кого-то ситуации, когда на прямых запросах или ОЧЕНЬ сложно переписать отчет, или в результате получилось, что выборка идет быстро, а обработка и вывод медленно и в результате= нулевой/незначительный прирост в скорости получения отчета пользователем...


Ну не знаю если алгоритмы пос обработки написаны нормально то сложность должа быть n *ln(n)

в общем та же кривость рук.

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



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Область применения прямых запросов
Ответ #4 - 04. Декабря 2007 :: 14:30
Печать  
Что значит Цитата:
Очень сложно
Улыбка что в нём такого сложного?
  
Наверх
ICQ  
IP записан
 
alest
Senior Member
****
Отсутствует



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #5 - 04. Декабря 2007 :: 14:50
Печать  
Nick писал(а) 04. Декабря 2007 :: 14:30:
Улыбка что в нём такого сложного?

Я не знаю, спрашиваю у тех, кто приобрел опыт уже.
В общем отчет типа "Остатки ТМЦ" из комплексной переписывал кто-нибудь? Каков результат по времени выполнения в сравнении с типовым?
  
Наверх
ICQ  
IP записан
 
U_zer
Экс-Участник


Re: Область применения прямых запросов
Ответ #6 - 04. Декабря 2007 :: 15:02
Печать  
alest писал(а) 04. Декабря 2007 :: 13:54:
Вот, скажем, есть отчет с несколькими группировками, с изменяемым порядком- можно/нужно делать такие отчеты на прямых запросах?
Или все просто:
?


Все просто.  Для обхода результатов использую ValTable.
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


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

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #7 - 04. Декабря 2007 :: 16:18
Печать  
Прекрасно работает с изменяемыми группировками
На больших объемах grouping() делает ИТЗ, проверял (целиком смотрел время вывода отчета на экран)
  

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



Сообщений: 380
Местоположение: Гродно, Беларусь
Зарегистрирован: 22. Мая 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #8 - 04. Декабря 2007 :: 16:44
Печать  
Цитата:
Прекрасно работает с изменяемыми группировками
На больших объемах grouping() делает ИТЗ, проверял (целиком смотрел время вывода отчета на экран)

В смысле, вместо grouping() в запросе, делать группировку с помощью ИТЗ? А есть смысл? По описанию, вроде с помощью grouping() просто при обходе тз надо проверять:
Если (ТЗ.ИтогПоСкладам = 1) И (ТЗ.ИтогПоТоварам = 1) Тогда....
  
Наверх
ICQ  
IP записан
 
Вадимко
God Member
*****
Отсутствует


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

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #9 - 04. Декабря 2007 :: 17:24
Печать  
"делает " - если Вася сделал на светофоре Петю - кто круче?   Подмигивание
Поясню все же:
Наооборот... вместо ИТЗ делать групинг
  

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


itpath.ru

Сообщений: 398
Местоположение: Москва
Зарегистрирован: 15. Июня 2006
Пол: Мужской
Re: Область применения прямых запросов
Ответ #10 - 05. Декабря 2007 :: 10:41
Печать  
Чтение, изменение, вставка, логирование данных
обмен между 2 базами 1С, в т.ч используются триггера. но это уже за рамками 1С++

были случаи когда приходилось несколько извращаться, чтобы получить Группировки, как правило когда ТаблицаГруппировок работала медленно, решалось по разному, в зависимости от уже написанного до этого обработчика данных. в т.ч. использовал параметризированные запросы.
  

Лень двигатель прогресса.&&http://www.itpath.ru&&;
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать