Добрый день!
Прошу помощи у знатоков серверной части Creatio. 
При работе с EntitySchemaQuery после указания фильтров и использования метода GetEntityCollection - мы получаем коллекцию сущностей какого-то конкретного объекта. Так вот вопрос. Возможно ли данную коллекцию сущностей (Entity) преобразовать к конкретному Entity (Например, Account или Contact) используя стандартный функционал?
Я знаю, что можно сделать что-то подобное:

var account = new Account(userConnection);

account.FetchFromDB(id);

 

Но, возможно ли сделать из этого коллекцию из нескольких результатов с фильтрами, например из ESQ?

Нравится

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

 Добрый вечер.

 

Вот таким образом можно из одной коллекции с помощью фильтров получать разные наборы данных, а потом уже работать со списком:

var collParameters = projectSchemesCollectionParameters.Where(p =>
    p.GetTypedColumnValue<string>("SchemeName") == 'Test name');
var collParametersList = collParameters.ToList();

 

 

Алла Савельева пишет:

 Добрый вечер.

Вот таким образом можно из одной коллекции с помощью фильтров получать разные наборы данных, а потом уже работать со списком:


 
var collParameters = projectSchemesCollectionParameters.Where(p =>
    p.GetTypedColumnValue<string>("SchemeName") == 'Test name');
var collParametersList = collParameters.ToList();

Спасибо, но это не то, о чем я спрашивал. Я имел ввиду что-то вроде этого:

 

entitySchemaQuery.GetEntityCollection(userConnection).Select(a => a as Account);

 

Тимофей Ромах,

Добрый день.

Подобная конструкция не будет работать - 

