Задача

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

Решение

Для отключения фильтра необходимо создать замещающий обьект MobileApplicationManifestDefaultWorkplace (создается автоматически, если поменять колонки в мастере мобильного приложения) и заполнить следующим кодом:

{
    "SyncOptions": {
        "SysSettingsImportConfig": [],
        "ModelDataImportConfig": [
            {
                "Name": "Opportunity",
                "SyncFilter": null
            }
        ]    
    },
    "Modules": {},
    "Models": {}
}

После этого сохранить манифест, очистить кэш в мобильном приложении.

Необходимые условия

Права администратора, bpm'online 7.6+

Нравится

Поделиться

0 комментариев
Показать все комментарии

Вопрос

Как синхронизировать bpm'online 7.5 с версией мобильного приложения? У меня такая  ошибка :

Изображение удалено.

Ответ

Чтобы синхронизировать продажи bpm'online с мобильной версией, вам необходимо загрузить приложение из googlePlay или AppStore. В поле адрес сервера bpm'online вам нужно ввести имя веб-сайта вашей системы bpm'online. Например. если адрес моей системы bpm'online равен sales-omni-demo.bpmonline.com, тогда мне нужно указать точно такой же адрес в этой строке, также предоставляя мой логин и пароль.

Насколько я вижу на скриншоте, вы указали неверный адрес сервера bpm'online. Он должен всегда включать bpm'online.com. Поэтому попробуйте указать правильный адрес сервера, и вы сможете получить доступ к мобильному приложению.

Кстати, вы можете настроить Mobile App в версии bpm'online 7.5, вы можете настроить списки и страницы разделов так, как вы хотите, чтобы они отображались на мобильном устройстве. Перейдите в раздел «Конструктор системы», прокрутите страницу вниз и откройте мастер мобильных приложений, чтобы выполнить необходимые настройки.

Нравится

Поделиться

0 комментариев
Показать все комментарии

ОТЛАДКА НА УСТРОЙСТВЕ

  • Установить «debug» сборку приложения на android девайс 
  • Подключить к компьютеру, разрешить отладку для этого компьютера
  • Запустить Chrome
  • Подключится к устройству:

Изображение удалено.

Для просмотра наполнения таблиц в офлайн режиме можно в консоле выполнять такие запросы:

Terrasoft.Sql.DBExecutor.executeSql({sqls: ["Select * FROM Activity WHERE Id <> '28062807-98b1-40a6-b023-bc6723818506' "], success: function(result) {console.log(result[0].rows.item(0));}})

Изображение удалено.

Нравится

Поделиться

0 комментариев
Показать все комментарии

Симптомы

Bpm'online mobile bug report

Type: Terrasoft.SourceCodeException 

Message: Uncaught TypeError: Cannot read property 'sort' of undefined 

AdditionalInfo: Script: file:///storage/emulated/0/BPMonline700/AppStructure/rev_0/src/MobileLeadModuleConfig.js?hash=058621bb-36bc-409c-95da-167a0401cfa9%0D%0A%09Line: 160

Причина

Неправильно собрана сборка

Решение

Выполнить скрипт

INSERT INTO SysLookup (Id, Name, IsSimple, SysEntitySchemaUId)
VALUES ('FFB52150-F36B-1410-4893-1C6F65E16A07', 'InformationSource', 1, 'D3E76DCB-EB9F-494B-B5D9-0643E5418BEB')

 

Нравится

Поделиться

0 комментариев
Показать все комментарии

Добрый день.

Настраиваю мобильное приложение и столкнулся со следующей ситуацией.

Настройки часовых поясов: 

В профиле пользователя, от которого произведен логин в мобильное приложение +3 часа.

На мобильном устройстве +3 часа.

Добавляю запись через мобильное приложение со следующими значениями:

Изображение удалено.

После сохранения записи, выхода в основное меню и повторного открытия этой записи значения оказываются следующими:

Изображение удалено.

В основном приложении значения:

Дата подачи: 20.12.2017 9:28

Дата начала командировки: 19.12.2017

Дата окончания командировки: 19.12.2017

Что можно с этим сделать?

Нравится

2 комментария

Искандер, здравствуйте!

Уточните, пожалуйста:

- версию мобильного приложения;

- версию приложения bpm'online;

- какой конкретно (название) часовой пояс стоит в мобильном устройстве и в приложении;

- в каком разделе создаете запись;

- какой режим (offline/online) мобильного приложения используется;

- какую версию платформы Вы используете (UIv1/UIv2).

Вильшанский Дмитрий,

Версия мобильного приложения: 7.11.7

Версия приложения  7.11.0.3122

Часовой пояс в мобильном приложении определяется автоматически (GMT+03:00 Москва, стандартное время)

Запись создаем в новом разделе (раздел создан в рамках проекта)

Режим приложения - Онлайн

Использовать мобильный интерфейс V2 : да

Показать все комментарии

Добрый день. Подскажите пожалуйста как добавить возможность загружать файлы через мобильное приложение.

В академии есть инструкция для настройки embeded детали. Но мне бы хотелось сделать обычную деталь.



Спасибо

Нравится

3 комментария

Здравствуйте.

