Переключение на Главную Страницу Страницы: [1] 2 3  ОтправитьПечать
Очень популярная тема (более 25 ответов) Перехват и изменение текстов запросов 1С (число прочтений - 16752 )
Kvazimoda
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 13
Зарегистрирован: 16. Мая 2007
Перехват и изменение текстов запросов 1С
21. Апреля 2008 :: 15:40
Печать  
Скажите нужен ли такой функционал 1С++, может быть он уже реализован? Код для перехвата я написал, осталось дело за малым - создание механизма для анализа запросов и их подмены. Делалось все для некоторой оптимизации Бух. итогов, но никто не мешает это раширить и для других случаев.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #1 - 21. Апреля 2008 :: 16:49
Печать  
А поконкретней расскажи, плз - что решается и какими методами.
Это что-то типа развития идеи romix'a по замене запросов?
  

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


I Love YaBB 2!

Сообщений: 13
Зарегистрирован: 16. Мая 2007
Re: Перехват и изменение текстов запросов 1С
Ответ #2 - 21. Апреля 2008 :: 18:23
Печать  
С трудами romix'а не знаком Улыбка А идея: перехват odbc функций SQLExecDirectA и SQLExecute, это позволит "подсунуть" любой вопрос вместо вызванного. Могу код скинуть, возможно так понятнее будет.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #3 - 21. Апреля 2008 :: 18:41
Печать  
Kvazimoda писал(а) 21. Апреля 2008 :: 18:23:
С трудами romix'а не знаком Улыбка А идея: перехват odbc функций SQLExecDirectA и SQLExecute, это позволит "подсунуть" любой вопрос вместо вызванного. Могу код скинуть, возможно так понятнее будет.

С преступником Фунтиком я не знаком Улыбка (с) мультик про дядюшку Мокуса

Вот, ознакомься, не оно? http://www.kb.mista.ru/article.php?id=361
А то знаешь ли, как бывает, сочиняешь тут, сочиняешь, "я помню чудное мгновенье" и все такое, а к утру вспоминаешь, что кто-то это уже сочинил раньше.
  

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


I Love YaBB 2!

Сообщений: 13
Зарегистрирован: 16. Мая 2007
Re: Перехват и изменение текстов запросов 1С
Ответ #4 - 21. Апреля 2008 :: 18:45
Печать  
Блин Печаль опоздал Улыбка, надо ли это для 1С++ или забить?
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #5 - 21. Апреля 2008 :: 19:02
Печать  
Скажу честно: не знаю пока.
Ты не хотел бы взять исходники icpp (или 1cpp, если под vs6) и встроить туда класс?
Народ бы потестировал.
  

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


I Love YaBB 2!

Сообщений: 13
Зарегистрирован: 16. Мая 2007
Re: Перехват и изменение текстов запросов 1С
Ответ #6 - 21. Апреля 2008 :: 19:03
Печать  
Уже Улыбка, тока всю жизнь писал на ассемблере, С++ знаю на "0", так что скорее всего кучу багов написал Улыбка
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #7 - 21. Апреля 2008 :: 19:11
Печать  
Kvazimoda писал(а) 21. Апреля 2008 :: 19:03:
Уже Улыбка, тока всю жизнь писал на ассемблере, С++ знаю на "0", так что скорее всего кучу багов написал Улыбка

Ну и ну Улыбка
Вот интересно, что можно сейчас писать на ассемблере, не опасаясь опоздать на поезд уходящего прогресса?

А насчет 1cpp - дык выкладывай где-нибудь свою сборку, плюс нужно небольшое описание.
Пример какой-нибудь поможет...

Время сейчас какое-то суетное, продовольственный кризис и падение индексов, если слишком сложно - люди не захотят разбираться.
Я, правда, привык уже Улыбка
  

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


В борьбе бобра с ослом
всегда побеждает бобро!

Сообщений: 152
Местоположение: Украина г. Кривой Рог
Зарегистрирован: 17. Августа 2007
Пол: Мужской
Re: Перехват и изменение текстов запросов 1С
Ответ #8 - 22. Апреля 2008 :: 06:54
Печать  
Ну я бы чуток потестировал... мне интересно ... например реализовать запрос на множественный фильтр в журнале документов.
Или например какую нибудь продвинутую систему доступа используя этот механим наладить... что бы определенные элементы, документы, или реквизиты видимы были только тому кому надо Подмигивание...
Хотя... если правильно использовать перехватчик - то и без этой компоненты такое возможно...