entitySchemaQuery.GetEntityCollection(userConnection).Select(a => a as Account);

 

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

 

 

      Но дочернего объекта по цепочке - не будет.

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

        Добрый день! 
         

        Вы не могли бы помочь в возникшей проблеме:

         

        1. Почему по API при выгрузки продаж, не выгружаются созданные доп.поля.
        Пример запроса: https://betapro.terrasoft.ru/0/odata/Opportunity(617f488f-a7c4-4d12-bb6b-03e761090f64)
        В выгрузке не передается ни одно поле, указанное на скриншоте https://prnt.sc/1ajggjl

        2. При запросе https://betapro.terrasoft.ru/0/odata/Opportunity(617f488f-a7c4-4d12-bb6b-03e761090f64) или https://betapro.terrasoft.ru/0/odata/Opportunity, выдается ошибка {"error":{"code":"","message":"An
        error has occurred."}}. С чем это может быть связано?

        Нравится

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

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

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

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

        Какие-нибудь дашборды или графики?

        Спасибо.

        Нравится

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

        Добрый день.

        На текущий момент подобный функционал отсутствует в приложении Creatio. 

        Предположительно, через несколько версий, появится нечто подобное.

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

        Добрый день.

        На текущий момент подобный функционал отсутствует в приложении Creatio. 

        Предположительно, через несколько версий, появится нечто подобное.

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

        Спасибо.

        Также, если сайт развернут on-site, то можно с помощью инструментов отладки запросов СУБД анализировать длительность выполнения запросов. Например, для MS SQL это SQL Profiler.

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

        Приветствую, коллеги!
        Помогите разобраться с вопросом, пожалуйста. 

        Есть раздел "Номенклатура материалов" (рис.1). На основе этого раздела создал деталь с редактируемым реестром, по методике (https://academy.terrasoft.ru/docs/7-16/developer/elements_and_component…). Эту деталь вывел на раздел "Обращение" (рис.2). В деталь элементы добавляются и создаются сразу в разделе.

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

         

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

        Нравится

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

        Артур, добрый день!

         

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

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

        Добрый день!

        Есть задача массовой выгрузки внутренних номеров телефонии по всем пользователям CRM.

        Прошу подсказать, в какой таблице находятся эти данные:

        В системе используется коннектор к телефонии Mango Office (https://marketplace.terrasoft.ru/app/creatio-mango-office-connector)

        Нравится

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

        Сергей, здравствуйте!

        Значение настроек телефонии в профиле пользователя хранятся в таблице SysMsgUserSettings.

        Сергей, здравствуйте!

        Значение настроек телефонии в профиле пользователя хранятся в таблице SysMsgUserSettings.

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

        Доброго времени суток.
        На версии 7.17.3 при компиляции возникает ошибка. 


        Система Creatio развернута на ноутбуке, где установлена Windows 10 Pro, ver 21H1. В системе установлено около 20-ти кастомных пакетов различных разработок.
        Объема свободного дискового пространства на диске С, где развернут сайт и БД MS SQL, около 160 ГБ. ОЗУ 16 ГБ. Так как в сборке Windows установлен .Net Framework 4.8, то установил NDP472-DevPack-ENU и dotnet-sdk-3.1.301-win-x64, взятые на академии.
        Не пойму, почему не хватает памяти.
        На других машинах с меньшими объемами памяти компилируется без проблем. Но там версии Windows 10 более старые, то есть нет .Net Framework 4.8
        Разворачивал чистую Creatio без доработок. Компиляция проходила без ошибок. 
        Может кто-то сталкивался с подобной проблемой? 
         

        Нравится

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

        Кирилл Александрович, здравствуйте!

         

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

         

         

        Кирилл Александрович, здравствуйте!

         

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

         

         

        Спасибо. Так и сделал. Именно генерация кода для всех схем помогла

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

        При установки дополнения "Excel reports builder for Creatio" в логах ошибка.

        The type 'ExcelPackage' exists in both 'EPPlus, Version=4.1.0.0, Culture=neutral, PublicKeyToken=ea159fdaa78159a1' and 'EPPlus, Version=4.5.3.2, Culture=neutral, PublicKeyToken=ea159fdaa78159a1'

         

         

        Нравится

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

        Станислав, добрый день!

         

        уточните для воспроизведения ошибки продукт и версию Creatio.

        Судя по тексту ошибки скорее всего у вас уже установлен пакет с библиотекой EPPlus. Платформа Creatio не разрешает несколько установок одной и той же библиотеки.

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

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

        Добрый День, подскажите пожалуйста...столкнулся с проблемой:

        При создании нового обращения выдает следующую ошибку: "Operand type clash: int is incompatible with uniqueidentifier", никак не могу разобраться. Опыта крайне мало, поэтому прошу помощи у профессионалов.

        Нравится

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

        Добрый день!

         

        Ошибка возникает при создании обращения на портале?

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

        Есть JSON на 35 000+ строк.
        На стороне сервера запрос принимается и обрабатывается 118 – 124 секунды.

        Во время обработки запроса к нам приходит ошибка:

        Received an unexpected EOF or 0 bytes from the transport stream. Trace at System.Net.ConnectStream.Read(Byte[] buffer, Int32 offset, Int32 size) at System.IO.StreamReader.ReadBuffer() at System.IO.StreamReader.ReadToEnd() at Terrasoft.Configuration.UsrCustomNamespace.UsrHelperForAuction.SendRequest[T](String api, T requestObject, Guid auctionId)

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

        В CRM при отправке запроса, HTTP Request был добавлен таймаут = 600 * 1000.

        Ошибка осталась та же.

        Нравится

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

        Добрый день.

        Подскажите, сколько по времени занимает выполнение запроса в Postman?
        Если у вас закрывается сессия до выполнения запроса, я бы рекомендовал обратить внимание на системную настройку UserSessionTimeout. Максимальное значение данной настройки - 720 мин.

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

        Используем дополнение "Excel reports builder".

        После перехода на версию 7.17.2 перестали загружается файлы в Excel отчёты.

        Кто-нибудь сталкивался с данной проблемой, есть варианты решения?

        Нравится

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

        Станислав, добрый день!

         

        пост задублировался. Ответ по вопросу здесь - https://community.terrasoft.ru/questions/ne-zagruzhaetsya-fayly-v-excel….

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