Захватить SQL-запрос

Подскажите пожалуйста, как возмоно при выполнении

ApplySelectQueryFilter(SelectQuery, FilterName, ParamValue, Enabled);

захватить SQL - запрос.

т.е. не данную информацию: имя запроса и т.д.

?SelectQuery
{...}
Caption: "sq_XXX"
CoClassGUID: "{2E5AFA6A-F672-4BAA-891C-6E699C6D36E3}"
Columns: {...}
Connector: {...}
Description: ""
ID: "{C9814440-69B1-4682-8B37-DFDE4A134EEA}"

а сам запрос со всеми параметрами, чтобы работать с этим запросом уже в SQL_редакторе.

Спасибо!!!

Нравится

9 комментариев

Добрый день!!!

на платформе Terrasoft 3.X на сколько я помню, написав в тексте кода "debagger" происходила точка останова. И в Админке (в отладчике) можно полностью развернуть весь SQL текст запроса.

"Власов Михаил Викторович" написал:написав в тексте кода "debagger" происходила точка останова

debugger;

либо sql server profiler вам в руки на сервере

Здравствуйте, Марина!

Если Вам нужен запрос с передаваемыми параметрами, тогда отловить его можно в SQL Profiler.

Также есть возможность запустить TSClient с ключом Profiler, как это сделать можно ознакомиться по ссылке.

"Савельева Алла" написал:Если Вам нужен запрос с передаваемыми параметрами, тогда отловить его можно в SQL Profiler.

См. SelectQuery.SQLText (скрин в файле)

А вот сами значения параметров да, в profiler

Здравствуйте Алла, Михаил и Александр. Спасибо вам большое!

Подключила SQL Server Profiler и отловила запрос.

Попробовала так же написав "debagger" в тексте кода, но не нашла SQLText.
Есть ли какие-то различия между версиями? У меня версия 3.2.0.90

На картинке, которую я прикрепила, между двумя красными линиями должен быть SQLText, но у меня нет.

"Марина Карапетян" написал:3.2.0.90

Версия уже "ретро", там возможно все :)
Этот реквизит появился, скорее всего, в 3.3.2

Хорошо Александр. Спасибо.

Здравствуйте,

чтобы получить SQL запрос, используйте следующий код:

Connector.DBEngine.GetSelectQuerySQLText(Dataset.SelectQuery)

Спасибо Павел, получилось.

Показать все комментарии