Добрый день,

в настройках показателей существует настройка "Точност десятичной части". Но при этом у нас ни один показатель не считается с долями, округляется до целого числа.

Подскажите, в чем может быть проблема ? Изображение удалено.

Нравится

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

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

Проблема в том, что результат расчета среднего числа отображается в зависимости от того, какой тип колонки используется в расчетах. Поле "Длительность" в объекте "Звонок" имеет тип данных «Целое», поэтому и округляется до целого. Это связано с архитектурой БД и логикой, которая вшита в ядро приложения. Департамент разработки зафиксировал у себя задачу, чтобы пересмотреть базовую логику приложения и возможно изменить ее в будущих версиях приложения. Приносим извинения за причиненные неудобства.

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

Добрый день!

Разместили на портале свой кастомный раздел. Хотим сделать функционал как в обращениях для публикации сообщений на порталеИзображение удалено.

 

Аналогичная кнопка на портале.

 

Нет ли каких-либо инструкций как это сделать?

Реализуемо ли это вообще в том плане, что нет ли ограничений со стороны системы/по лицензиям на такие действия, так как работа идет с порталом, а там функционал ограничен?

Нравится

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

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

Ниже ключевые схемы и логика реализации портальных сообщений:

В схеме CasePage добавляется ActionsDashboardModule, реализация которого находится в схеме CaseSectionActionsDashboard.

В схеме CaseSectionActionsDashboard добавляется кнопка портального сообщения PortalMessageModule.

Открытие окна сообщения по клику на глобус реализовано в методе onMessageModuleRendered в схеме SectionActionsDashboardActionsDashboard.

Кнопка Опубликовать добавляется в PublishButtonContainer в схеме BaseMessagePublisherPage.

Обработка нажатия на кнопку Опубликовать - метод onPublishButtonClick.

 

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

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

 

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

Добрый день. При удалении контрагента "Наша компания" перестали создаваться счета. Выяснилось что проблема заключается в наличии в таблице Invoice поля SupplierId которое всегда содержит ID удалённого контрагента "Наша компания". В самой карточке счёта это поле не отображается, не видно его и через мастер раздела.

В схеме InvoicePageV2 нигде не фигурирует SupplierId, операция remove также не помогает.

Подскажите, где в конфигурации нужно внести изменения чтобы решить эту проблему

Нравится

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

Иван, вы можете изменить свойство "Значение по умолчанию" у этого поля в объекте через конфигурацию.

Однако, насколько мне известно, удаление контрагента "Наша компания" является не очень хорошей практикой и может повлиять и на другой функционал системы.

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

Есть где то манул по том как работать с Google Maps?

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