А вот оптимизиация запросов с целью ограничения размеров выдаваемых результатов - самое оно...
Или теже блокировки например...

Уфф... размечтался... кто бы это еще делал за меня Улыбка
  
Наверх
ICQ  
IP записан
 
Kvazimoda
YaBB Newbies
*
Отсутствует


I Love YaBB 2!

Сообщений: 13
Зарегистрирован: 16. Мая 2007
Re: Перехват и изменение текстов запросов 1С
Ответ #9 - 22. Апреля 2008 :: 18:37
Печать  
через недельку выложу, пока не все готово. Хочу реализовать поиск запроса по маске, выуживание параметров. Хотя если нужно просто замена 1 запроса на другой, могу выложить в четверг, пятницу.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


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

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #10 - 22. Апреля 2008 :: 21:43
Печать  
ОК.
Тут у нас свободный проект, так что время не управляет.
Тем не менее ждемс. Улыбка
  

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



Сообщений: 16
Местоположение: Орел
Зарегистрирован: 29. Ноября 2007
Пол: Мужской
Re: Перехват и изменение текстов запросов 1С
Ответ #11 - 23. Апреля 2008 :: 06:49
Печать  
Вообще идея хорошая встроить такой функционал в 1сpp.
Сам юзаю компоненту romix-a. Правда немного ее переделывал под себя. Реализовано:
1. Множественный отбор в журналах
2. Использую одну общую графу отбора в нескольких журналах. Громадный плюс в том, что не надо плодить множество граф отбора по каждому конкретному виду документов.
3. Фильтр по справочникам. Например нельзя корректно использовать 1с метод
     ИспользоватьСписокЭлементов(<СписокЗначений>) для справочников с несколькими уровнями. С компонентой легко обходим.
4. Переделывая и оптимизирую часть неоптимальных запросов 1с. Во-первых просто оптимизация, во-вторых по некоторым большим таблицам создаю свои специфичные индексы и при выполнении стандартных запросов 1с указываю свои индексы и соответственно меняю план запроса.



Я не помню уже как реализовано у romix-а, но я переделывал таким образом, что можно указать перехват запроса один раз, а можно указать постоянную подмену запроса в рамках всей сессии пользователя.


Короче такая вещь очень нужная и если будет встроена и дополнительно развита в 1с++, то будет очень удобно.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Перехват и изменение текстов запросов 1С
Ответ #12 - 23. Апреля 2008 :: 07:58
Печать  
off. мысли вслух.

Абсолютно не ясны аргументы за включение этого функционала в состав 1с++ (или любой другой из существующих ВК).
Почему нельзя сделать самостоятельную ВК.
А давай включим этот функционал например в tabledoc.dll
А что, почему нет? Ах, да она не так популярна как 1с++
  

1&&2&&3
Наверх
 
IP записан
 
novichek
Экс-Участник


Re: Перехват и изменение текстов запросов 1С
Ответ #13 - 23. Апреля 2008 :: 08:30
Печать  
ОФФ
trad писал(а) 23. Апреля 2008 :: 07:58:

А что, почему нет? Ах, да она не так популярна как 1с++

Вот именно! 1срр я и так с собой везде таскаю. Чем больше в ней будет, тем больше я запользую. Подключать дополнительные длл, таскать их с собой... фи. И еще один аргумент. Допустим автор прекращает (надоело) поддержку. Если функционал в составе 1срр гораздо проще любому из действующих разработчиков н.р. вникнуть и подправить баг. Т.о. Включение чего-либо в состав 1срр - это какая-никакая гарантия что ЭТО будет жить и развиваться по крайней мере пока живет 1срр.
  
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: Перехват и изменение текстов запросов 1С
Ответ #14 - 23. Апреля 2008 :: 08:36
Печать  
Цитата:
trad

Мысль твоя полностью ясна.
Я только ЗА модульность(плагинность)  1С++.
Сам с большой благодарностью использую tabledoc и не вижу противопоказаний к такому методу добавления функционала.
Или что-то не то я ляпнул? tabledoc же зависит от 1С++?
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 3 
ОтправитьПечать