GetCommuterInfo(FeatureName: String): IUiLicenseCommuterInfo;
GetCommuterInfo(FeatureName: String): IUiLicenseCommuterInfo;
FeatureName. Наименование единицы лицензирования.
Метод GetCommuterInfo получает информацию о временной локальной единице лицензирования, полученной с сервера лицензий.
Метод актуален для применения, если ранее была получена временная локальная лицензия с сервера лицензий с помощью метода CheckoutCommuterLicense. Проверка о взятии единицы лицензирования с сервера лицензий выполняется с помощью метода IUiLicenseManager.IsCheckedOut.
Если единица лицензирования не была взята с сервера лицензий, то метод будет возвращать NULL.
Для выполнения примера разместите на форме компоненты Button, Editbox и Memo с идентификаторами «Button1», «Editbox1» и «Memo1» соответственно, подключите системную сборку «Ui». Пример является обработчиком события OnClick для компонента «Button1».
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
LicManager: IUiLicenseManager;
Feature: String;
CommuterInfo: IUiLicenseCommuterInfo;
Info: IStringList;
Begin
LicManager := WinApplication.Instance.LicenseManager;
Feature := EditBox1.Text;
Memo1.Clear;
Info := Memo1.Lines;
If LicManager.IsCheckedOut(Feature) Then
CommuterInfo := LicManager.GetCommuterInfo(Feature);
If CommuterInfo <> Null Then
Info.Add("Наименование ед.лиц.: " + CommuterInfo.FeatureName);
Info.Add("Начало действия: " + CommuterInfo.StartDate.ToString);
Info.Add("Окончание действия: " + CommuterInfo.ExpireDate.ToString);
Info.Add("IP сервера лицензий: " + CommuterInfo.IssuingServer);
End If;
Else
Info.Add("Единица лицензирования не бралась с сервера");
End If;
End Sub Button1OnClick;
Введите в Editbox название предустановленной единицы лицензирования, например PP_OLAP, и нажмите на кнопку. Если с сервера лицензий бралась временная локальная лицензия, то при нажатии на кнопку в Memo будет выведена информация о ней. Если временная локальная лицензия не бралась с сервера, то будет выдано соответствующее сообщение.
Для выполнения примера подключите системные сборки «Ui», «Fore», «ForeSystem». Разместите на форме компоненты Button и два TextBox с идентификаторами «Button1», «TextBox1» и «TextBox2» соответственно. Для второго TextBox2 установите свойство Multiline в True. Пример является обработчиком события OnClick для компонента «Button1». Результат выполнения примера Fore.NET совпадает с примером Fore.
Imports Prognoz.Platform.Interop.Ui;
Imports Prognoz.Platform.Interop.Fore;
Imports Prognoz.Platform.Interop.ForeSystem;
...
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
WinApp: WinApplicationClassClass = New WinApplicationClassClass();
Svc: IForeServices;
RunContext: ForeRuntimeContext;
LicManager: IUiLicenseManager;
Feature: String;
CommuterInfo: IUiLicenseCommuterInfo;
Info: List<String> = New List<string>();
Begin
Svc := Self.Metabase As IForeServices;
RunContext := Svc.GetRuntime().Context;
LicManager := WinApp.Instance[RunContext].LicenseManager;
textBox2.Clear();
Feature := textBox1.Text;
If LicManager.IsCheckedOut(Feature) Then
CommuterInfo := LicManager.GetCommuterInfo(Feature);
If CommuterInfo <> Null Then
Info.Add("Наименование ед.лиц.: " + CommuterInfo.FeatureName);
Info.Add("Начало действия: " + CommuterInfo.StartDate.ToString());
Info.Add("Окончание действия: " + CommuterInfo.ExpireDate.ToString());
Info.Add("IP сервера лицензий: " + CommuterInfo.IssuingServer);
End If;
Else
Info.Add("Единица лицензирования не бралась с сервера");
End If;
textBox2.Lines := info.ToArray();
End Sub;
См. также: