IMobileApplication.CreatePublicator

Синтаксис Fore

CreatePublicator: IMobileApplicationPublicator;

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

CreatePublicator: Prognoz.Platform.Interop.Mobile.IMobileApplicationPublicator;

Описание

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

Комментарии

Для выполнения публикации используйте метод IMobileApplicationPublicator.Execute.

Пример Fore

Для выполнения примера в репозитории предполагается наличие мобильного приложения с идентификатором «MA_PUB». Добавьте ссылки на системные сборки: Metabase, Mobile, Xml.

Также в примере используется класс MobileAppCallback, описание которого приведено в примере Fore для IMobileApplicationPublishCallBack.OnStartPublish.

Sub UserProc;
Var
    mb: IMetabase;
    Mobile: IMobileApplication;
    Publicator: IMobileApplicationPublicator;
    callBack: MobileAppCallback;
    res: MobilePublishResult;
    XmlDoc: IXmlDomDocument3;
    el: IXmlDomElement;
Begin
    mb := MetabaseClass.Active;
    // Получаем публикуемое мобильное приложение (МП)
    Mobile := mb.ItemById("MA_PUB").Bind As IMobileApplication;
    // Создаем публикатор МП
    Publicator := Mobile.CreatePublicator;
    // Задаем веб-сервер и виртуальный каталог для публикации МП
    Publicator.WebApplication := "http://prognoz/PPMobile_App_v7";
    // Если МП не опубликовано, то выполняем публикацию
    If Not (Publicator.IsPublished = MobilePublishResult.Ok) Then
        // Создаем обработчик событий, возникающих при публикации МП
        callBack := New MobileAppCallback.Create;
        // Выполняем публикацию МП
        res := Publicator.Execute(callBack);
        // Обрабатываем результаты публикации МП
        If res = MobilePublishResult.Ok Then
            Debug.WriteLine("Публикация выполнена успешно");
        Else
            Debug.WriteLine("В процессе публикации произошла ошибка");
        End If;
        // Сохраняем параметры публикации МП в XML-файл
        XmlDoc := New DOMDocument60.Create;
        el := XmlDoc.createElement("Root");
        XmlDoc.appendChild(el);
        Publicator.SaveToXml(el);
        XmlDoc.save("C:\Publicator.xml");
    End If;
End Sub UserProc;

Результат выполнения примера: произведена попытка публикации мобильного приложения, результат выведен в окно консоли, параметры публикации выгружены в файл «C:\Publicator.xml».

Пример Fore.NET

Для выполнения примера в репозитории предполагается наличие мобильного приложения с идентификатором «MA_PUB».

Также в примере используется класс MobileAppCallback, описание которого приведено в примере Fore для IMobileApplicationPublishCallBack.OnStartPublish.

Imports Prognoz.Platform.Interop.Mobile;
Imports Prognoz.Platform.Interop.MsXml2;

[STAThread]
Public Shared Sub Main(Params: StartParams);
Var
    mb: IMetabase;
    Mobile: IMobileApplication;
    Publicator: IMobileApplicationPublicator;
    callBack: MobileAppCallback;
    res: MobilePublishResult;
    XmlDoc: IXmlDomDocument3;
    el: IXmlDomElement;
Begin
    mb := Params.Metabase;
    // Получаем публикуемое мобильное приложение (МП)
    Mobile := mb.ItemById["MA_PUB"].Bind() As IMobileApplication;
    // Создаем публикатор МП
    Publicator := Mobile.CreatePublicator();
    // Задаем веб-сервер и виртуальный каталог для публикации МП
    Publicator.WebApplication := "http://prognoz/PPMobile_App_v7";
    // Если МП не опубликовано, то выполняем публикацию
    If Not (Publicator.IsPublished = MobilePublishResult.mprOk) Then
        // Создаем обработчик событий, возникающих при публикации МП
        callBack := New MobileAppCallback.Create();
        // Выполняем публикацию МП
        res := Publicator.Execute(callBack);
        // Обрабатываем результаты публикации МП
        If res = MobilePublishResult.mprOk Then
            System.Diagnostics.Debug.WriteLine("Публикация выполнена успешно");
        Else
            System.Diagnostics.Debug.WriteLine("В процессе публикации произошла ошибка");
        End If;
        // Сохраняем параметры публикации МП в XML-файл     
        XmlDoc := New DOMDocument60.Create();
        el := XmlDoc.createElement("Root");
        XmlDoc.appendChild(el);
        Publicator.SaveToXml(el);
        XmlDoc.save("C:\Publicator.xml");
    End If;
End Sub;

Результат выполнения примера: произведена попытка публикации мобильного приложения, результат выведен в окно консоли, параметры публикации выгружены в файл «C:\Publicator.xml».

См. также:

IMobileApplication