Всем привет!

Кто-нибудь может подсказать как организована версионность бизнес-процессов в старых версиях (BPMonline 7.2)? В новых версиях есть галочка актуальная версия (как я понимаю, есть таблица, где хранится указатель на текущую версию БП). В версии 7.2. такой галочки не нашел, и судя по всему таблицы с указателем тоже нет. Как система определяет какая из версий является актуальной и как безопасно удалить неактуальные версии?

Заранее спасибо за ответы.

Нравится

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

Добрый день,  Дмитрий!



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

Анна Журавель,

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

П.С.: У меня есть ощущение, что в моей системе запускается последний измененный процесс.

Тёскин Дмитрий Валерьевич,

Да, все верно. Будет запущен последний измененный процесс.

Часто сталкиваемся со случайно созданными новыми версиями Бизнес-процессов. Удаление новых версий недоступно из меню (можно удалить только самую первую версию вместе со всеми новыми версиями). Вопрос: можно ли как-то в версии 7.2 удалить случайно созданную новую версию БП через БД? 

Тёскин Дмитрий Валерьевич,

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

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

Коллеги, возник вопрос. Есть ли возможность у bpm'online 7.11.3 защита от фишинга, ввода многократного пароля, брутфорса? Если да, то каким образом это можно настроить? На академии и в документации ничего подобного не нашёл.

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

Нравится

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

Добрый день, Роман.

Для защиты от фишинга мы используем AntiCSRF token.

Для защиты от  Brute-Force Attack используем политику блокировки пользователя при неуспешных попытках входа. В BPM есть системная настройка [Количество попыток входа] - она отвечает за временную блокировку учетной записи при попытке подбора пароля

Дополнительно Вы можете настроить в системе ограничение по IP.

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

Всем привет!

В более новых версиях иногда удобно использовать автогенирируемую страницу для отладки какого-нибудь бизнес-процесса (чтобы показать промежуточный результат в поле). Кто знает как в версии 7.2  прокинуть результат в показываемое поле? Похоже там нет такой опции...

Или может кто-то подскажет другой способ отладки бизнес-процессов и кода в них?

Заранее спасибо за ответ.

 

Нравится

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

В старых версиях был компилируемый движок процессов. Их можно было отладить в Visual Studio как один сs-файл, куда процесс со всеми элементами и переходами в итоге компилировался. Но такое подходит только для on site и не для всех версий.

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

Зверев Александр,

Александр, спасибо за ответ. Уже сделал через запись в объект, так как другого варианта не нашел. 

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

Симптомы

Кейс воспроизведения:

1) открыть задачу в расписании, на детали "Связи" которой заполнен лид, счет, проект и т.д.;

2) перейти по гиперссылке в карточку связанного объекта;

3) открыть вкладку "История" и деталь "Активности";

4) добавить на деталь новую задачу.

В результате получаем ошибку в консоли с сообщением: 

message: Cannot read property 'replaceCls' of null.

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

Причина

Происходит это из-за того, что в ActivitySectionV2 перекрыт метод openCardInChain следующим образом:

openCardInChain: function(config) {
   if (this.isSchedulerDataView() && (config.operation === ConfigurationEnums.CardStateV2.ADD)) {
      var historyStateInfo = this.getHistoryStateInfo();
      if (historyStateInfo.workAreaMode === ConfigurationEnums.WorkAreaMode.COMBINED) {
         this.closeCard();
      }
   }
   return this.callParent(arguments);
},

Этот код присутствует начиная с версии 7.3.0.

Решение

В версии 7.7.0 данное поведение должно быть исправлено.

Для быстрого исправления в конфигурации необходимо заместить схему ActivitySectionV2 и переопределить в ней метод openCardInChain так:

openCardInChain: function(config) {
   if (config.isLinkClick) {
      return false;
   }
   this.saveCardScroll();
   this.scrollCardTop();
   this.showBodyMask();
   var historyState = this.sandbox.publish("GetHistoryState");
   var stateObj = config.stateObj || {
            isSeparateMode: config.isSeparateMode || true,
            schemaName: config.schemaName,
            entitySchemaName: config.entitySchemaName,
            operation: config.action || config.operation,
            primaryColumnValue: config.id,
            valuePairs: config.defaultValues,
            isInChain: true
 };
   this.sandbox.publish("PushHistoryState", {
      hash: historyState.hash.historyState,
      silent: config.silent,
      stateObj: stateObj
   });
   var moduleName = config.moduleName || "CardModuleV2";
   var moduleParams = {
      renderTo: config.renderTo || this.renderTo,
      id: config.moduleId,
      keepAlive: (config.keepAlive !== false)
   };
   var instanceConfig = config.instanceConfig;
   if (instanceConfig) {
      this.Ext.apply(moduleParams, {
         instanceConfig: instanceConfig
 });
   }
   this.sandbox.loadModule(moduleName, moduleParams);
   return true;
}

 

