Добрый день!

Спасибо за отличное расширение Email address validation connector for Creatio.

 

Есть одно замечание - в документации указано, что нужно заполнить системную настройку [Апи-ключ для валидации email] и добавить туда именно ключ API (XXXYYYAAA...). Но так работать не будет, нужно этот ключ добавить в формате:

 

Bearer XXXYYYAAA...

 

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

 

Нужно каким-то образом сделать копию пакета? Сам веб-сервисы мы уже настроили, но не можем поменять процессы данного пакета. 

Спасибо!

Нравится

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

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

Пересмотрел документацию.

Там не указано, что необходимо вписать АПИ-ключ в формате (XXXYYYAAA...).



Правильный вариант через Bearer, как Вы указали.

Подскажите, пожалуйста, где Вы нашли информацию про неправильный формат ключа?



Касательно доработки.

Тут есть два пути. Вы можете завязаться на этот пакет и унаследовать часть логики в своем пакете.

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

 

Или же Вы можете с нуля создать свою интеграцию.

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

Здравствуйте! Может кто-то решал следующую задачу?

Имеем:

- один сайт Creatio Sales + Marketing + Service 7.18.0.

- куча кабинетов Google Adwords, Google Analytics, Яндекс Директ, Яндекс Метрика

- 30+ сайтов и ещё больше лендингов, связанные с Creatio через почти коробочный функционал Лендингов, отправляя данные в Лиды.

 

Задача:

Сопоставить Лиды/Продажи с затратами на рекламу в Google и Яндекс, чтобы получить эффективность инвестиций в рекламу. Можно в сторонних Bi сервисах.

 

Проблема:

На просторах интернета в других популярных CRM такой функционал имеется. Но в нашей Creatio через Лендинги передаётся только utm метки без их отображения, только преобразованные значения в справочниках. Но в нашем случае их невозможно заполнить, так как ежедневно добавляются десятки этих тегов и их сейчас десятки тысяч комбинаций.

При анализе документации Яндекса и Гугла, этих параметров (utm меток) там нет, т.е. Я даже теоретически не могу сопоставить данные по расходам с доходами.

 

Вопрос: есть ли кто уже решал такую задачу и по каким полям вы сопоставляли данные в Google, Яндекс с Creatio? Какие доработки для этого делали в Creatio, чтобы данные передавались в Лиды для дальнейшего их сопоставления?

Нравится

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

Получали с Landing page среди прочих параметров идентификатор Google (кажется, Client id). Затем при изменении разных статусов посылали в GA информацию об этом клиенте

Владимир Соколов,

Владимир, спасибо за совет. Client Id как один из вариантов. Вы дорабатывали веб сервис лендингов, я правильно понял?

Такабаев Тимур,