В инете есть некоторые примеры, но как их связать с BPM я нигде не видел(

Нравится

5 комментариев

Еще советую поинтересоваться вопросом лицензирования Google maps при использовании в коммерческих целях

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

Здравствуйте, Виталий

К сожалению у нас нет интеграции с данным сервисом как и нет примеров реализации самой интеграции.

Я передал Ваше пожелание аналитикам продукта на рассмотрение актуальности и возможности интеграции данного сервиса в будущих версиях приложения.

В чем Ваша проблема, чтобы связать с bpm? Вам нужно создать контейнер и указать в скрипте его id. Чтобы создать контейнер div, добавляете в diff схемы обычный контейнер, а скрипты из CDN можно грузить используя ajax или любой другой способ на Ваше усмотрение.

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

  • Добавьте jQuery в зависимости
    define("MyPage", ["jQuery"],
        function (){

     

  • Вставьте контейнер на страницу

     

    {
       "operation": "insert",
       "name": "GMaps",
       "values": {
           "itemType": Terrasoft.ViewItemType.CONTAINER,
           "id": "googleMap",
           "styles": {
               "height": "200px"
           },
           "items": []
       },
       "parentName": "LeftModulesContainer",
       "propertyName": "items",
    }

     

  • В зависимости от того, куда вставляем карты, определить в функции срипт отрисовки карты

     

    onRender: function () {
        this.callParent(arguments);
     
        // Функция отрисовки карты гугл, после того как загрузится скрипт
        window.initMap = function() {
            var map = new google.maps.Map(document.getElementById('googleMap'), {
                center: {lat: 55.800287, lng: 49.105937},
                zoom: 8
            });
        };
     
        // загружаем скрипт с сайта гугл (необходимо получить ключ приложения)
        $.ajax({
            url: "https://maps.googleapis.com/maps/api/js?key=Ключ_Приложения_Гугл&callback=initMap",
                dataType: "script"
          });
    },

     

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

Добрый день.

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

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

В профиле пользователя, от которого произведен логин в мобильное приложение +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 : да

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

Добрый день!



Посоветуйте, как добавить параметры в активность, которая создается автоматически при шаге процесса Edit page?

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

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

Нравится

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

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

 

В расширенных настройках элемента [Открыть страницу редактирования] отображаются связи активности и служебные параметры. Самый простой способ добавить связь активности с другим разделом – включить в этом разделе кейс менеджмент. Добавить дополнительные параметры колонки активности (текстовые/булевые …) в элемент не получится, в таком случае нужно создавать новый элемент.

Кроме того не рекомендую работать со служебной активностью (которая создается при выполнении элемента) как с обычной. На нее завязана дополнительная логика в системе, это может привести к нарушению пользовательской бизнес-логики.

Зарицкий Олег пишет:

Кроме того не рекомендую работать со служебной активностью (которая создается при выполнении элемента) как с обычной. На нее завязана дополнительная логика в системе, это может привести к нарушению пользовательской бизнес-логики.

К сожалению, эта активность показывается в реестре вместе со всеми активностями, как обычная. И очень нелогично, когда половина параметров у нее будет пустая...



 

А как можно поменять права доступа на эту служебную активность (с помощью БП), чтобы она не была видна тем, кому нельзя?

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

 

Id служебной активности хранится в параметре элемента “Уникальный идентификатор активности”.

Если процесс компилируемый можно обработать запись в параллельной ветке (с небольшой задержкой).

Можно привязать эту активность к какой-нибудь сущности (через расширенные настройки) и в реестре отфильтровать все записи по этой сущности. Это связь будет условным признаком по которому можно выполнить фильтрацию.

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

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

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



Спасибо

Нравится

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

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

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

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

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

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

Добрый день!

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

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

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

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

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

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

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

 

Взял bpm'online Studio для тренировок и решения гипотетической задачи.

Задача простая: использовать раздел Accounts для хранения псевдо-разных сущностей, но таким образом, что мои новые типы account имели собственные страницы редактирования.

 

Я понимаю, что можно было бы просто переопределить стандартную страницу AccountPageV2, настрогать несколько разных табов и сделать отображение нужных табов в зависимости от типа аккаунта. На самом деле, это довольно муторное занятие и страница начинает дико раздуваться.

Но захотелось посмотреть на функционал Multiple pages и сначала подумал, что это именно то, что нужно. НО! Как сделать так, чтобы для всех остальных типов, кроме одного, открывалась бы стандартная форма AccountPageV2? Условно говоря, для аккаунта с типом Customer была своя страница редактирования UsrAccount1Page, а для всех остальных (Our company, Partner, etc.) использовалась AccountPageV2.

Второй вопрос. Вот я "поигрался" с настройками этих страниц, мне визарды понасоздавали тьму схем и данных. Теперь я решил, что хочу откатить к стандартному поведению одной страницы. Даже если удалить все схемы и привязку данных к пакету, понятно, что это не вернет значений в БД. Так вот, как же вернуть эти значения и где именно?

Нравится

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

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

Совершенно верно :) 

Артем Гура,

А есть какое-то универсальное решение по второму вопросу?

 

К сожалению на данный момент нет. У нас зарегистрирована такая функциональность на следующие релизы

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

Помогите пожалуйста

В разделе "Контрагенты", перестала открывается страница "Клиенты".

При попытке войти в карточку записи типа "Клиент" или при открытии мастера разделов по странице "Клиенты". Страница зависает и выводится ошибка:

ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:1681 Uncaught TypeError: viewModel.getColumnByName is not a function
    at i.findViewModelColumn (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:1681)
    at i.generateControlLabel (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:1599)
    at i.generateModelItemLabel (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:1451)
    at i.generateModelItem (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:1470)
    at i.generateStandardItem (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:574)
    at i.generateItem (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:461)
    at i.generateGridLayoutItem (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:697)
    at i.<anonymous> (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:672)
    at Object.Terrasoft.utils.array.each (all-combined.js:262)
    at i.generateGridLayout (ViewGeneratorV2.js?hash=348b01047b31481ca08cae6d1c7bf538:668)

 

Перегенерация и перекомпиляция непомогает.

Версия системы не обновлялась в последнее время

Нравится

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

зачистку redis с остановкой и повторным запуском application pool делали?

Максим Цынгаев,

Нет, это не дает никакого результата

Роман, судя по callstack'у ошибка либо в клиентской схеме этой страницы, либо же некорректна замещена ViewModel. Тут нужна отладка, рекомендуем обратиться в официальную поддержку support@terrasoft.ru с указанием проблемного сайта.

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

Всем добрый день.

Кастомизировал стандартный механизм связей, добавив справочное поле "Дебитор"

https://community.terrasoft.ru/questions/dobavlenie-svoego-pola-v-statn…

Вроде все работает:

Но по умолчанию в момент открытия миникарточки, элемент "связи" выводит только два поля: "Контрагент" и "Продажа". У меня задача вывести еще сюда поле "Дебитор".

Собственно искал соответсвующие методы  в обьектах:

EntityConnectionLinksUtilities  и ActivityMiniPage

Но че-то не нашел(  Может кто сталкивался?

 

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

Нравится

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

Здравствуйте, Роман!

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

1. Необходимо узнать Uid колонки «ActivityConnection» (колонка привязка активностей) в объекте «Activity» (для дальнейших действий). Узнать можно через метаданные (Рис. 2). Uid является уникальным.

 

Рис. 1

2. Далее необходимо добавить запись в таблицу «EntityConnection» с помощью команды INSERT INTO, где SysEntitySchemaUId = '2bbd4d7c-2727-47d6-bde1-311fdbbbb97e' (это ID схемы активностей) и ColumnUId = Uid колонки, который я описал во 1 пункте (например, '2bbd4d7c-2727-47d6-bde1-311fdbbbb97e').

 

Пример SQL запроса:

Insert into EntityConnection (SysEntitySchemaUId, ColumnUId)&nbsp;values ('C449D832-A4CC-4B01-B9D5-8A12C42A9F89',&nbsp;'2bbd4d7c-2727-47d6-bde1-311fdbbbb97e')

 

3. Затем заместить схему «EmailPageV2» и вставить метод «setAdditionalDefValues» (Рис. 2).

 

 

Рис. 2

 

setAdditionalDefValues:&nbsp;function(openCardConfig, next) {

&nbsp;&nbsp;&nbsp;&nbsp;openCardConfig.defaultValues.push({

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name:&nbsp;"ActivityConnection",

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value:&nbsp;this.get("Id")

&nbsp;&nbsp;&nbsp;&nbsp;});

&nbsp;&nbsp;&nbsp;&nbsp;next();

}

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