Оптимизированная консоль запросов

Оптимизирована работа с виртуальными таблицами, а также добавлена фиксация времени выполнения запроса.

Стандартная консоль запросов, хотя и умеет работать с виртуальными таблицами, делает это довольно посредственно. Фактически, она позволяет выполнить лишь единожды запрос, в котором создается ВТ, а при повторном выполнении выдает ошибку создания ВТ. Видел версии, где добавлена кнопка «Удалить ВТ», но ее использование также не совсем удобно, т.к. сначала мы натыкаемся на ошибку, понимаем, что одна или несколько создаваемых в запросе ВТ уже созданы, после чего удаляем их и заново выполняем нужный запрос. Оптимизированная версия, сама отслеживает необходимость удаления ВТ и выполняет его, если требуется.

Так же при написании нового запроса, в финальной части работы, обычно производится его оптимизация с целью ускорения. В данном случае полезно знать, сколько времени выполнялся запрос. В текущей версии время определяется в секундах (мне данной точности пока что хватало) и выводится в фигурных скобках вслед за наименованием выполненного запроса.

18 Comments

  1. Evg-Lylyk

    🙂 больная тема… вот моя http://www.infostart.ru/projects/2932/

    Reply
  2. Froloid

    Да, сильная штука. Одно описание чего стоит…

    У меня конечно примитив — но за счет этого просто в использовании.

    Reply
  3. rasswet

    (2) у него там заполнение параметров удобнее сделано..

    Reply
  4. kirillkr

    (1) Evg-Lylyk, консоль конечно супер, но моя контора фиг заплатит такие деньги, а самому неоткуда выкроить деньги на обработку. Поэтому довольствуемя бесплатными версиями. Спасибо, Froloid.

    Reply
  5. Поручик

    (4) ни одна контора и не будет платить за такие вещи, особенно если в штате есть человек, умеющий выговаривать 1С:Предприятие без запинки.

    Reply
  6. kirillkr

    (5) Блин, я это даже ночью при побудке скажу без запинки 🙁

    Reply
  7. ye_s

    За консоль спасибо) для себя только переделал время выполнения в мс

    Reply
  8. Froloid

    (7) «Перевел» измеряемое время в мс, т.к. вижу вызывает интерес.

    Хотя по личному опыту я считаю, что подобная точность некорректна. Опыт показывает что конкретное время выполнения запроса зависит от «состояния среды» — т.е. выполнив один и тот же запрос 10 раз в течении непродолжительного периода, совпадение времени выполнения в мс хотя бы один раз — это большое везение.

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

    Reply
  9. mr zafod

    хорошее решение консоли.

    вот Вам несколько рекомендаций:

    1. ни в одной консоли не видел, хотя это надо бы — версии запросов. и отдельно проверить версии — это последовательно получить время выполнения каждой версии. очень часто приходиться плодить кучу запросов на получение одних и тех же данных а потом сравниать время их выполнения.

    2. определите время выполнения как время 1-го выполнения запроса и отдельно среднее по 10 выполнениям включая первый — это конечно примитивно, но дает представление о как минимум времени инициализации временных таблиц регистров (если таковые есть в запросе).

    3. определите, почему запрос, выполняемый из СхемыКомпоновкиДанных большую часть запросов выплняет быстрее обычного и поймете как улучшить свою консоль.

    Reply
  10. Evg-Lylyk

    (8) есть запросы для которых время выполнения не больше 1-5 секунд вот для них и надо в мс

    (4), (5)

    Так есть бесплатная версия та что «демо» 2.6.9.2

    http://infostart.ru/projects/2932/download.php?file=7008

    там все работает функционал не на много хуже коммерческой, разницу заметят только опытные разработчики (ну может еще ошибки т.к. в демо исправлял только то на что жаловались). Я её (коммерческую) завел для того что если будут желающие купить, буду развивать, иначе простите интереса пока нет. Может если чем и обрадую это будет на 8.2

    (9) спасибо интересные идеи учту

    на счет п.2 у меня есть что-то близкое назвал многократный замер

    Reply
  11. Froloid

    (9) Спасибо, идеи конечно дельные.

    Но в данном случае я не ставил перед собой задачу расширения функционала стандартной консоли. Базовой задачей было исправление ошибки реализации, возникающей при работе с ВТ. А время — так уже заодно вставил…

    Reply
  12. kirillkr

    (10) Пробовал, добротная, но я ожидал большего, поэтому демо версия не сильно впечатлила. Вполне подходит расширенные консоли запросов, которые фигурируют на сайте.

    Reply
  13. Evg-Lylyk

    (12) в демо нет ничего от коммерческой. Просто интересно что лучше подходит?

    Reply
  14. kirillkr

    (13) 🙂 в любом случае СПАСИБО за работу. Демо версия тоже имеет право и шансы на жизнь.

    Reply
  15. СветикК

    спасибо огромное, плюс

    Reply
  16. Froloid

    (15) СветикКу огромное пожалуйста и цветок @>—‘-,-,-

    Reply
  17. СветикК

    ;-)))

    Reply
  18. almas

    10 Evg-Lylyk до весрии 2.6.9.2 мне нравился больше. А сейчас в демоверсии функционала Увы не хватает а бороться с ошибками — времени нет.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *