IAuditLog.ArchiveToDate

Синтаксис

ArchiveToDate(Stamp: DateTime;

FileName: String;

[Callback: IAuditLogArchiveCallback = Null];

[Format: AuditLogArchiveFormat = 0];

[ClearLog: Boolean = False]);

ArchiveToDate(Stamp: System.DateTime,

FileName: System.String;

Callback: Prognoz.Platform.Interop.Metabase.IAuditLogArchiveCallback,

Format: Prognoz.Platform.Interop.Metabase.AuditLogArchiveFormat,

ClearLog: System.Boolean);

Параметры

Stamp. Дата, ограничивающая последние записи, которые будут архивироваться;

FileName. Наименование файла;

Callback. Объект, используемый для отслеживания процесса архивации протокола доступа;

Format. Формат файла, в который осуществляется сохранение;

ClearLog. Параметр, определяющий удаление записи из протокола доступа после архивации. По умолчанию установлено значение False, при этом записи не удаляются. Если установить значение True, то после архивации все сохраненные записи будут удалены из протокола доступа.

Описание

Метод ArchiveToDate производит архивирование части протокола доступа в файл.

Комментарии

В файл архивируются записи, начиная с самой первой и заканчивая последней записью, дата которой меньше даты, передаваемой посредством параметра Stamp.

Пример

Для выполнения примера требуется наличие файла «Gurnal_Part.csv».

Добавьте ссылки на системные сборки: Metabase, ForeSystem (для примера на Fore.NET).

Sub UserProc;
Var
    MB: IMetabase;
    MS: IMetabaseSecurity;
    AL: IAuditLog;
    Lic: Object;
Begin
    MB := MetabaseClass.Active;
    
// Получим лицензию для возможности работы с менеджером безопасности
    Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
    MS := MB.Security;
    
// Откроем протокол доступа
    Al := MS.OpenAuditLog;
    
// Сохраним протокол доступа в файл
    AL.ArchiveToDate(DateTime.ComposeDay(20190110), "C:\Gurnal_Part.csv"Null0True);
    
// Освободим лицензию
    Lic := Null;
End Sub UserProc;

Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.ForeSystem;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    MS: IMetabaseSecurity;
    AL: IAuditLog;
    Lic: Object;
    DateTime: System.DateTime;
Begin
    MB := Params.Metabase;
    
// Получим лицензию для возможности работы с менеджером безопасности
    Lic := MB.RequestLicense(UiLicenseFeatureType.lftAdm);
     MS := MB.Security;
    DateTime := 
New DateTime(20190110);
    
// Откроем протокол доступа
    Al := MS.OpenAuditLog();
    
// Сохраним протокол доступа в файл
    AL.ArchiveToDate(DateTime, "C:\Gurnal_Part.csv"Null, AuditLogArchiveFormat.alafBinary, True);
    
// Освободим лицензию
    Lic := Null;
End Sub;

После выполнения примера записи протокола доступа, начиная самой первой и заканчивая последней записью, дата которой меньше «10.01.2019», будут сохранены в файл «Gurnal_Part.csv». После сохранения данные записи будут удалены из протокола доступа текущего репозитория.

См. также:

IAuditLog