Что в Вашем понимании "обычная" деталь?

В мобильном приложении есть два типа деталей: встроенные (например, адреса, средства связи и т.д.) и стандартные (Активность в контакте и прочие, сюда же входят детали с редактируемым реестром).

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

Помимо инструкции можете также посмотреть реализацию данной детали в пакете Mobile.

Добрый день!

Такой возможности, так как не будет тогда работать функционал, который реализован специально для встроенных деталей (сделать фото и т.д.) 

Хочу отметить, что загруженные записи отображаются на страницы записи, а не на отдельной странице - http://prntscr.com/hpzz3r.

Вопрос: чем Вам не подходит встроенная деталь?

В версии bpm'online 7.11.3 добавлена возможность добавить деталь "Файлы и ссылки" в любой раздел мобильного приложения (если для аналогичного раздела деталь существует в основном интерфейсе) через мастер мобильного приложения.

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

Показать все комментарии

Добрый день.



Можно ли как то задавать значения по умолчанию для полей в мобильном приложении?

Хочется сделать предзаполнение полей  (в идеале даже не выводить их в интерфейс мобильного приложения), например заполнить "дату подачи" текущей датой, и поле "поле канал поступления" указать "мобильное приложение".



Можно ли такое сделать и если можно, то как?

Нравится

1 комментарий

Добрый день.



Для того, чтобы задать значение по умолчанию для поля при создании записи, можно использовать SDK модели:



Terrasoft.sdk.Model.setDefaultValuesFunc("НазваниеМодели", function(config) {

    var myValue = "Мобильное приложение";

    config.record.set("НазваниеКолонки", myValue);

    Ext.callback(config.success, config.scope);

});



Скрыть колонку тоже можно. Теперь используем SDK страницы:



Terrasoft.sdk.RecordPage.addColumn("НазваниеМодели", {

    name: "НазваниеКолонки", // название колонки как в объекте

    position: 0,

    hidden: true // Здесь скрывается колонка

}, "primaryColumnSet");



Значения должны записываться, несмотря на скрытость колонки.



Больше примеров можете найти в пакете Mobile в схемах MobileActivityModelConfig и MobileActivityModuleConfig соответственно.

Показать все комментарии

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

1. Можно ли использовать для детали filterMethod, как в основной версии, или каким-либо образом использовать произвольный фильтр, а не только по колонке родительской страницы?

2. Как отключить возможность добавлять, удалять и редактировать записи детали, в зависимости от значений на родительской странице?

Заранее спасибо.

Нравится

1 комментарий

Здравствуйте! 

1. Для деталей можно указывать фильтры, используя метод configure() соотв. sdk-класса:

 

Terrasoft.sdk.Details.configure("Contact", "ActivityDetailV2StandartDetail", {
   filters: Ext.create("Terrasoft.Filter", {
      type: Terrasoft.FilterTypes.Group,
      subfilters: [
         Ext.create("Terrasoft.Filter", {
            compareType: Terrasoft.ComparisonTypes.NotEqual,
            property: "Type",
            value: Terrasoft.GUID.ActivityTypeEmail
         })
      ]
   })
});

2. В целом, изменение режима работы детали делается так:

Terrasoft.sdk.Details.setChangeModes("Contact", "ActivityDetailV2StandartDetail", [Terrasoft.ChangeModes.Read]);

Но если нужно менять режим работы от условия, то для этого в контроллерах страниц есть метод getChangeModes(). Т.е. в контроллерах соотв. страниц (грида, просмотра, редактирования) нужно расширить этот метод:

 

getChangeModeOperations: function() {
   var detailConfig = this.getDetailConfig();
   if (detailConfig) {
      var parentRecord = detailConfig.parentRecord;
      if (parentRecord.get("IsNonActualEmail") === false) {
         return {
            canCreate: false,
            canUpdate: false,
            canDelete: false
         };
      }
   }
   return this.callParent(arguments);
}
Показать все комментарии

Коллеги, добрый день!

Возник вопрос, записывается ли в систему факт прохождения/нарушения верификации чек-ина?

Вот есть системная настройка "Радиус верификации чек-ина", в которой указываем, например значение "100" (метров).

На визите выполняем действие "Чек-ин", находясь к 500 метрах от контрагента. Система выдает сообщение о том, что "Верификация не пройдена. Сохранить результаты?".

Если выбрать вариант "Да", то где фиксируется так скажем "нарушение", факт того, что при выполнении действия верификация была нарушена?



Есть необходимость построить дашборд, который бы отображал количество визитов, которые не прошли верификацию (чек-ин был выполнен от контрагента дальше, чем это задано в системной настройке)

Нравится

1 комментарий

Владимир, здравствуйте!

Есть справочная колонка "Статус верификации чекина" - аналитику можно построить по ней. 

Пример описан в Академии - https://academy.terrasoft.ru/documents/sales-enterprise/7-11/kak-kontrolirovat-vypolnenie-chek-ina

Показать все комментарии

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

Заранее спасибо!

Нравится

1 комментарий

Ирина, здравствуйте!

Если мы правильно понимаем, то для обновления реестра достаточно сделать swipe-to-refresh (не открывая палец провести сверху вниз)

Показать все комментарии