Доброго дня,

Creatio має вбудований функціонал, який розрізняє основні проекти і під-проекти (робота) і відкриває для них різні сторінки редагування з різними схемами, як сказано тут:

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

Питання, чи можна зробити так, щоб і для робота і проект використовували однакову схему.

Нравится

1 комментарий
Лучший ответ

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

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

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

При добавлении или редактировании концертной программы для случая, если она ежедневная, выполнять проверку: если в результате изменений общее число активных ежедневных программ в системе будет превышать значение 3 UsrSysSetingMaxNumberActiveDailyPrograms - системная настройка то выводить сообщение об ошибке

Способ реализации:

обработчики в коде JavaScript страницы редактирования с применением клиентского ESQ и механизма валидации.

Нравится

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

Илья, реализовать вашу логику можно несколькими вариантами. 

1) Использовать бизнес-процесс при изменении объекта концертной программы. Внутри него вы будете считать количество програм с нужным условием и если оно превышает три, то выполняете необходимую вам логику.

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

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

Коллеги, приветствую.



Нужно реализовать уведомление пользователю, что через 2 часа срок разрешения обращения закончится.

 

2 часа (120 минут) буду зашивать в системную настройку (чтобы можно было варьировать админу)

 

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

далее, из записи вычитаю поле "время разрешения" (тип поля - дата/время) и тут главная загвозка.... как мне высчитать, что обращение должно разрешиться через 2 часа (120 минут)?

 

если должно решиться больше 2 часов - пропустить запись

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

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



из идей:

  1. пробовать преобразовать поле с помощью формул .TotalHours/.TotalMinutes в часы/минуты и сравнивать..
  2. попробовать с помощью формул .AddMinutes(), .AddHours() добавить настройке "текущее время и дата" значение системной настройки и сравнить...

в общем, буду рада советом, а сама пошла пока пробовать :) 

Нравится

3 комментария
Лучший ответ

Aleksei Efimenko, 

я прибегла к другому решению:

  • сделала системную настройку, которая хранит значение за сколько нужно уведомление (в минутах)
  • сделала 2 параметра: 

