Role: IDatabaseApplicationRole;
Свойство Role определяет настройки использования роли приложения.
Под ролью приложения понимается роль на уровне СУБД MS SQL, у которой есть права на создание таблиц в заданной схеме и раздачу грантов на эти таблицы. Использование роли приложения позволяет получить доступ к созданию таблиц на уровне СУБД только из «Форсайт. Аналитическая платформа». Например, если пользователь создает новые таблицы, но прав на создание таблиц в выбранной БД и прав на раздачу грантов на эти таблицы не имеет, то по умолчанию будет открыто окно авторизации в БД. Использование роли приложения в этом случае позволяет осуществить подключение к БД под учетными данными роли без появления диалога авторизации. Далее под установленным соединением происходят операции с таблицами.
По умолчанию роль приложения не используется. Опция доступна, когда в настройках подключения к БД выбран тип клиента СУБД Microsoft SQL Server или данный тип клиента СУБД унаследован от подключения к репозиторию. Настройка автоматического подключения на использование роли приложения не влияет.
Для выполнения примера на форме должны быть расположены компоненты EditBox1 и EditBox2 типа EditBox. В схеме должна быть база данных с идентификатором DB, которая должна использовать тип клиента СУБД Microsoft SQL Server.
Sub UserProc;
Var
MB : IMetabase;
DbObj: IMetabaseObject;
Db : IDatabase;
Role : IDatabaseApplicationRole;
Begin
MB := MetabaseClass.Active;
DbObj := MB.ItemById("DB").Edit;
Db := DbObj As iDatabase;
Role := Db.Role;
If Role.Mode=DatabaseApplicationRoleMode.Off Then
Role.Mode := DatabaseApplicationRoleMode.On_;
Role.Name := EditBox1.Text;
Role.Password := EditBox2.Text;
End If;
DbObj.Save;
End Sub UserProc;
После выполнения примера будет включено использование роли приложения и заданы для нее учетные данные.
См. также: