Коллеги, добрый вечер!

Подскажите пожалуйста, в каком модуле происходит расчет поля "Итого" раздела "Заказы"?

Всё обыскал, никак не найду, в подсказке написано, что считается автоматически как сумма всех "Итого" на детали "Продукты", но самих расчетов ни в OrderPageV2, ни в OrderProductDetailV2, ни в OrderProductPageV2, ни в импортируемых ими модулях не вижу. Есть место с запросом значения из базы, но как оно туда попадает изначально неясно.

Нравится

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

Смотрите объект OrderProduct, а там процессы:



Владимир, спасибо.

Тагиз, также можете обратить внимание на OrderAmountHelper

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

Здравствуйте. Добавила в раздел быстрые фильтры по дате и отвественному, А они не отображаются.

ниже код добавления

define("UsrTSiPOSection", ["BaseFiltersGenerateModule"], function(BaseFiltersGenerateModule) {

    return {

        entitySchemaName: "UsrTSiPO",

        methods: {

            // Инициализирует фиксированные фильтры.

            initFixedFiltersConfig: function() {

                // Создание конфигурационного объекта.

                var fixedFilterConfig = {

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

                    entitySchema: this.entitySchemaName,

                    // Массив фильтров.

                    filters: [

                        // Фильтр периода.

                        {

                            // Название фильтра.

                            name: "PeriodFilter",

                            // Заголовок фильтра.

                            caption: this.get("Resources.locatizableStrings.PeriodFilterCaption"),

                            // Тип данных — дата.

                            dataValueType: this.Terrasoft.DataValueType.DATE,

                            columnName: "Date",

                            // Дата начала периода фильтрации.

                            startDate: {

                                // Фильтруются данные из колонки [Date].

                                //columnName: "StartDate",

                                // Значение по умолчанию — начало текущей недели.

                                defValue: this.Terrasoft.startOfWeek(new Date())

                            },

                            // Дата завершения периода фильтрации — завершение текущей недели.

                            dueDate: {

                                //columnName: "DueDate",

                                defValue: this.Terrasoft.endOfWeek(new Date())

                            }

                        },

                        // Фильтр ответственного.

                        {

                            // Название фильтра.

                            name: "Owner",

                            // Заголовок фильтра.

                            caption: this.get("Resources.locatizableStrings.OwnerFilterCaption"),

                            // Фильтрация данных из колонки [Owner].

                            columnName: "Owner",

                            // Значение по умолчанию — контакт текущего пользователя.

                            // Берется из системной настройки.

                            defValue: this.Terrasoft.SysValue.CURRENT_USER_CONTACT,

                            // Тип данных — справочник.

                            dataValueType: this.Terrasoft.DataValueType.LOOKUP,

                            // Фильтр.

                            filter: BaseFiltersGenerateModule.OwnerFilter

                        }

                    ]

                };

                // Атрибуту [FixedFilterConfig] присваивается ссылка на созданный конфигурационный объект.

                this.set("FixedFilterConfig", fixedFilterConfig);

            }

        }

    };

});

Нравится

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

В Вашем пользовательском разделе существуют поля с названиями 

"Owner", "Date"?

Например в этом месте -  columnName: "Owner", скорее должно быть  columnName: "UsrOwner", или как вы там назвали поле с ответственным. С датой то же самое. Надеюсь, что это поможет.

Alex Zaslavsky, изменила названия, но фильтры все равно не отображаются

Никульшина Алёна,

entitySchema: this.entitySchemaName, - здесь удалите Name

напишите просто - entitySchema: this.entitySchema,

Никульшина Алёна, работает? Или фильтры все еще не отображаются?

Alex Zaslavsky,

 Да , спасибо большое.все отображается

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

Периодически в логе возникает следующего вида ошибка

2018-04-09 08:54:58,222 [62] ERROR CP-BPM\bpmadmin Terrasoft.Core.Process.ProcessEngineImpl GetIsMatchCondition - (null)
System.FormatException: Идентификатор GUID должен содержать 32 цифры и 4 дефиса (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
   в System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException)
   в System.Guid.TryParseGuidWithNoStyle(String guidString, GuidResult& result)
   в System.Guid.TryParseGuid(String g, GuidStyles flags, GuidResult& result)
   в System.Guid..ctor(String g)
   в Terrasoft.Common.DataTypeUtilities.ValueAsType[TResult](Object value)
   в Terrasoft.Nui.ServiceModel.DataContract.Parameter.GetValue(UserConnection userConnection, DataValueType forcedDataValueType, Boolean useUtcTime)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateExpression(BaseExpression expression, Boolean useUtcTime)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateCompareFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilterGroupFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.AddQueryFilters(EntitySchemaQuery currentEsq, Filters filterConfigs)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateExpression(BaseExpression expression, Boolean useUtcTime)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateCompareFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilterGroupFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.Extensions.QueryExtension.EsqBuilder.CreateFilter(Filter filterConfig)
   в Terrasoft.Nui.ServiceModel.DataContract.ProcessDataContractFilterConverter.ConvertToEntitySchemaQueryFilterItem(EntitySchemaQuery esq, String serializedFilters)
   в Terrasoft.Core.Process.ProcessEngineImpl.GetIsMatchCondition(UserConnection userConnection, Entity entity, String conditionData)

Никак не могу понять кто ее туда пишет. Есть способ?

Нравится

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

Добрый день

Судя по callstack'у это ошибка при работе процесса. Посмотрите процессы, которые выполнялись в это время.

