Добрый день, имеется лендинг работающий как отдельный сайт в IIS, идея в том чтобы в выпадающий список попадали данные из справочника в Creatio. Подскажите, как это можно реализовать?

Нравится

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

С созданием контактов в Creatio через Лэндинг разобрались, но как достать из справочника не понимаю)

В целом это описано в статье.

https://academy.terrasoft.ru/docs/user/instrumenty_crm/lendingi_i_web_f…

 

Но выпадающий список со значениями и id нужно генерировать на стороне лендинга. Если список справочных значений не меняется со временем, то это можно захардкодить. Если меняется, но редко, то лучше синхронизировать базу сайта и справочник creatio. Опять же при наличии бд на сайте. И потом из базы генерировать "код" со значениями. Третий вариант, через веб сервис/или odata каждый раз считывать значения справочника и генерировать на стороне лендинга список

Трефилов Павел Сергеевич,Спасибо, мы пробовали захардкодить но данными обязательное Контрагент поле все равно не заполняется, можно ли как-то побороть при отправке данных с лендинга? Через БП после создания не хотелось бы делать

Тут наверное делать поле "контрагент" необязательным на уровне объекта. Параллельно создавать текстовое поле контрагент, и процессом после создания пытаться искать (или создавать) контрагента по каким-то критериям. Например, если лендинг с типом "форма регистрации контакта", то там есть процесс по "поиску и созданию контакта", можно в него встроить логику с контрагентом, там доп поле на объекте создавать не нужно, его можно брать из веб формы.

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

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

В рамках интеграции C#-приложения (.Net 5.0) с Creatio (7.15.4) пытаюсь настроить создание сущности "Обращение" ("Case") с помощью протокола OData 4 и через передачу параметров. Сущность создается ,но часть из переданных параметров игнорируется, хотя  GUID указан верный.

Пример POST запроса из Postman и ответа от сервиса (значение для CgrCommunicationTypeId установлено некорректное)

 

Возможно кто-то сталкивался с подобной проблемой и знает куда копать, буду благодарен за любую помощь. Поиск не помог :(

Нравится

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

Здравствуйте, попробуйте на уровне интерфейса или БД изменить/установить значение колонки.
Если выполнять запрос на обновление, то колонка изменит значение?

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

Приветствую. Как в запросе Odata вывести тип поля. Делаю расширение поля через $expand и требуется в секции $select вывести тип этого значения. Такое возможно?

Нравится

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

Роман, в данной статье ( https://academy.terrasoft.ru/docs/developer/integrations_and_api/data_s… ) , в разделе "Заголовки запроса" есть информация которая будет вам полезна.

Роман, в данной статье ( https://academy.terrasoft.ru/docs/developer/integrations_and_api/data_s… ) , в разделе "Заголовки запроса" есть информация которая будет вам полезна.

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

Добрый день. При обращении к API по url /0/ServiceModel/EntityDataService.svc/$metadata или другим url. Выдает ошибку Internal Server Error. Unable to find property 'ITdsToday' on type 'Terrasoft.Configuration.Case'. Please make sure that the property name is correct.

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

Нравится

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

Добрый день.

Уточните следующею информацию:
1) Тело запроса
2) Скрин настроек колонки ITdsToday в объекте Case.
3) Какие другие url возвращают такую ошибку?

 

Mykhailo Storozhuk,

1)В тело пустое кидаем.

2)В БД есть столбец, но в конфигураторе у пакета Case в объекте Case нет такого св-ва.
3)Например /0/ServiceModel/EntityDataService.svc/CaseCollection или /0/ServiceModel/EntityDataService.svc/ContactCollection 

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

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

Mykhailo Storozhuk,

Запустили компиляцию, выдает Внутренняя ошибка компилятора (код ошибки: 1) В чем может быть причина?

Уточните версию приложения. 

Mykhailo Storozhuk,

Service Creatio Enterprise 7.12.2

Dmitriy Doronin,

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

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

Привет коллегам. Не уверен, что сюда пишут с подобным запросом, но задача стоит срочная, так что все силы хороши. 

Ищу разработчика Creatio для создания интеграции с сторонним сервисом https://api.textback.io

ТЗ пришлю 

Нравится

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

Максим, добрый вечер!

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

Напишите  на s@baso-it.ru свои контакты для обсуждения нюансов.

Еще актуально

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

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

Есть объект и для него sql запрос. Доступ к коллекции объекта осуществляется через EntityDataService.svc. 
Одно из полей множественное, для такого поля в sql запросе сделана реализация через 

FOR XML PATH ('Goal'), TYPE

Но при запросе коллекции скобки xml тэгов заменяются их кодовыми значениями. 