Нет, нам web-разработчики просто посылали ClientId как один из параметров (на Landing'е это было скрытое поле - стандартное решение, насколько я понимаю)



У нас сейчас эта одна из задач в backlog проекта. Думаю, в конце февраля буду точно знать, как это в Creatio реализовать.

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

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

Нравится

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

Попробуйте посмотреть в таблице

select * from SysAdminUnit

where Name = 'rolename'

 

Либо, если в процессе нужно, то читать данные из "Объект администрирования"

Попробуйте посмотреть в таблице

select * from SysAdminUnit

where Name = 'rolename'

 

Либо, если в процессе нужно, то читать данные из "Объект администрирования"

Спасибо, помогло

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

Развернул сайт разработки, подключил  SSL Let's encrypt все запросы и интеграции ходят корректно, сертификат принимает. В мастере мобильного приложения зашел во все схемы и сохранил. Получаю ошибку которой не вижу в community,  может кто-то сталкивался?

Model Name: CPH2009 Platform: Android Platform Version: 11 Resolution: 360x756 IsHybridMode: true RootAppDirectory: creatio ApplicationVersion: 7.18.6 ApplicationMajorVersion: 7.18 UseNativeSynchronization: true UseNativeImport: true UseNativeExport: true UseNativeLogout: true UseNativeMetadataSync: false UseNativeFullSynchronization: false UseDataService: true IsDevMode: false CurrentDateTime: 2022-01-20T19:09:15.553Z ServerUrl: https://suncrm.space/ ContactId: null CultureName: null ApplicationRevision: null WorkplaceCode: null ProductInfo: {"ProductName":"Creatio","ProductEdition":"enterprise","CustomerId":"","Version":{"Major":7,"Minor":18,"Build":5,"Revision":1501,"MajorRevision":0,"MinorRevision":1501}} Type: Terrasoft.SyncException Message: В процессе синхронизации произошла ошибка Stack trace: Function.handleException(terrasoft-all-combined.js:26896:37) Object.callback(sencha-touch-all-debug.js:10397:26) Class.callUserErrorHandler(terrasoft-all-combined.js:21844:9) Object.callback(sencha-touch-all-debug.js:10397:26) Class.callFailure(terrasoft-all-combined.js:21503:11) Object.callback(sencha-touch-all-debug.js:10397:26) Function.failure(terrasoft-all-combined.js:36406:17) Object.callback(sencha-touch-all-debug.js:10397:26) Object.requestItemFailure(terrasoft-all-combined.js:34794:17) Class.onRequestFailure(terrasoft-all-combined.js:34602:16) Object.callback(sencha-touch-all-debug.js:10397:26) terrasoft-all-combined.js:34798:13 Object.callback(sencha-touch-all-debug.js:10397:26) Class.finish(terrasoft-all-combined.js:35206:11) Class.finishCancellableOperation(terrasoft-all-combined.js:1576:43) Class.(terrasoft-all-combined.js:34783:12) Object.callback(sencha-touch-all-debug.js:10397:26) terrasoft-all-combined.js:34961:11 Object.callback(sencha-touch-all-debug.js:10397:26) Class.finish(terrasoft-all-combined.js:35206:11) Class.finishCancellableOperation(terrasoft-all-combined.js:1576:43) Class.executeCallbackIfNotCanceled(terrasoft-all-combined.js:34960:10) Class.failureHandler(terrasoft-all-combined.js:34977:10) Object.callback(sencha-touch-all-debug.js:10397:26) Class.onComplete(sencha-touch-all-debug.js:36405:17) Class.onStateChange(sencha-touch-all-debug.js:36341:18) XMLHttpRequest.(sencha-touch-all-debug.js:3233:27) Type: Terrasoft.ServerException Message: Запрос на сервер вернул ошибку AdditionalInfo: { "requestId": 11, "status": 500 }

Нравится

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

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

После развертывания on-site версии Creatio 7.18.5 и настройки через Docker сервиса Exchange Listener появилась проблема.

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

При попытке подключения к почтовому ящику в логах docker  выдаёт ошибку

 

[ExchangeListener.Service.ServiceFactory] 2022-01-20 12:36:34,447 [12] INFO : [e24a41bc-2438-4c4b-bad9-a112626a7c22] [teachersimulatorfeedback@gmail.com] Successfully loaded EmailMessage MessageId = '<c4e850d7-aa3a-4268-96b3-f3014b1e4e6f@gmail.com>', Id = '<c4e850d7-aa3a-4268-96b3-f3014b1e4e6f@gmail.com>', Subject = 'Тестовое сообщение Creatio'.
 
[ListenerBase.DataSend.EventDataSender] 2022-01-20 12:36:34,447 [12] INFO : [e24a41bc-2438-4c4b-bad9-a112626a7c22] [teachersimulatorfeedback@gmail.com] EventDataSender send 100 bytes to http://localhost:83/0/ServiceModel/ExchangeListenerService.svc/ProcessBinarySerializedEmail
 
[ListenerBase.Email.Load.BaseEmailEventProcessor] 2022-01-20 12:36:34,449 [5] ERROR: [e24a41bc-2438-4c4b-bad9-a112626a7c22] Mailbox teachersimulatorfeedback@gmail.com: error sending emails ['12' in folder INBOX] to http://localhost:83/0/ServiceModel/ExchangeListenerService.svc/NewEmail.
 
System.Net.Http.HttpRequestException: Cannot assign requested address
 
 ---> System.Net.Sockets.SocketException (99): Cannot assign requested address
 
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
 
   --- End of inner exception stack trace ---

Выглядит, как будто доступ к ящику есть (видит темы писем), но не может передать их в Creatio.

Окно проверки email-сервисов показывает все зеленые галочки, тестовые емэил высылаются.

 

Нравится

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

Владимир, добрый день! 



Запись "Cannot assign requested address" говорит о том, что микросервис Exchange Listener не имеет доступа к серверу приложений. Вам необходимо проверить значение системной настройки "BpmonlineExchangeEventsEndpointUrl". Для корректного получения почты в адресе настройки должно быть указано доменное имя сайта или Ip. Если Вы указали в адресе "localhost", загрузка писем не будет проходить.

Владимир, добрый день! 



Запись "Cannot assign requested address" говорит о том, что микросервис Exchange Listener не имеет доступа к серверу приложений. Вам необходимо проверить значение системной настройки "BpmonlineExchangeEventsEndpointUrl". Для корректного получения почты в адресе настройки должно быть указано доменное имя сайта или Ip. Если Вы указали в адресе "localhost", загрузка писем не будет проходить.

Lev Kuptsov,

Письма начали загружаться после замены localhost на реальный ip. Спасибо!

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

Добрый день

 

Кто-то вчера удалил продукт из справочника. Как его можно восстановить? Потому что удален вместе со связанными записями. 

Нравится

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

Мы банально восстанавливали удалённые записи с помощью Insert into ... from select ...



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

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

Есть страница, которую создали в бп(преднастроенная страница). Как в в коде открыть ее не через БП?

Запуск страницы происходит из модуля групп. 

Нравится

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

ищите на community по кодовому слому openCardInChain

Владимир Соколов,

openCardInChain - нет в модуле групп, меня скорее интересует каким модулем можно прорисовать мою карточку в renderTo: "centerPanel"

Виталий, добрый день!

Если вам не поможет openCardInChain, то можно попробовать использовать this.sandbox.loadModule().

Загрузка модулей через this.sandbox.loadModule() предусматривает использование метода initSchemaName (его реализацию можно найти в baseSchemaModule).

В этом методе можно увидеть, как берётся название страницы, что рендерится в модуле. Однако, можно напрямую задать страницу для рендера, пример этого есть в схеме CtiPanelModule где переопределён метод initSchemaName.

Можно написать свой модуль по примеру CtiPanelModule, где также переопределить метод initSchemaName куда передать нужную вам схему.

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

Добрый день

В чем может быть проблема? На локально развёрнутую систему не получается установить пакет из SVN.

При установке появляется ошибка "Working copy 'PACKAGE_NAME' locked."

Если попробовать установить в тестовой облачной среде то всё хорошо, всё устанавливается.

Другие пакеты устанавливаются на локалку без проблем

Нравится

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

Чеботов Никита, добрый день!

Проверьте, что пакет разблокирован в базе данных, то есть InstallType = 0 и Maintainer пакета совпадает с Maintainer в системе.



Также, возможно, поможет очистка папки рабочей копии, находящейся по пути прописанном в ConnectionStrings.config в секции "defPackagesWorkingCopyPath".

%TEMP%\%APPLICATION%\%APPPOOLIDENTITY%\%WORKSPACE%\TerrasoftPackages

Пример на веб сервере:\Windows\Temp\<номер сайта>\<пользователь IIS>\Default\TerrasoftPackages

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

Добрый день! 

Не запускается БП по таймеру. В планировщике нет соответствущей записи с БП. Что могло случиться?

Нравится

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

Добрый день, Руслан.

Точную причину выяснить будет проблематично, триггер могли удалить вручную, либо произошёл какой-то сбой при активации/деактивации процесса. Также может быть такое, что БП переносили пакетом, а триггер вместе с процессом в этом случае не был перенесён.

 

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

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

Есть 2 статуса воронки, мне нужно посчитать в поле сколько дней прошло с момента перехода с статуса 1 в статус 2

Сделал 2 поля, в 1е пишут дату перехода в 1й статус, в 2е пишут дату перехода в 2й статус

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

Прошу подсказать как сделать, желательно пример

Нравится

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

Если в бизнес-процессе, то формула примерно такая:



([#Date2#]-[#Date1#]).TotalDays

Если же у вас в формате DateTime, тогда 

([#DateTime2#].Date-[#DateTime1#].Date).TotalDays

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