Добавление мобильного приложения
В этой статье рассмотрим, как настроить серверную часть WorkflowEngine, чтобы мобильное приложение могло взаимодействовать с ней.
Процесс добавления мобильного приложения будет рассматриваться относительно учебного проекта, с которым познакомились в статье Учебный проект.
План
Этап 1. Подготовка бинарников и форм
В папке с развернутой серверной частью создать папку \MobileBin\Template, в которой будут храниться бинарники для мобильного приложения Template. Например, D:\WorkflowEngine\Template\MobileBin\Template
Скопировать бинарники из папки MobileBin архива в созданную папку \MobileBin\Template.
В папке \Template\Projects\1. Template разархивированного учебного проекта создать папку \MobileForms, в которой будут храниться xml-файлы форм мобильного приложения. Например, D:\WT\Projects\Template\Projects\1. Template\MobileForms
Скопировать содержимое папки MobileForms из архива в созданную папку MobileForms.
Этап 2. Настройка конфига
В файл конфигурации D:\WorkflowEngine\Template\appsettings.json внести правки:
В поле MobileFormsFolder проверить, совпадает ли указанный путь до папки Projects с тем, по которому располагается папка с xml-файлами форм мобильного приложения. По умолчанию это папка \1. Template\MobileForms. При несовпадении указать верный путь.
В поле MobileBinaryPath проверить, совпадает ли указанный путь до папки MobileBin с тем, по которому располагается папка с бинарниками. При несовпадении указать верный путь.
В файле D:\WorkflowEngine\Template\hosting.json для server.urls необходимо указать локальный IP-адрес сервера, а не localhost. В конфиге клиентской части для desktop тоже нужно изменить адрес сервера с localhost на локальный IP-адрес.
Этап 3. Подготовка базы данных
В таблицу public.mobile_app внести правки:
В столбце forms_path проверить, совпадает ли указанный относительный путь до папки, в которой хранятся xml-файлы форм для мобильного приложения. Путь указывается относительно папки, заданной в поле MobileFormsFolder в файле конфигурации. При несовпадении указать верный путь.
В столбце bin_path проверить, совпадает ли указанный относительный путь до папки, в которой хранятся бинарники. Путь указывается относительно папки, заданной в поле MobileBinaryPath в файле конфигурации. При несовпадении указать верный путь.
В таблице public.user для пользователя WS_GUEST проверить хэш пароля. Мобильное приложение по умолчанию подключается под пользователем WS_GUEST с паролем wsGuestPwd123. Поэтому установите для пользователя WS_GUEST этот пароль.
Если в таблице public.user для пользователя WS_GUEST пришлось сменить пароль, то необходимо в файле WorkflowForms.dll.config (конфиг клиентской десктопной части) в поле AnonymousPassword указать пароль wsGuestPwd123, чтобы десктопный клиент продолжал работать с серверной частью.
Далее подробнее рассмотрим каждый пункт плана.
При возникновении ошибки в процессе разворачивания проекта вернитесь к этому плану и проверьте каждый его пункт.
Архив
Скачайте архив с бинарниками и xml-файлами форм:
Архив содержит две папки:
MobileBin - папка с бинарниками для мобильных приложений;
MobileForms - папка с xml-файлами стартовой формы и формы настроек.
Подготовка бинарников и форм
В папке, в которую развернули серверную часть, например, D:\WorkflowEngine\Template, создадим папку MobileBin\Template для бинарников мобильного приложения. В новую папку D:\WorkflowEngine\Template\MobileBin\Template скопируем файлы из папки MobileBin архива.
В папке \Template\Projects\1. Template разархивированного учебного проекта создадим папку \MobileForms, в которой будут храниться xml-файлы форм мобильного приложения. Например, D:\WT\Projects\Template\Projects\1. Template\MobileForms. Скопируем содержимое папки MobileForms из архива в созданную папку MobileForms.
Настройка конфига
Чтобы мобильное приложение могло взаимодействовать с серверной частью WorkflowEngine, нужно показать серверу, в каких папках лежат бинарники и xml-файлы форм. Зная пути до папок, сервер сможет отдавать файлы мобильным приложениям для скачивания на устройство.
Первым делом в файле конфигурации D:\WorkflowEngine\Template\appsettings.json добавим строки:
В поле MobileFormsFolder указывается путь до папки Projects, в которой будет происходить поиск папки с xml-файлами форм.
В поле MobileBinaryPath указывается путь до папки MobileBin, в которой будут располагаться подпапки с бинарниками.
Для удобства строки можно добавить следом за полями FormsFolder и BinaryPath, которые описывают пути до аналогичных файлов десктопной части.
Подготовка базы данных
Регистрация приложения
Затем необходимо зарегистрировать мобильное приложение в базе данных, для этого создадим таблицу public.mobile_app и добавим в нее запись:
Колонка name содержит ключ, который совпадает с настройкой MobileAppName в конфиге мобильного приложения. Когда в проекте есть несколько мобильных приложений, то этот ключ помогает серверной части определять, какое приложение запрашивает файлы, и по каким путям их можно найти, чтобы отдать приложению.
Колонка title хранит имя проекта, которое будет отображаться в списке выбора типа мобильного приложения. Если в проекте используется несколько приложений, и в настройке MobileAppName в конфиге приложения не указан тип, то при первом запуске приложения пользователь сможет сам выбрать тип из доступных.
Колонка bin_path содержит относительный путь до папки, в которой находятся бинарные файлы мобильного приложения. Путь указывается относительно папки, заданной в поле MobileBinaryPath в файле конфигурации appsettings.json. Например, при указанных значениях, сервер будет искать бинарные файлы мобильного приложения в папке D:\WorkflowEngine\Template\MobileBin\Template.
Колонка forms_path содержит относительный путь до папки, в которой хранятся xml-файлы форм для мобильного приложения. Путь указывается относительно папки, заданной в поле MobileFormsFolder в файле конфигурации appsettings.json. Например, при указанных значениях, сервер будет искать xml-файлы форм мобильного приложения в папке D:\WT\Projects\Template\Projects\1. Template\MobileForms.
Колонка start_form_path хранит название файла стартовой формы, который должен находиться в папке из колонки forms_path.
Колонка by_default определяет приложение по умолчанию. Может быть не больше одного приложения по умолчанию.
Гостевая учетка
Мобильное приложение по умолчанию подключается под пользователем WS_GUEST с паролем wsGuestPwd123. Поэтому установите для пользователя WS_GUEST этот пароль, выполнив запрос:
Если в таблице public.user для пользователя WS_GUEST пришлось сменить пароль, то необходимо в файле WorkflowForms.dll.config (конфиг клиентской десктопной части) в поле AnonymousPassword указать пароль wsGuestPwd123, чтобы десктопный клиент продолжал работать с серверной частью.
Last updated