Страница 1 из 1

Вопрос по StiSqlDatabase и Application Role

Добавлено: 22 май 2009, 04:33
Denis
Примеряю репортер на предмет внедрения в готовое winforms приложение и возник вопрос. База MSSQL 2008, специфика приложения такова, что после подсоединения к базе с помощью SqlConnection активируется роль приложения путем вызова exec sp_setapprole 'FrontOfficeApp', 'verylongpassword' - иначе большинство объектов БД недоступно даже на чтение (разграничение прав доступа). Коррекцию connection string я уже понял как сделать (отчеты будут делаться на девелопмент сервере и копироваться на продакшн):

Код: Выделить всё

string applicationConnectionString = "Data Source=dbserver; Initial Catalog=mydb; Pooling=false; uid=foa; password=123; MultipleActiveResultSets=true; TrustServerCertificate=True");
rep1.Load("stiReport1.mrt");
foreach(StiDatabase db in rep1.Dictionary.Databases)
    if(db is StiSqlDatabase) (db as StiSqlDatabase).ConnectionString = applicationConnectionString;
А вот как активировать application role после подсоединения - не знаю. Поискал события (на которые можно подписаться и выполнить нужную команду) в StiSqlDatabase типа AfterConnect или похожих - ничего не нашел. Как мне вызвать хранимую процедуру после соединения с БД?

Вопрос по StiSqlDatabase и Application Role

Добавлено: 22 май 2009, 07:32
fantomus
Поддерживаю вопрос.
Возможность вызова события после соединения с БД для параметризации сессии очень нужна.
Такой подход используется часто.
Хотелось бы узнать, как это можно сделать.

Вопрос по StiSqlDatabase и Application Role

Добавлено: 24 май 2009, 13:26
Jan
Здравствуйте,

Добавили события Connecting, Connected, Disconnecting, Disconnected к объекту соединению. События доступны в Properties панели. Изменения будут включены в билд от 25 мая.

Спасибо.