Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Помогите с запросом. (число прочтений - 5371 )
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Помогите с запросом.
23. Сентября 2008 :: 11:56
Печать  
Код
Выбрать все
     |select
     |Результат.Глубина Глубина,
     |Результат.ТекущийДень ТекущийДень,
     |Результат.ДеньРождения ДеньРождения,
     |Результат.ДатаРождения ДатаРождения,
     |Результат.ФизЛицо [Физ $Справочник.ФизическиеЛица]
     |from
     |(select
     |--convert(char(10),Getdate()+"+Число(Смещение)+",6) ТекущаяДата,
     |GetDate()+"+Число(Смещение)+" ТекущийДень,
     |GetDate()+"+Число(Смещение+Глубина)+" Глубина,
     4) as smalldatetime) ДеньРождения,
     |f.id ФизЛицо,
     |s.id Сотрудник,
     |$f.ДатаРождения ДатаРождения
     |from $Справочник.Сотрудники s (nolock)
     |inner join $Справочник.ФизическиеЛица f (nolock) on f.id=$s.ФизическоеЛицо
     |left join _1sjourn j (nolock) on j.iddoc=right($s.ДокументОкончания,9)
     |where $s.Фирма=:ВыбФирма
     |and ($s.ДокументОкончания=$ПустойИД13 or j.date_time_iddoc>=convert(char(23),GetDate()+"+Смещение+",112))
     |and convert(char(10),$f.ДатаРождения,104)<>'01.01.1753') Результат
     |where
     |Результат.ДеньРождения BETWEEN Результат.ТекущийДень AND Результат.Глубина
     |--Результат.ДеньРождения>=GetDate()+"+Число(Смещение)+"
     |--and
     |--Результат.ДеньРождения<=GetDate()+"+Число(Глубина+Смещение)+"
     |ORDER BY Результат.ДеньРождения

 



т.е.
мне надо получить всех сотрудников у которых день рождения
находиться в промежутке между текущей датой + несколько дней вперед


смещение это для того чтоб дату не менять

глубина это на сколько дней вперед смотреть

так вот в результат не попадают дни рождения которые соответствуют дате начала интервала

если условия на таблицу Результат убрать ,
то видно что колонки
ТекущийДень и ДеньРождения те что мене надо
совпадают
скажем так
входяшие данные:
работаем с сегоднешним днем
смещение 13
глубина 10

есть строчка
в результате выполнения запроса без условий
Глубина 16.10.08
ТекущийДень 06.10.08
ДеньРождения 06.10.08
ДатаРождения 06.10.69
если же условие включить
то эта строка в результат не попадет


что я напортачил?
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #1 - 23. Сентября 2008 :: 12:03
Печать  
Я бы в первую очередь как-то бы запрос сгруппировал, выделил подзапросы в коде, чтобы изучать было легче Улыбка - ну хотя бы табы расставь Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #2 - 23. Сентября 2008 :: 12:04
Печать  
ЗЫ блин, к восьмерке привык, уже трудно на англоязычные запросы смотреть Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: Помогите с запросом.
Ответ #3 - 23. Сентября 2008 :: 13:53
Печать  
Все оказалось просто:
Код
Выбрать все
	|convert(char(8),Результат.ДеньРождения,112) BETWEEN convert(char(8),Результат.ТекущийДень,112) AND convert(char(8),Результат.Глубина,112)
 

  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Помогите с запросом.
Ответ #4 - 23. Сентября 2008 :: 14:09
Печать  
artbear писал(а) 23. Сентября 2008 :: 12:04:
ЗЫ блин, к восьмерке привык, уже трудно на англоязычные запросы смотреть Улыбка


Раз varelchik разобрался, немного в сторону :
artbear - 7.7 уже только хобби ?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Помогите с запросом.
Ответ #5 - 23. Сентября 2008 :: 18:27
Печать  
kiruha писал(а) 23. Сентября 2008 :: 14:09:
artbear - 7.7 уже только хобби ?

Тут беда в том, что для v8 нет такого поля для реализации творческих потребностей.

Видимо, v8 - это хорошо, но скучно, что-то типа современной иномарки.
Как водится, Евро4, ехать не едет, но хлопот не доставляет.
Обслуживаем у дилера, по тюнингу - только то, что предоставляет завод-изготовитель.

Понятно, что любителям поиграть с впуском-выпуском, рядами кпп или приделать турбину это не интересно.
Я понимаю, что с точки зрения бизнеса - это разговоры для бедных.
Но к счастью, не всем еще в этом мире правит бизнес.

Поэтому v7 все еще и живет на бывшей экономической обоснованности и энтузиазме отдельных проектов.
Я правильно понимаю тенденции, Артур?
  

De quelle planète es-tu?
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Помогите с запросом.
Ответ #6 - 24. Сентября 2008 :: 02:02
Печать  
Цитата:
Поэтому v7 все еще и живет на бывшей экономической обоснованности и энтузиазме отдельных проектов.
Я правильно понимаю тенденции, Артур?


Кстати да сейчас даже экономической обоснованности не осталось Печаль
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #7 - 24. Сентября 2008 :: 04:03
Печать  
Да, на 7 только маленькие конторы остались, большие потихоньку идут на 8, соответственно и доходы на 8 выше.
Но для развития путей маловато.

Разве что пойти путем Душелова с Инфостарта Улыбка - он всякие АктивИксы делает для 8 Улыбка