Параметр 1: [#Системная переменная.Текущее значение времени#]. AddMinutes([число из системной настройки])

Параметр 2: параметр 1. AddMinutes(59) - чтобы получился час

 

  • и развела условными потоками:

1. если время разрешение больше моих параметров или меньше - проскакиваю

2. если время разрешение попадает в промежуток параметров - высылаю уведомление

Создаю новое поле - Reminding time. И его сравниваю.

 

Ещё процессы, которые его заполняют. И поле с временем, когда уведомление было отправлено. Это позволит избежать ситуации, когда таймер не сработает, например. Надо всего лишь выбирать те, у которых время уведомления прошло, но уведомление не было отправлено

Александра Дубс, подскажите, решило ли вашу задачу предоставленное решение от Владимира?

Aleksei Efimenko, 

я прибегла к другому решению:

  • сделала системную настройку, которая хранит значение за сколько нужно уведомление (в минутах)
  • сделала 2 параметра: 

Параметр 1: [#Системная переменная.Текущее значение времени#]. AddMinutes([число из системной настройки])

Параметр 2: параметр 1. AddMinutes(59) - чтобы получился час

 

  • и развела условными потоками:

1. если время разрешение больше моих параметров или меньше - проскакиваю

2. если время разрешение попадает в промежуток параметров - высылаю уведомление

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

Добрый день!

Автогенерируемая страница работает в фоновом режиме без возможности переключения.

При этом тех настроек которые указываются на Академии (кнопки переключения в фоновый режим) просто нет, причем в расширенном режиме таких настроек нет, и хоть в параметрах есть "Показывать страницу выполнения автоматически" в данном случае не работает. Тогда как по бизнес процессу данная страница должна открываться пользователю автоматически а не уходить в задачи по бизнес процессам. Уже все перепробовал, и пересмотрел все элементы но возможности отключить работу в фоновом режиме нигде не нашел 

Можете подсказать как сделать так чтоб, страница открывалась пользователям автоматически?

 

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

Нравится

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

Попробуйте через элемент "привязать процесс к объекту" связать объект в котором должна отображаться автогенерируемая страница (например Продажа) и процесс. В таком случае она будет отображаться автоматом, на сколько помню

Связь в процессах делается сразу, так что это не помогает

Кажется, она не показывается автоматически, если процесс запускается из дизайнера или если в данный момент какая-то страница находится в режиме редактирования

А у вас процесс в фон не уходит? 

 

Виктор Корниенко,

Рекомендую проверить ещё следующее:

1. Элемент автогенерируемой страницы не должен начинаться после элемента таймера, так как элемент таймера переводит работу БП в фоновый режим.

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

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

Добрый день. 

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

Нравится

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

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

Ошибка "Рассылка находится в активном статусе. Функция сохранения отключена" возникает в том случае, если в момент повторного сохранения шаблона, рассылка была запущена, активна, либо выполнена.



Просьба перепроверить эту информацию. При необходимости править шаблон — сделайте копию рассылку.

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

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

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

Нравится

1 комментарий
Лучший ответ

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

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

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

Добрый день! Как можно поставить активный линк (тек. Запись объекта) в элементе "Вопрос пользователю". 

В БП использую элемент "Вопрос пользователю" В БП на входе есть параметр (ID тек. записи), Как сделать чтобы при отображении вопроса пользователю был линк на  (ID тек. записи). 

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

Нравится

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

Tigran Gevorgyan, добрый день!

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

Sorotiuk Anna, добрый день!

Решил проблему иначе ) Создал БП на основе системного БП, (Отправка уведомлений с раздела обратная связь ). теперь тек запись отправляется пользователю как информация  со ссылкой .

 

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

Добрый День,

Коллеги,

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

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

Таких объектов в базе 92 штуки:

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

Почему в этих объектах не используется один кластерный индекс? Как безболезненно можно их изменить и не сломать базу? 

Нравится

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

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

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

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

Алёна Доля,

понятно что добавление нового проще, но не согласен, что оно решает проблему.  Почему выбрали не замену первичного ключа на кластеризованный? Так при вставке нужно добавлять записи в 2 индекса вместо одного, что наоборот усложняет работу.

Andrei Korab,

Ранее мы проводили исследования блокировок (long-lock) и пришли к решению использования повсеместно во всех таблицах кластерных индексов в качестве первичных констрейнтов. Но если в таблице присутствуют blob-колонки, то лучшим для производительности будет решение использовать некластеризированный первичный констрейнт с внешним кластеризированным индексом по первичному ключу. Например, как в таблице Account.

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



1) "Почему в этих объектах не используется один кластерный индекс? Как безболезненно можно их изменить и не сломать базу?" - в определенный момент создали дополнительный кластерный ключ для ряда таблиц для избежание блокировок при определенных операциях. Убирать или изменять их не стоит, в таком случае мы не гарантируем корректность работы системы. 

2) "Почему выбрали не замену первичного ключа на кластеризованный? Так при вставке нужно добавлять записи в 2 индекса вместо одного, что наоборот усложняет работу." - да, но это не только замедляет но и помогает. Именно такой набор индексов и выбор первичного ключа показали наилучший результат в среднем по всем кейсам.

Алёна, спасибо за ответ.

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

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

Нравится

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

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

 

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

 

Готовых скриптов по решению этой задачи также нет.

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

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

Вопрос. 

Есть группа "офисные сотрудники"

Необходимо при создании нового пользователя в этой группе у нового контакта изменять  поле контрагент на определенного контрагента.

Пользователи создаются не  в ручную. Они попадают в эту группу через ADFS.

Можно конечно использовать атрибут SAML, но  поле организация на строное AD  заполнена другими данными, которые убирать не стоит.

Мне нужно что бы в Creatio  контрагент проставлялся.

Можно это через БП ?

Я так прикинул, что стартовый сигнал должен быть - создание новой записи в объекте "Вхождение пользователя в роли" в фильтре роль "офисные сотрудники"

Но вот как быть дальше? я пробовал создать бд, но контрагент не проставляется.

Можете подсказать?

Нравится

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

Добрый день, Марк. 

Изменять контрагента в карточке контакта можно через БП.

Как настроить стартовый сигнал для данного кейса - зависит от условий создания данных контактов. Главное - чтобы триггер отрабатывал при выполнении условий. 



Изменить информацию о контрагенте можно с помощью элемента БП "Изменить данные". Важно корректно указать Id Контакта, по которому будет отрабатывать данный элемент. Это можно сделать через привязку параметра к Id, по которому запускается БП. 



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

 

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