Description: String;
Description: System.String;
Свойство Description определяет описание, которое будет использовано в тексте метки в правом верхнем углу первого листа при маркировке объектов при экспорте и печати.
Если описание пусто, то при маркировке будет использовано наименование уровня безопасности.
Для выполнения примера убедитесь, что в мандатном доступе содержится категория и уровни безопасности.
Добавьте ссылки на системные сборки: Metabase, ForeSystem (для примера на Fore.NET).
Sub UserProc;
Var
MB: IMetabase;
MS: IMetabaseSecurity;
PO: IMetabasePolicy;
MA: IMetabaseMandatoryAccess;
Ctgr: ISecurityCategory;
SecLvl: ISecurityLevel;
Lic: Object;
Begin
MB := MetabaseClass.Active;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.Adm);
MS := MB.Security;
PO := MS.Policy;
MA := PO.MandatoryAccess;
// Изменим уровень безопасности
первой категории
Ctgr := MA.Category(0);
SecLvl := Ctgr.Level(1);
Debug.WriteLine(SecLvl.Name);
SecLvl.Description := "Для служебного пользования";
SecLvl.Marking := True; // маркировать объекты при экспорте и печати
SecLvl.TreatSectionAsDocument := True; // считать секцию документа отдельным документом
// Сохраним изменения
MS.Apply;
// Освободим лицензию
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;
PO: IMetabasePolicy;
MA: IMetabaseMandatoryAccess;
Ctgr: ISecurityCategory;
SecLvl: ISecurityLevel;
Lic: Object;
Begin
MB := Params.Metabase;
// Получим лицензию для возможности работы с менеджером безопасности
Lic := MB.RequestLicense(UiLicenseFeatureType.lftAdm);
MS := MB.Security;
PO := MS.Policy;
MA := PO.MandatoryAccess;
// Изменим уровень безопасности
первой категории
Ctgr := MA.Category[0];
SecLvl := Ctgr.Level[1];
System.Diagnostics.Debug.WriteLine(SecLvl.Name);
SecLvl.Description := "Для служебного пользования";
SecLvl.Marking := True; // маркировать объекты при экспорте и печати
SecLvl.TreatSectionAsDocument := True; // считать секцию документа отдельным документом
// Сохраним изменения
MS.Apply();
// Освободим лицензию
Lic := Null;
End Sub;
После выполнения примера будут изменены параметры уровня безопасности первой категории.
См. также: