IMetabaseCustomEvents.OnBeforeLogon

Синтаксис

OnBeforeLogon(Args: IMetabaseOnBeforeLogonArgs);

OnBeforeLogon(Args: Prognoz.Platform.Interop.Metabase.IMetabaseOnBeforeLogonArgs);

Описание

Метод OnBeforeLogon реализует событие, которое наступает перед подключением к репозиторию с помощью веб-сервиса.

Комментарии

Метод должен быть переопределён в пользовательском классе. Использование данного метода позволяет переопределить параметры подключения к репозиторию или выполнить какие-либо дополнительные действия при подключении.

Для подключения к репозиторию используется операция OpenMetabase.

Пример

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

Public Class CustomEvents: ForeMetabaseCustomEvents
    
Public Sub OnBeforeLogon(Args: IMetabaseOnBeforeLogonArgs);
    
Var
        Def: IMetabaseDefinition;
        SecPackage: ISecurityPackage;
        Creds: IPasswordCredentials;
    
Begin
        
If True Then
            Args.Handled := 
False;
            Args.AllowLogon := 
True;
            Args.ResultMetabase := Args.Metabase;
        
Else
            Args.Handled := 
True;
            Args.AllowLogon := 
True;
            Def := Args.Metabase.Definition;
            
//...
            //Изменение параметров подключения
            ///...
            SecPackage := New StandardSecurityPackage.Create;
            Creds := SecPackage.CreateCredentials(AuthenticationMode.Password) 
As IPasswordCredentials;
            Creds.UserName := (Args.Credentials 
As IPasswordCredentials).UserName;
            Creds.Password := 
"new password";
            
//...
            //Настройка учётных данных
            //...
            Args.ResultMetabase := Def.Open(Creds);
        
End If;
    
End Sub OnBeforeLogon;
End Class CustomEvents ;

См. также:

IMetabaseCustomEvents