ЗЫ но 1С++ я лично пока не бросаю, хотя и времени удается выкраивать маловато.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Помогите с запросом.
Ответ #8 - 24. Сентября 2008 :: 08:54
Печать  
К слову решил спросить о наболевшем  Подмигивание...

Где-то с год назад решили кардинально переписать базу, и стоял вопрос, что лучше - перейти на 8-ку, или переписать 7-ку + 1cpp. Советовались со знакомым 1С-никами, работающими с 8-й, и никто внятно так и не смог объяснить, в чем однозначное преимущество 8-ки...

Короче, пошли по второму пути.

Вот и решил спросить, в чем же собственное преимущество 8-ки, особенно в плане производительности? Насколько актуально использование прямых запросов, как там обстоят дела с надоедливыми блокировками?

Вот сидят у нас в базе активно работающих 130 чел, в целом и общем нормально, хотя бывают время от времени тормоза, но не критичные. Есть ли гарантия, что при переходе на 8-ку производительность будет как минимум не хуже?  Нерешительный
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #9 - 24. Сентября 2008 :: 09:45
Печать  
Тормоза на 8 при таком количестве будут Печаль
И придется очень активно с ними бороться.
Это один из главных бичей 1С - тормознутость.
Тут при 10-то тормозит безбожно Печаль

Но очень удобная система запросов, полностью интегрированная в систему, также отчеты удобно делать, СКД (система компоновки данных) вообще фантастика Улыбка

Жаль, что внутрь, как в 7, не залезешь Печаль можно было бы еще что-нибудь наворотить Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Помогите с запросом.
Ответ #10 - 24. Сентября 2008 :: 10:07
Печать  
Ну так тормоза больше или меньше на 8-ке при прочих равных условиях (кол-во пользователей, объем базы, ну пусть сервак будет на 8-ке помощнее)? Имеет смысл думать о 8-ке при 130 юзерах (которое кстати постоянно растет)? Или лучше двигаться в направлении дальнейшей оптимизации 7-ки?

На в 8-ке можно прямые запросы использовать?

Еще слышал, что на 8-ке вроде блокировки на уровне строки, а не таблицы... Там проблемы с блокировками при проведении хотя бы частично сняты или нет?
  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: Помогите с запросом.
Ответ #11 - 24. Сентября 2008 :: 10:09
Печать  
artbear писал(а) 24. Сентября 2008 :: 09:45:
Тормоза на 8 при таком количестве будут Печаль
И придется очень активно с ними бороться.
Это один из главных бичей 1С - тормознутость.
Тут при 10-то тормозит безбожно Печаль

Но очень удобная система запросов, полностью интегрированная в систему, также отчеты удобно делать, СКД (система компоновки данных) вообще фантастика Улыбка

Жаль, что внутрь, как в 7, не залезешь Печаль можно было бы еще что-нибудь наворотить Улыбка


Как то тестировали нащу базу под 8.1 - получена простой конвертацией с небольшими правками для тестирования отчетов и форм .
И формы и загрузка и журналы и ... ощутимо тормозили.
Отчеты - терпимо но не 1С++ .

Неделю назад поставил дома демо-УПП на последнем релизе платформы 8.1
На CORE 2  (все остальное железо соответсвующее) визуально создает  ощущение замедленности(правда файловая). Просто бесит.
И это база с несколькими документами да еще и локально.

И как это воспринимает  клиент, которого с 1С++ переманили на 8.0, да еще и за неслабые деньги?
  
Наверх
 
IP записан
 
Neo
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 327
Зарегистрирован: 12. Ноября 2007
Re: Помогите с запросом.
Ответ #12 - 24. Сентября 2008 :: 10:10
Печать  
Про удобство интерефейса и разработки слышал, но по-моему, так об этом в последнюю очередь приходится  думать  Улыбка Главный аргумент - производительность и еще раз производительность  Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #13 - 24. Сентября 2008 :: 10:35
Печать  
Кто-то где-то пишет, что на большом количестве пользователей 8 работает лучше, чем 7.
Я лично пока этого не ощутил.
ИМХО для этого нужно опять перелопачивать всю конфу + Скуль-Сервер, т.е. выполнять ту же работу, что и в 77, но в большом объеме, т.к. чистых прямых запросов в 8 нету.

По поводу запросов - в принципе, запросы 8 это прямые запросы, расширенный русскоязычный язык Скуля, ИМХО очень удобно.
Но отсутствуют многие возможности Т-Скл, т..е только единственный Select, т.е. только получение данных Печаль

Правда, есть разработки типа Enterprise Integrator - например, см. на infostart.ru, которые позволяют сильнее управлять клиент-серверной конфигурацией восьмерки. Но лично я пока не пробовал, хотя и планирую.

Главный вопрос как был в 77, ИМХО так и остался - для нормальной производительности, которой лично я так и не увидел, нужно очень сильно лопаттить внутренности и настройки скуля и 8 Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Помогите с запросом.
Ответ #14 - 24. Сентября 2008 :: 10:37
Печать  
kiruha писал(а) 24. Сентября 2008 :: 10:09:
И формы и загрузка и журналы и ... ощутимо тормозили.
Отчеты - терпимо но не 1С++ .

Неделю назад поставил дома демо-УПП на последнем релизе платформы 8.1
На CORE 2  (все остальное железо соответсвующее) визуально создает  ощущение замедленности(правда файловая). Просто бесит.
И это база с несколькими документами да еще и локально.

Скуль будет чуть быстрее, возможно, что и не заметишь разницы Улыбка
Клиенты привыкают к тормозам быстро, т.к. 1С приучила к неприхотливости Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer &amp;&amp; tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать