ILicenseManager.CheckinCommuterLicense

Синтаксис Fore

CheckinCommuterLicense(FeatureName: String): UiLicenseStatusCode;

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

CheckinCommuterLicense(System.String): Prognoz.Platform.Interop.ForeSystem.UiLicenseStatusCode;

Параметры

FeatureName. Наименование единицы лицензирования.

Описание

Метод CheckinCommuterLicense возвращает локальную лицензию на сервер лицензий, которая позволяла временно использовать приложение вне сетевого окружения.

Комментарии

Метод актуален после получения временной лицензии с сервера лицензий с помощью метода ILicenseManager.CheckoutCommuterLicense.

Для успешного возвращения лицензии на сервер настройки поиска лицензий должны совпадать с настройками, которые были заданы в момент взятия временной лицензии с сервера лицензий.

Пример Fore

Для выполнения примера разместите на форме компоненты Button и Editbox с наименованиями «Button1» и «Editbox1» соответственно.

Добавьте ссылки на системные сборки: Host, Ui, Forms.

Пример является обработчиком события OnClick для компонента «Button1».

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    LicManager: ILicenseManager;
    Feature: String;
    FeatureInfo: ILicenseFeatureInfo;
    StatusCode: UiLicenseStatusCode;
Begin
    LicManager := WinApplication.Instance.LicenseManager;
    Feature := EditBox1.Text;
    FeatureInfo := LicManager.FeatureInfo(Feature);
    
If LicManager.IsCheckedOut(Feature) Then
        StatusCode := LicManager.CheckinCommuterLicense(Feature);
        
If StatusCode = UiLicenseStatusCode.Success Then
            WinApplication.InformationBox(
"Лицензия возвращена успешно");
        
Else
            WinApplication.InformationBox(
"Ошибка: " + StatusCode.ToString);
        
End If;
    
Else
        WinApplication.InformationBox(
"Лицензия не получена с сервера");
    
End If;
End Sub Button1OnClick;

Введите в Editbox наименование предустановленной единицы лицензирования, например PP_OLAP, и нажмите на кнопку. Если указанная единица лицензирования ранее была получена с сервера лицензий, то она будет возвращена. Если при возвращении возникнут ошибки, то будет выдано сообщение с кодом возникшей ошибки.

Пример Fore.NET

Для выполнения примера разместите на форме компоненты Button и TextBox с наименованиями «Button1» и «TextBox1» соответственно. Для TextBox установите свойство Multiline в True.

Добавьте ссылки на системные сборки: Host, Ui, Fore, ForeSystem.

Пример является обработчиком события OnClick для компонента «Button1».

Imports Prognoz.Platform.Interop.Host;
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: ILicenseManager;
    Feature: String;
    FeatureInfo: ILicenseFeatureInfo;
    StatusCode: UiLicenseStatusCode;
Begin
    Svc := Self.Metabase 
As IForeServices;
    RunContext := Svc.GetRuntime().Context;
    LicManager := WinApp.Instance[RunContext].LicenseManager;
    Feature := textBox1.Text;
    FeatureInfo := LicManager.FeatureInfo(Feature);
    
If LicManager.IsCheckedOut(Feature) Then
        StatusCode := LicManager.CheckinCommuterLicense(Feature);
        
If StatusCode = UiLicenseStatusCode.lscSuccess Then
            WinApp.InformationBox(
"Лицензия возвращена успешно"New IWin32WindowForeAdapter(Self));
        
Else
            WinApp.InformationBox(
"Ошибка: " + StatusCode.ToString(), New IWin32WindowForeAdapter(Self));
        
End If;
    
Else
        WinApp.InformationBox(
"Лицензия не получена с сервера"New IWin32WindowForeAdapter(Self));
    
End If;
End Sub;

Результат выполнения примера Fore.NET совпадает с примером Fore.

См. также:

ILicenseManager