Оглавление |
---|
Создание решения
Загрузить данные решения на сервер
Блок кода language c# > utils.exe -ud -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\data.xml -host - адрес серверного приложения -sn - наименование решения -sp - пароль администратора решения
При выполнении команды серверное приложение заполняет созданные на предыдущем этапе таблицы данными из .xml файла.
Загрузить ресурсы решения на сервер
Блок кода language c# > utils.exe -dr -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\resources -host - адрес серверного приложения -sn - наименование решения -sp - пароль администратора решения
При выполнении команды каталог с ресурсами приложения загружается на сервер в каталог ../SolutionName/resource/
Применить загруженные ресурсы
Блок кода language c# > utils.exe -ar -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution
-host - адрес серверного приложения -sn - наименование решения -sp - пароль администратора решения
При выполнении команды производятся следующие активности:
- Проверка корректности ресурсов
- Загрузка ресурсов в базу данных
- Проверка соответствия версии объектной модели указанной в ресурсах
Проверить доступность решения
- Запустить мобильный клиент
- Указать адрес подключения к решению, которое было создано ранее
- Авторизоваться
Обновление решения
Действия по обновлению решения могут различаться в зависимости от того, насколько глобальное обновление необходимо провести:
Обновление ресурсов приложения
Для обновления ресурсов решения достаточно выполнить команды:
Блок кода language c# > utils.exe -dr -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\resources > utils.exe -ar -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution
Для получения обновлений на мобильном клиенте достаточно выполнить синхронизацию и перезапустить клиент.
Обновление данных или метаданных
Для обновления данных и/или метаданных достаточно выполнить команды:Блок кода language c# > utils.exe -dm -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\meta.xml > utils.exe -ud -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\data.xml
При выполнении команды сервер:
- Пересоздаст базу данных с таблицами (старая база данных удаляется)
- Загрузит данные из файла .xml.
- Перезагрузит ресурсы, которые ранее были загружены на сервер
Для получения обновлений на мобильном клиенте необходимо выполнить реавторизацию с очисткой локальных данных.Обновление фильтров
В случае, если есть необходимость обновить только фильтры, накладываемые на данные при синхронизации мобильного агента, следует использовать следующую команду:
Блок кода language c# > utils.exe -dmf -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\meta.xml
Для получения обновлений на мобильном клиенте необходимо выполнить реавторизацию с очисткой локальных данных.
Важно: Использование данной процедуры рекомендуется только в крайних случаях, т.к. может привести к рассинхронизации данных.
Полное обновление
Для выполнения полного обновления решения необходимо выполнить следующие команды:
Блок кода language c# > utils.exe -dm -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\meta.xml > utils.exe -ud -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\data.xml > utils.exe -dr -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\resources > utils.exe -ar -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution
Для получения обновлений на мобильном клиенте необходимо выполнить реавторизацию с очисткой локальных данных
Информация |
---|
Для быстрого открытия командной строки необходимо: 1.Открыть каталог в котором находится файл с утилитой 2.На пустом месте нажать Shift + Правая кнопка мыши 3.Выбрать пункт "Открыть окно команд " |
Шаг 2. Установить пароль администратора решения
Шаг 3. Загрузить данные для работы с решением
Шаг 4. Проверка доступности решения
Для развертывания пакета решения на сервере необходимо:
- Создать решение на сервере
Установить пароль администратора решения
- Развернуть пакет решения
Структура пакета решения:
Для создания пакета необходимо использовать команду -msp (make solution package) утилиты Utils.exe входящей в состав дистрибутива. Пример создания пакета superagent.pkg:
D:\BitMobileServer\utils.exe -msp d:\superagent\metadata.xml d:\superagent\data.xml d:\superagent\resource d:\superagent.pkg<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Rows></Rows>
</Root>
В процессе развертывания сервер:
- Создаст директорию с именем решения в папке, указанной в параметре "SolutionFolder" файла web.config
Создаст базу данных на сервере БД, указанном в параметре "DatabaseServer" файла web.config
- Заполнит базу данных первоначальными данными, входящими в состав пакета.
- Запишет в базу данных ресурсы приложения.
Пример сценария:
- Создать решение на сервере
D:\BitMobileServer\utils.exe -sc -host http://localhost/bitmobile -p pAss3087 -sn superagent
ok
Установить пароль администратора решения
D:\BitMobileServer\utils.exe -ssp -host http://localhost/bitmobile -p pAss3087 -sn superagent -sp myPass12
ok
- Развернуть пакет решения
D:\BitMobileServer\utils.exe -dsp -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent.pkg
ok
Ручное развертывание решения
Шаги, которые выполняет сервер при развертывании пакета решения, могут быть выполнены вручную с помощью набора команд утилиты utils.exe
- Загрузка файла метаданных
D:\BitMobileServer\utils.exe -dm -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\metadata.xml
Existing database will be removed. Do you want to proceed ?
ok - Загрузка файла первоначальных данных
D:\BitMobileServer\utils.exe -ud -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\data.xml
ok - Загрузка каталога ресурсов на сервер
D:\BitMobileServer\utils.exe -dr -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\resource
ok - Загрузка каталога ресурсов c сервера в базу данных
D:\BitMobileServer\utils.exe -ar -host http://localhost/bitmobile -sp myPass12 -sn superagent
ok
Данные операции могут быть выполнены не только на этапе первоначального развертывания решения, но также для внесения изменений в будущем - например дозагрузка данных или измененных ресурсов.
Асинхронная загрузка данных
Файл первоначальных данных может достигать больших размеров и его обработка сервером может занять продолжительное время. Чтобы избежать проблем связанных с ошибкой таймаута сервера и необходимости разбивать файл на несколько более мелких частей, следует использовать режим асинхронной загрузки. (только для версий сервера 2.21 и выше)
Для этого следует использовать команду -uda (upload data asynchronously)
Отправляем файл на сервер - сервер сохраняет полученный файл, ставит его в очередь на обработку и возвращает идентификатор, по которому можно узнать статус задачи в будущем.D:\BitMobileServer\utils.exe -uda -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\data.xml
f40f4f44-a587-4ca9-a276-f86e4daf4620
Получаем статус с помощью команды -ats (async task status).
D:\BitMobileServer\utils.exe -ats -host http://localhost/bitmobile -sp myPass12 -sn superagent -atid f40f4f44-a587-4ca9-a276-f86e4daf4620
2200 completed..
D:\BitMobileServer\utils.exe -ats -host http://localhost/bitmobile -sp myPass12 -sn superagent -atid f40f4f44-a587-4ca9-a276-f86e4daf4620
ok
Не следует давать серверу новую задачу на асинхронную загрузку данных, не дождавшись завершения предыдущей. Загрузка выполняется в транзакции и вторая операция может завершится с ошибкой таймаута по причине блокировки таблиц базы данных.
Асинхронная загрузка метаданных
Для версий сервера 2.37 и выше доступна асинхронная загрузка файла метаданных. Для этого следует использовать команду -dma (deploy metadata asynchronously), пример:
- Отправляем файл на сервер - сервер сохраняет полученный файл, ставит его в очередь на обработку и возвращает статус "accepted".
D:\BitMobileServer\utils.exe -dma -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\metadata.xml
accepted - Статус процесса можно наблюдать, просматривая лог файл admin.txt
12/10/2014 4:58:13 PM: Start building solution
12/10/2014 4:58:18 PM: DB scripts ok
12/10/2014 4:58:55 PM: Database ok
12/10/2014 5:03:45 PM: Provision ok
12/10/2014 5:04:00 PM: Sync patch ok
12/10/2014 5:04:53 PM: Admin ok
12/10/2014 5:05:22 PM: Clustered keys patch ok
12/10/2014 5:06:17 PM: Non clustered keys patch ok
12/10/2014 5:06:17 PM: Default NEWID values on tabular sections ok
12/10/2014 5:06:17 PM: initial data load ok
12/10/2014 5:06:17 PM: sqlite ok
12/10/2014 5:06:18 PM: Code generation ok
12/10/2014 5:06:18 PM: Client dll ok
12/10/2014 5:06:18 PM: Server dll ok
12/10/2014 5:06:28 PM: Resources ok
12/10/2014 5:06:28 PM: Solution has been successfully built
Обновление решения
При выгрузке метаданных сервер создает базу данных с нуля. Если база уже существовала - она удаляется. Это накладывает определенные сложности при внесении изменений в решение. Для устранения данной проблемы существуют специальные режимы выгрузки метаданных, при которых не происходит пересоздания базы данных.
Фильтры
Для изменений фильтров, накладываемых на данные при синхронизации мобильного агента, следует использовать команду -dmf (deploy metadata filters), пример:
Existing filters will be removed. Do you want to proceed ?
ok
.