А так просто по данной записи сложно сказать. Не ясно, она возникает и что-то не работает (что?). Она выскакивает на клиенте  (какие действия совершаются, что во вкладке Network?). Выполнение процесса прервалось (на каком-то элементе?) и т.д.

Артем Гура,

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

Алексей-Карягин,

Выходит, что данная ошибка не влияет на работоспособность или это не известно. Я рекомендую вам обратиться в поддержку, описав проблематику. Также приложите логи

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

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

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

Какие есть варианты открытия доступа к моб.приложению если система будет разворачиваться on-site и что для этого необходимо?

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

Возможно ли открыть доступ к  моб.приложению через локальную сеть wi-fi?



Спасибо!

Нравится

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

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

Это зависит от настроек доступа к серверу. Особых требований нет.

Главное, чтобы был сервер доступен с мобильного устройства (через VPN, Wi-Fi и т.д.). Этот вопрос уже больше относится к работе администрирования а не к приложению.

Также некоторые нюансы описаны на Академии -https://academy.terrasoft.ru/documents/mobile/7-11/ustanovka-

mobilnogo-prilozheniya-i-pervyy-vhod

Для использования мобильного приложения Вам необходима активная лицензия продукта bpm'online (например, sales enterprise) либо же trial/демо сайт. Отдельная лицензия не нужно. 

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

Иду по гайду 

https://academy.terrasoft.ru/documents/technic-sdk/7-11/sozdanie-polzov…

То, что родительских объектов слово в слово нет, обходим подсматривая, что в системе от чего зависит. Зарегистрировал в системе скриптом с гайда про редактируемый реестр. Добавил данные в табличку детали скриптом.

На странице редактирования (куда прикреплял деталь) название детали и нет данных:

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

 

Код скриптов, конечно, могу привести и он будет идентичен гайдовским за исключением названий объектов и полей.

Может, есть некие тайные знания, не описанные в инструкции? В коммьюнити обсуждения есть, но всё не то. У меня данные не отображаются просто, ни No Data, ничего.

Нравится

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

Или Базовая детаьл с полями, дающая такой функционал, только в банковком решении?

Может есть пример реализации где-то на тестовой(демо) среде?

 

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

К сожалению, на данный момент деталь с полями по данной инструкции можно реализовать только в банковских продуктах (bank customer journey, bank sales и lending). Аналитики продукта рассматривают возможность реализации создания данного типа детали во всех продуктах, возможно, в будущих релизах это будет реализовано.

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

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

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

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

Нравится

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

Есть желание, чтобы при проставлении статуса Активности "Завершена", автоматически проставлялся Результат - первый доступный для данной категории активности, у которого (у результата) категория Успех.

Как лучше это сделать, чтобы не выбирать все результаты запросом и не фильтровать их самому?

Нравится

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

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

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

Задача, чтобы при выборе состояния "завершена" в карточке, там же в карточке проставлялся результат категории успешно. Но пользователь имеет возможность его изменить.

Знаете как, в обычном выпадающем списке вы в коде пишите comboBox.SelectedIndex = 0 и у вас выбирается первый элемент.

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

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

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

Здравствуйте. В созданном разделе пыталась добавить быстрые фильтры. Удалили схему UsrTSiPO1Section раздел перестал грузится. Как решить эту проблему? 

Нравится

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

Добрый день.

Над данным вопросом работаем в рамках обращения SR-0668677.

VladKapitanchyk,

Тех.поддержка мне не помогла

Если схема секции была удалена, то надо сделать новую, взять её идентификатор в SysSchema (UId) и заменить на старые во всех нужных таблицах, например SysModule.

подскажите пожалуйста, как это правильно сделать?

Через MS SQL. После добавления новой схемы секции, найти её по полю Name в таблице SysSchema и взять значение поля UId. В таблице SysModule найти запись, соответствующую разделу, в котором была удалена схема секции, можно найти по полю Code. Далее нужно взять значение поля UId и поместить его в поле SectionSchemaUId найденной записи. Должно помочь.

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

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

Соответственно, если сотрудник написал исходящий емейл - он тоже должен отображаться в его календаре. 

Нравится

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

Попробуйте использовать встроенные бизнес-процессы объекта "Активности" (подробнее про встроенные бизнес-процессы тут: https://academy.terrasoft.ua/documents/technic-sdk/7-12/primer-ispolzovaniya-vstroennogo-processa-obekta-dobavlenie-avtonumeracii-k-polyu-stranicy, раздел "Алгоритм реализации кейса на стороне сервера").

При создании новой активности с типом E-mail вы можете проверить все нужные поля (есть ли E-mail отправителя у вас в системе, кому письмо предназначено и т.д.), а далее, нужные E-mail с нужными полями отобразить в календаре.

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

7.11(Onsite)

Добрый день, появился вот такой глюк.

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

Генерация и перекомпиляция не помогают. Востанавливаю бекап они опять есть. Перезапуск Редиса эфекта не дает.

Подскажите куда копать?

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

Нравится

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

Роман, здравствуйте! 

Пройдитесь inspect в google chrome и посмотрите div. Возможно они ссылаются на другие поля. Также схему страницы редактирования в секции diff. Возможно там есть inspect или merge неопознанных полей. 

В базовой версии подобного не встречали ранее.

Вильшанский Дмитрий,

Спасибо за ответ, но засада была в темпах Хрома, через настройки удалил все временные файлы и все заработало

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