Нравится

Поделиться

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

Коллеги, здравствуйте!

Возник вопрос: Как скрыть базовую цену продукта и оставить только для руководителей? 

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

Нравится

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

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

Учтите, что если на значение поля завязана какая-то логика, она может начать работать неправильно из-за отсутствия доступа. Лучше сначала проверить на тесте, допустимо ли такое разграничение прав.

Зверев Александр,

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

Можно раздать права доступа по записям на объект справочника. Но это как раз не поможет, поскольку первичное поле записи (то есть название) видится независимо от наличия прав.

Разве что прикрутить на уровне карточки фильтрацию на справочное поле.

Зверев Александр, а каким образом можно установить фильтрацию на справочник?

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

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

Было бы неплохо реализовать функционал удаления сущностей из СРМ и всех связанных с ней  записями через API. Данный функционал был бы актуален в связи с нововведениями GDPR 2018 - https://www.eugdpr.org/key-changes.html

Например из системы которая интегрирована с СРМ удаляется пользователь в срм уходит запрос на удаление Контакта и всех связанных с ним записей 

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

Добрый день, Алексей!



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

А не достаточно ли удалить его персональные данные? Или просто обезличить его, не удаляя активности, продажи и прочее, что влияет не только на Privacy, но и на KPI сотрудников, например?

Добавлю, что обычно в случае интеграции предпочтительнее ставить признак "Удален"/"Не актуален", с сохранением данных (естественно кроме персональных в связи с GDPR) + связанных объектов (задачи, заказы и т.д.)

Добрый день. На Marketplace есть партнерское решение по обезличиванию персональных данных, этого достаточно для выполнения обязательство по GDPR. Посмотрите этот пакет: https://marketplace.bpmonline.com/app/gdpr-compliance-toolkit

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

Всем доброго времени суток!

Нужна Ваша помощь.

Развернул приложение на локальном ПК v7.12

Сайт запускается. но когда аутентифицируюсь в консоли выбивает ошибки:

http://prntscr.com/jav3ap

 

Во вложении так же логи ошибок.

Подскажите, что может быть не так?

Благодарю!

Прикрепленные файлы

Нравится

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

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

Запросите в поддержке "чистые" бинарные файлы 7.12.0.2702-sales-enterprise-marketing-service-enterprise-en и разверните приложение на них. Ранее полученные файлы с облачного приложения отличаются от коробочных, вследствие чего возникает указанная ошибка.

Сергей Кy6риш,

Здравствуйте! Так мне необходима именно данная сборка для доработки функционала и дебага. Ранее разворачивал 7.11.3 данных ошибок не было.

 

Нигрескул Алексей,

У вас и будет именно ваша сборка для доработок и дебаггинга, все что вам нужно хранится в вашей БД.

А чтобы не было ошибки, которая у вас появляется, необходимо развернуть коробочную версию. Могу дать вам ссылку на бинарные файлы, установив которые, сможете работать. Для этого подскажите, что у вас, Тим, Сейлс или другой тип и т.д.

Литвинко Павел,

здравствуйте. У меня SalesEnterprise + Marketing

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

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

Добрый день, коллеги.

Прошу поделиться опытом по следующим вопросам:

1. Как корректно привязать в данные пакета признак актуальности версии БП (На данный момент делаю через insert в таблицу SysSchemaProperties)?

2. Как корректно привязать в данные пакета признак активности кейса раздела (На данный момент Update записи в SysSchemaUserProperty)?

3. Как корректно отключить БП и привязать в данные пакета этот признак (На данный момент Insert в SysProcessDisabled) 

Нравится

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

Добрый день.

Настроил в профиле пользователя синхронизацию с почтовым ящиком.

Прикрепил данные таблицы MailboxSyncSettings к пакету.

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

На отправку email всё работает.

Нравится

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

Здравствуйте, Игорь!

Перенести настройки почтовых ящиков через привязку к пакету не получится. При добавлении почтового ящика происходит вычитка папок и добавления их в таблицы MailboxFoldersCorrespondence, ActivityFolder и другие. Также происходит раздача необходимых прав и добавление триггеров синхронизации.

Показать все комментарии
Идея
Одобрена

Добрый день.

Возникла идея группировать отчеты по каким-то общим признакам. К примеру, у меня есть продажи по брендам, регионам, отдельным представителям и т.д. и все они выглядят по-разному. Т.е. мне надо сделать N отчетов. И все неплохо, когда таких групп одна-две. Но когда отчетов становится много, то длинный список весьма неудобен. Поэтому предлагаю создавать сабменю для таких отчетов с общим признаком.

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

Максим, здравствуйте!

Благодарим за идею, мы передали ее аналитикам продукта для рассмотрения. Возможно, она будет реализована в последующих релизах.

Спасибо, что помогаете улучшать наши продукты!

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