Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Создание решения


  • Открыть командную строку

  • Перейти в директорию, в которой располагается командная утилита Utils.exe

    Блок кода
    languagec#
    > cd c:/server/utils


  • Проверить доступность сервера

    Проверить правильно ли настроен сервер можно выполнив любую команду, с помощью utils.exe.

    Например, команда запроса версии сервера

    Блок кода
    languagec#
    > utils.exe -ver -host http://localhost/bitmobile -p pAss3087


  • Выполнить команду создания решения:

    Блок кода
    languagec#
    > utils.exe -sc -host http://somehost.com/bitmobile -p p@ss12 -sn mysolution
    
    -host - адрес серверного приложения 
    -p - пароль к серверному приложению
    -sn - наименование решения


    Предупреждение
    Наименование решения не должно содержать спец.символы и пробелы


    При выполнении команды серверное приложение создает директорию с именем решения (-sn) в каталоге, который был указан в параметре "SolutionFolder" при настройке сервера.

Установить пароль администратора решения

Пароль администратора решения должен отвечать требованиям сложности:

  • Пароль должен состоять не менее чем из восьми символов.
  • Пароль не должен содержать пробелов
  • В пароле должны присутствовать символы трех категорий из числа следующих четырех:
    • прописные буквы английского алфавита от A до Z;
    • строчные буквы английского алфавита от a до z;
    • десятичные цифры (от 0 до 9);
    • разрешенные неалфавитные символы  - &,?,№,#,$,!

Блок кода
languagec#
> utils.exe -ssp -host http://somehost.com/bitmobile -p p@ss12 -sn mysolution -sp p@ss777

-host - адрес серверного приложения 
-p - пароль к серверному приложению
-sn - наименование решения
-sp - пароль администратора решения



Информация

Для быстрого открытия командной строки необходимо:

1.Открыть каталог в котором находится файл с утилитой

2.В свободном поле нажать Shift + Правая кнопка мыши

3.Выбрать пункт "Открыть окно команд "

Image Added

 

 

  • Загрузить объектную модель решения на сервер

Блок кода
languagec#
> utils.exe -dm -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\meta.xml

-host - адрес серверного приложения 
-sn - наименование решения
-sp - пароль администратора решения

При выполнении команды серверное приложение создает базу данных и  таблицы, по загруженной объектной модели. 


Информация

Для подтверждения выполнения команды, необходимо нажать "y" на клавиатуре.


  • Загрузить данные решения на сервер

    Блок кода
    languagec#
    > utils.exe -ud -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\data.xml
    
    -host - адрес серверного приложения 
    -sn - наименование решения
    -sp - пароль администратора решения

    При выполнении команды серверное приложение заполняет созданные на предыдущем этапе таблицы данными из .xml файла.

  • Загрузить ресурсы решения на сервер

    Блок кода
    languagec#
    > utils.exe -dr -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\resources
    
    -host - адрес серверного приложения 
    -sn - наименование решения
    -sp - пароль администратора решения

    При выполнении команды каталог с ресурсами приложения загружается на сервер в каталог ../SolutionName/resource/

  • Применить загруженные ресурсы

    Блок кода
    languagec#
    > utils.exe -ar -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution
  • 
    
    -host - адрес серверного приложения 
    -sn - наименование решения
    -sp - пароль администратора решения

    При выполнении команды производятся следующие активности:

    - Проверка корректности ресурсов

    - Загрузка ресурсов в базу данных

    - Проверка соответствия версии объектной модели указанной в ресурсах

  • Проверить доступность решения

  1. Запустить мобильный клиент
  2. Указать адрес подключения к решению, которое было создано ранее
  3. Авторизоваться

 

Обновление решения


