IMetabaseUsersUpdate.ItemSetup

Синтаксис Fore

ItemSetup(Index: Integer): IMetabaseSecuritySubjectUpdateSetup;

Синтаксис Fore.NET

ItemSetup(Index: Integer): Prognoz.Platform.Interop.Metabase.IMetabaseSecuritySubjectUpdateSetup;

Параметры

Index. Индекс пользователя в списке обновления.

Описание

Свойство ItemSetup возвращает настройки обновления субъекта безопасности.

Пример Fore

Для выполнения примера подключите к модулю системную сборку Metabase.

Sub UserProc;
Var
    Sec: IMetabaseSecurity;
    Users: IMetabaseUsers;
    User: IMetabaseUser;
    i: Integer;
    UsUpdate: IMetabaseUsersUpdate;
    Subj: ISecuritySubject;
Begin
    Sec := MetabaseClass.Active.Security;
    Users := Sec.Users;
    UsUpdate := Sec.CreateUsersUpdate;
    For i := 0 To Users.Count - 1 Do
        User := Users.Item(i);
        UsUpdate.Add(User);
        If User.Name = "NewUser" Then
            UsUpdate.ItemSetup(i).UpdateType := MetabaseSecuritySubjectUpdateType.DBGrant;
        End If;
    End For;
    For i := 0 To UsUpdate.Count - 1 Do
        Subj := UsUpdate.ItemSetup(i).Subject;
        Debug.Writeline(i.ToString + ". Name: " + Subj.Name);
    End For;
    Sec.UpdateUsers(UsUpdate);
End Sub UserProc;

После выполнения примера в окно консоли будет выведен список обновляемых пользователей. Если есть пользователь с наименованием "NewUser", то для него будет изменен способ обновления. Будут обновлены все пользователи репозитория.

Пример Fore.NET

Для выполнения примера предполагается наличие .NET-формы, расположенной на ней кнопки с наименование «Button1» и компонента ListBox с наименованием «ListBox1».

Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    Sec: IMetabaseSecurity;
    Users: IMetabaseUsers;
    User: IMetabaseUser;
    i: Integer;
    UsUpdate: IMetabaseUsersUpdate;
    Subj: ISecuritySubject;
Begin
    Sec := Self.Metabase.Security;
    Users := Sec.Users;
    UsUpdate := Sec.CreateUsersUpdate();
    For i := 0 To Users.Count - 1 Do
        User := Users.Item[i];
        UsUpdate.Add(User);
        If User.Name = "NewUSER" Then
            UsUpdate.ItemSetup[i].UpdateType := MetabaseSecuritySubjectUpdateType.mesesuuptyDBGrant;
        End If;
    End For;
    For i := 0 To UsUpdate.Count - 1 Do
        Subj := UsUpdate.ItemSetup[i].Subject;
        ListBox1.Items.Add(i.ToString() + ". Name: " + Subj.Name);
    End For;
    Sec.UpdateUsers(UsUpdate);
End Sub;

При нажатии на кнопку будет выведен список обновляемых пользователей. Если есть пользователь с наименованием "NewUser", то для него будет изменен способ обновления. Будут обновлены все пользователи репозитория.

См. также:

IMetabaseUsersUpdate