<d:AccountLoginQualifiedGoal><Goal id="9857A30F-3F69-4D07-ADC8-02A61D686C82"><Name>ЦЕЛЬ№1</Name></Goal><Goal id="187B496F-B7C5-449A-BDE6-7D07D28296DB"><Name>ЦЕЛЬ№2</Name></Goal></d:AccountLoginQualifiedGoal>

Можно ли как-то этого избежать и выводить просто как скобки? Чтобы было вот так.

 <d:AccountLoginQualifiedGoal><Goal id="9857A30F-3F69-4D07-ADC8-02A61D686C82"></Goal><Name>Цель№1</Name></Goal><Goal id="5985A03D-0162-4F02-AA64-BDFCFAC93B49"><Name>Ничего из этого</Name></Goal><Goal id="71EBF4E1-B344-490D-94D9-C67EC77206A9"><Name>Встречи</Name></Goal><Goal id="F6CA356F-635D-4C96-B1E6-D0409172F26E"><Name>Цель№2</Name></Goal></d:AccountLoginQualifiedGoal>

 

Нравится

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

Добрый день. 
Правильно ли я понимаю, что Вы получаете ответ от сервиса EntityDataService.svc в виде : 
 

<d:AccountLoginQualifiedGoal><Goal id="9857A30F-3F69-4D07-ADC8-02A61D686C82"><Name>ЦЕЛЬ№1</Name></Goal><Goal id="187B496F-B7C5-449A-BDE6-7D07D28296DB"><Name>ЦЕЛЬ№2</Name></Goal></d:AccountLoginQualifiedGoal>

 

Mykhailo Storozhuk,

Да, все верно.

Данное поведения полностью корректное. Данную сериализацию делает базовая функциональность .net framework, именно System.Data.Services.DataService. Это нужно для того, что бы не нарушить основной xml.

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

 

Mykhailo Storozhuk, 

Хорошо, спасибо!

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

Всем привет

https://{server}/0/odata/$metadata
через Postman такой запрос возвращает metadata всех таблиц, а интересует metadata определённой таблицы, скажем Contact. 
Возможно ли как-то получить такие данные?
Спасибо.

Нравится

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

Добрый день!

К сожелению, нет такого запроса, который позволит получить метаданные для конкретной таблицы. Вы можете работать с метаданными, которые вернулись по запросу: https://{server}/0/odata/$metadata 

Дима Вовченко,

Спасибо, жаль что такой возможности нету.

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

Добрый день!

При создании обращений через OData все поля формата data заполняются временем вида 01.01.0001 3:00, как это можно обойти?

Нравится

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

Чтобы установить именно пустую дату, можно сделать процесс, который при установке минимальной даты выполняет напрямую Update в базе данных (https://community.terrasoft.ua/questions/pustaya-data-data-null)

Установите в поле объекта в конфигурации значение по умолчанию равное текущей дате. Если после этого будет такая же дата вероятно вы ее посылает в своем запросе в odata посылаете дату как пустую или неопределенную. При запросе в odata самостоятельно посылайте текущее значение даты времени.

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

Чтобы установить именно пустую дату, можно сделать процесс, который при установке минимальной даты выполняет напрямую Update в базе данных (https://community.terrasoft.ua/questions/pustaya-data-data-null)

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

Добрый день,

 

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

curl --location --request GET 'https://ht-lab.terrasoft.ru/0/odata/Contact(ebd2424b-6aad-422e-9bb4-b93f11d5f0db)' \
--header 'ForceUseSession: true' \

--header 'BPMCSRF: -----' \

--header 'Content-Type: application/json; charset=UTF-8'

В ответе ошибка:

{ "error": { "code": "", "message": "An error has occurred." } }

Запрос на получение списка всех контактов возвращает аналогичную ошибку.

В чем может быть причина?

Нравится

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

Владимир, попробуйте опубликовать объект «Контакт» в конфигурации. Если этого будет недостаточно, нужно будет смотреть в логах сайта подробности ошибки.

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

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

Вадим, при добавлении/изменении объектов нужно публиковать для каждого именно его схему, чтобы отработало обновление структуры таблицы в БД, создались новые поля. Для других типов компилируемых схем (БП, действия, в 5.Х-интерфейсе были и страницы) это уже не обязательно, достаточно, чтобы опубликовалась любая.

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

При обращении к обьекту UsrBonus(https://0937113-pharm-zakaz.terrasoft.ru/0/odata/UsrBonus?$top=10) получаем ошибку 

{"error":{"code":"","message":"An error has occurred."}}

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

Нравится

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

Альмир, проверил на стандартном разделе, ошибки не наблюдается.

Может, после доработок не опубликовали схему объекта UsrBonus?

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

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