Действия по обновлению решения могут различаться в зависимости от того, насколько глобальное обновление необходимо провести:

  • Обновление ресурсов приложения

    Для обновления ресурсов решения достаточно выполнить команды:

    Блок кода
    languagec#
    > 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

    Для получения обновлений на мобильном клиенте достаточно выполнить синхронизацию и перезапустить клиент.

  • Обновление данных или метаданных


    Для обновления данных и/или метаданных достаточно выполнить команды:

    Блок кода
    languagec#
    > 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.

    - Перезагрузит ресурсы, которые ранее были загружены на сервер
    Для получения обновлений на мобильном клиенте  необходимо выполнить реавторизацию с очисткой локальных данных.

     

  • Обновление фильтров

    В случае, если есть необходимость обновить только фильтры, накладываемые на данные при синхронизации мобильного агента, следует использовать следующую команду:

    Блок кода
    languagec#
    > utils.exe -dmf -host http://somehost.com/bitmobile -sp p@ss77 -sn mysolution c:\meta.xml
    

    Для получения обновлений на мобильном клиенте  необходимо выполнить реавторизацию с очисткой локальных данных.

    Важно: Использование данной процедуры рекомендуется только в крайних случаях, т.к. может привести к рассинхронизации данных.

  • Полное обновление

    Для выполнения полного обновления решения необходимо выполнить следующие команды:

    Блок кода
    languagec#
    > 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.Выбрать пункт "Открыть окно команд "

Image Removed

 

Шаг 2. Установить пароль администратора решения

Шаг 3. Загрузить данные для работы с решением

Шаг 4. Проверка доступности решения

Для развертывания пакета решения на сервере необходимо:

  1. Создать решение на сервере
  2. Установить пароль администратора решения

  3. Развернуть пакет решения

Структура пакета решения:

  • Пакет может быть предоставлен разработчиком решения или собран вручную.
  • Пакет представляет собой zip архив, содержащий файл метаданных, первоначальных данных и папку ресурсов.
  • Для создания пакета необходимо использовать команду -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>
     

  • Использовать утилиты winzip.exe и другие архиваторы для создания пакета не следует.
  • В процессе развертывания сервер:

    1. Создаст директорию с именем решения в папке, указанной в параметре "SolutionFolder" файла web.config
    2. Создаст базу данных на сервере БД, указанном в параметре "DatabaseServer" файла web.config

    3. Заполнит базу данных первоначальными данными, входящими в состав пакета. 
    4. Запишет в базу данных ресурсы приложения.

    Пример сценария:

    1. Создать решение на сервере

      D:\BitMobileServer\utils.exe -sc -host http://localhost/bitmobile -p pAss3087 -sn superagent

      ok

    2. Установить пароль администратора решения

      D:\BitMobileServer\utils.exe -ssp -host http://localhost/bitmobile -p pAss3087 -sn superagent -sp myPass12

      ok

    3. Развернуть пакет решения

      D:\BitMobileServer\utils.exe -dsp -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent.pkg 

      ok

    Якорь123123Более сложные сценарии

    Ручное развертывание решения

    Шаги, которые выполняет сервер при развертывании пакета решения, могут быть выполнены вручную с помощью набора команд утилиты utils.exe

    1. Загрузка файла метаданных
      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
    2. Загрузка файла первоначальных данных
      D:\BitMobileServer\utils.exe -ud -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\data.xml
      ok
    3. Загрузка каталога ресурсов на сервер
      D:\BitMobileServer\utils.exe -dr -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\resource
      ok
    4. Загрузка каталога ресурсов 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), пример:

    1. Отправляем файл на сервер - сервер сохраняет полученный файл, ставит его в очередь на обработку и возвращает статус "accepted".
      D:\BitMobileServer\utils.exe -dma -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\metadata.xml
      accepted
    2. Статус процесса можно наблюдать, просматривая лог файл 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), пример:

  • D:\BitMobileServer\utils.exe -dmf -host http://localhost/bitmobile -sp myPass12 -sn superagent d:\superagent\metadata.xml
    Existing filters will be removed. Do you want to proceed ?
    ok
  • После данной операции мобильным агентам необходимо провести первичную синхронизацию
    • .