Скромный просмотрщик временных таблиц

Программирование - Инструментарий

82
Для анализа и отладки кода есть быстрый способ просмотреть временные таблицы запроса.

UPD: 02.10.2012 (исправлены найденные баги)

UPD: 14.06.2012 (исправлен ошибка поиска при наличии комментариев в тексте запроса)

UPD: 01.03.2012 (улучшен поиск в тексте запроса, добавлены диагностические сообщения)

UPD: 06.05.2018 (исправлен найденный баг с удаляемыми ВТ)

Модель работы с функцией:

1. Вставляем прилагаемый код в какой-нибудь серверный общий модуль, например, в новый "_Служебный"

2. Ставим точку останова в интересующем месте (можно до исполнения запроса, можно после - результат будет разный, но будет)

3. Нажимаем горячую комбинацию Shift + F9 и вставляем вызов функции: _Служебный.ПолучитьВТ(ИнтересующийЗапрос), либо так: _Служебный.ПолучитьВТ(ИнтересующийЗапрос, "НеупомянающаясяВТекстеЗапросаНоСозданнаяРанееВременнаяТаблица")либо так: _Служебный.ПолучитьВТ(МенеджерВременныхТаблицИнтересующегоЗапроса, "ИмяИнтересующейВременнойТаблицы1, ИмяИнтересующейВременнойТаблицы2") 

4. Функция выудит из текста запроса все задействованные там имена временных таблиц и вернет их (таблицы) в виде структуры

Для обычного (неуправляемого) приложения функцию можно вынести во внешнюю обработку и вызывать ее во время отладки оттуда (пример: "ВнешниеОбработки.Создать("C:\ПросмотрВТ.epf").ВТ(Запрос)").

 

82

Скачать файлы

Наименование Файл Версия Размер
Просмотр ВТ запроса
.txt 8,92Kb
06.05.18
144
.txt 8,92Kb 144 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. CaSH_2004 349 03.11.11 11:56 Сейчас в теме
Отличный инструмент ковыряльщика
2. CaSH_2004 349 07.11.11 11:35 Сейчас в теме
Если автор не против я разовью данную тему, т.к. данный интструмент сильно помог и я его сильно переделал
3. eeeio 96 07.11.11 11:51 Сейчас в теме
Спасибо за отзыв. Естественно я не против развития идеи.
4. Арчибальд 2705 07.11.11 12:01 Сейчас в теме
Все думал: скромный означает застенчивый (покраснеет в случае чего)? Или тактичный (даже если увидит чего лишнего, виду не подаст)?
5. eeeio 96 07.11.11 12:17 Сейчас в теме
Скромный - значит, что не претендует на исключительность и большое количество свистелок. Хотя, если увидит чего лишнего, виду не подаст - это да.
6. Rustig 999 07.11.11 23:46 Сейчас в теме
всегда плюс, если алгоритм выложен в рамках статьи :)
да и полезность не вызывает у меня сомнений :)
надеюсь и я вам могу быть полезен (посмотрите мой профайл) :)
есть два вопроса для дискуссии по душам :)
1. первая редакция обработки датируется годом назад, а первые комментарии только сейчас. Почему так вышло?
2. есть что-нибудь на ИС аналогичное? Наверняка вы делали обзор-анализ? Что-нибудь еще подобное (или не подобное :)) предложить можете? Заранее спасибо :)
С уважением :)
8. eeeio 96 08.11.11 00:48 Сейчас в теме
(6)
1. думаю, так вышло потому, что нечего особо обсуждать было - теперь вот CaSH_2004 может разовьет идею...
2. ничего специально не искал, поэтому обзор сделать не смогу.
(7)
хм. выходит, я выложил какую-то недоделанную версию. сейчас залью нормальную. а в коде, если что-то не получается, я действительно иногда пишу матом, но конечному потребителю, естественно, отдаю чистый код.
7. Rustig 999 08.11.11 00:13 Сейчас в теме
В вашем прикрепленном файле нет функции СмотретьВТ(Запрос)....пока разбираюсь...
и что за прикол именовать переменные уй, ху? а потом их связывать:
//ЭтаФорма.Высота = 180 + ху + уй;
?
9. ninch 48 11.11.11 06:17 Сейчас в теме
Молодец. Идея действительно очень интересная
10. eeeio 96 11.11.11 10:48 Сейчас в теме
11. avk2009 13.11.11 09:20 Сейчас в теме
Полезная штука, спасибо
12. avilkin 14.11.11 08:28 Сейчас в теме
Безусловно полезный инструмент, добавил в свою коллекцию "подручных" полезностей.
13. legrey 66 24.11.11 05:44 Сейчас в теме
:) Не смотря на скромность, просто спас от взрыва мозга.
Очень полезная весчь
14. tormozit 4841 03.03.13 03:17 Сейчас в теме
В подсистеме "Инструменты разработчика" 2.71 добавлена аналогичная функция ПолВТ.
15. SergDi 29.05.13 17:44 Сейчас в теме
прикольно, однозначно в избранное :)
16. TMV 14 29.05.13 19:50 Сейчас в теме
(0), (15), нынче в КА, да и наверное, прочих конфигурациях,есть подобная функция, правда прежде чем ее использовать необходимо включать, так сказать, "отладочный" режим..
17. eeeio 96 03.06.13 08:20 Сейчас в теме
(16) а можно по-подробнее, что это за функция и как ее использовать?
18. TMV 14 03.06.13 08:27 Сейчас в теме
(17) глобыльным поиском по конфе "ОтладочныйРежим"..
19. eeeio 96 13.08.13 11:36 Сейчас в теме
(18) Нашел в последней УТ 11.1.2.10 простейшую функцию просмотра временной таблицы - там нужно указывать менеджер временных таблиц и имя временной таблицы. Тут же функция сама вычленяет из текста запроса все имена временных таблиц и показывает их.
20. the1 320 22.08.13 14:51 Сейчас в теме
Отличный инструмент, спасибо!
21. Evgen.Ponomarenko 537 22.08.13 15:08 Сейчас в теме
Беру на заметку... автору СПС!
22. veretennikoff 29 03.04.14 13:11 Сейчас в теме
+ можно дописать также для просмотра результата выполнения других запросов в пакете, которые НЕ ПОМЕЩАЮТСЯ ВО ВРЕМЕННУЮ ТАБЛИЦУ
(часто такое используется при создании печатных форм)
23. Патриот 211 24.08.14 16:42 Сейчас в теме
(22) veretennikoff, посмотреть результат выполнения запроса из пакета гораздо проще, чем посмотреть содержимое ВТ (что сделал автор разработки). Достаточно остановиться отладчиком после строки вида:
МассивРезультатовЗапроса = Запрос.ВыполнитьПакет();
а потом вычислить выражение вида:
МассивРезультатовЗапроса[2].Выгрузить()
24. Ramir555 1 23.07.15 08:05 Сейчас в теме
Отличная вещь, благодарю.
25. kirpily 26.10.15 14:00 Сейчас в теме
Благодарю. Очень полезный код.
26. vis_tmp 28 08.02.16 23:10 Сейчас в теме
Отличная вещь!
Большое спасибо автору!
Оставьте свое сообщение