Добрый день!

Добавил на кастомную страницу базовую деталь FileDetailV2 из пакета UIv2.

При инициализации детали падает ошибка: 

user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647

 file: undefined

 line: undefined

 column: undefined

 message: Cannot read property 'initDropzoneEvents' of undefined 

 date: Fri Apr 20 2018 10:17:45 GMT+0400 (RTZ 3 (зима))

 moduleId: CardModuleV2_fa04f9ca-d9d9-4c1e-bae9-ef23c8b24925_FinApplicationPage_detail_FileDetailV2snIntegrationLogFile

 moduleName: DetailModuleV2

При этом вручную добавить файлы на деталь невозможно.

В другом разделе деталь работает корректно, добавлена аналогично.

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

 

Нравится

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

Коллеги, добрый день!

Реализовал кастомную кнопку закрытия обращения с выпадающим меню. Но никак не могу найти, как установить цвет выпадающих кнопок. Мне необходимо все 5-кнопок сделать разными цветами. 

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

 

А так же интересует каким образом можно добавить для выпадающей кнопки Значок, по аналогии с кнопкой "Экспорт в Excel" в меню "Действия"?

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

Спасибо!

Нравится

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

Добрый день

Чтобы реализовать раскраску цветами, то:

1. Каждое меню должно быть уникальное

2. Добавить css стиль

К примеру, у меня есть 2 пункта меню. Чтобы я мог реализовать корректный selector, то мне нужно их как-то назвать. Поэтому, в методе, где формируется menuItem я явно буду указывать Id этого меню. После чего можно будет писать что-то типа:

#myMenuItem {
    background-color: green;
}

 

Теперь по значкам.

Как вы сами заметили, что хотите добавить значок по аналогии, то вам и нужно сделать по аналогии :). Вот как это сделано в BaseSection

Артем Гура,

Спасибо, но не совсем понято как указать id каждого из меню в методе.

Вот мой метод:

getCustomCloseActions: function() {
 
	self = this;
	var actionMenuItems = Ext.create("Terrasoft.BaseViewModelCollection");
		actionMenuItems.addItem(this.getButtonMenuItem({
			"Tag": "5",
			"Caption": "Закрыть с оценкой 5",
			"Click": {bindTo: "OnCustomClosedButtonMenuClick"}
		}));
		actionMenuItems.addItem(this.getButtonMenuItem({
			"Tag": "4",
			"Caption": "Закрыть с оценкой 4",
			"Click": {bindTo: "OnCustomClosedButtonMenuClick"}
		}));
		actionMenuItems.addItem(this.getButtonMenuItem({
			"Tag": "3",
			"Caption": "Закрыть с оценкой 3",
			"Click": {bindTo: "OnCustomClosedButtonMenuClick"}
		}));
		actionMenuItems.addItem(this.getButtonMenuItem({
			"Tag": "2",
			"Caption": "Закрыть с оценкой 2",
			"Click": {bindTo: "OnCustomClosedButtonMenuClick"}
		}));
		actionMenuItems.addItem(this.getButtonMenuItem({
			"Tag": "1",
			"Caption": "Закрыть с оценкой 1",
			"Click": {bindTo: "OnCustomClosedButtonMenuClick"}
		}));
	self.set("CloseButtonMenuItems", actionMenuItems);
 
},

 

Обратите внимание на метод getButtonMenuItem: как он работает по умолчанию, и как он работает, например в BaseSection.

Особенно то, как формируется значок Excel и как генерируется Id.

А дальше сделать всё по аналогии.

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

Коллеги, добрый день!

Проблема в следующем:

При создании стандартного фильтра (по группе ответственных) в разделе Обращения, на страницу выводится список обращений не только данной группы, но и других групп.

Оказалось, что при создании такого фильтра, по умолчанию выставляется  условие сравнения "СОДЕРЖИТ", а не  "=" (равно).  

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

Можно ли как-то изменить "условие сравнения по умолчанию" для стандартного фильтра?

Спасибо!

Нравится

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

Добрый день!

Стандартный фильтр действительно работает по принципу "СОДЕРЖИТ". Внести изменения в его условия сравнения возможности нет. 

Рекомендуем использовать расширенный фильтр, где есть возможность выбрать "=".

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

Добрый день!

Столкнулись с следующей ситуацией: для портальных пользователей не отображается на детали История email отправленные ими же. 

Кейс: cпочты пользователя портала отправляется письмо на почту техподдержки, это письмо регистрируется в системе (активность с типом email), по нему создается обращение в системе со связью с письмом. Можно добавить портальное сообщение. Со стороны бэкофиса на странице Обращения на детали История первой записью будет отображаться письмо от пользователя. Если зайти со стороны портала, то данного письма на детали не будет.

Подскажите, пожалуйста, где можно настроить видимость писем на детали история для пользователей портала?

Спасибо! 

Нравится

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

Вы указали, что пользователь портала не видит писем в «Истории», это корректное поведение системы. В рамках базовой логики – портал самообслуживания не подразумевает общения письмами, в таком случае вообще портал самообслуживания теряет смысл. В системе реализована отдельная логика по работе с обращениями, происхождение у которых «Email». А пользователь, у которого есть портальные учетные данные – предполагается будет общаться с поддержкой и регистрировать обращения через портал.

Мы реализовывали раздачу прав пользователям портала на записи в БП. 



Ключевое здесь - это выдача прав на Activity по полученному письму. 

И основная сложность - это отловить получение письма. Примерно так выглядит сигнал на это событие:



Владмир, спасибо за информацию. Жалко, что на скриншоте ничего не видно. Можно сделать дололнение для маркета.

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

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

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

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

Владимир, подскажите, пожалуйста, как именно происходила раздача прав (настройка элемента процесса)? Требуется ли дополнительная настройка прав в разделе Администрирования: Доступ к объектам?

Если все права раздаёт процесс, то вручную менять не надо. Но лучше свяжитесь напрямую с Владимиром и уточните к него.

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

Коллеги, добрый день!

Не могу найти, что запускает процесс "Отправка email сообщения контакту обращения при публикации сообщения в канале Портал".

Подскажите пожалуйста как найти что его запускает.

Данный процесс расположен в пакете Portal 7.8.0

Система Service enterprise 7.10.1

Спасибо!

Нравится

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

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

Запуск данного процесса зашит в коде, на объекте PortalMessage. Метод называется NotifyListeners.

Илья Прокопенко,

Спасибо, я так и подумал что этот метод вызывает процесс. Но сам код метода NotifyListeners могу найти. 

Павел, если возник вопрос, то просьба его озвучить.

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

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

Проблема в следующем:

Мне необходимо внести изменения в процесс "Отправка email сообщения контакту обращения при публикации сообщения в канале Портал". А при изменении базового процесса, меняется и имя этого процесса, так как сохраняется новая версия в другом пакете.

Но так как этот процесс запускается методом NotifyListeners, мне придётся изменить и этот метод. Так как я подозреваю, что в этом методе жёстко прописано название процесса.

Ну и основная проблема в том, что я никак не могу найти код этого (NotifyListeners) метода, где идёт вызов процесса.

Бакалов Павел Вячеславович,

Вепроятно, вы ищите не в том пакете. Вот код метода NotifyListeners - http://prntscr.com/izo7zv

Demchenko Olha,

Добрый день!

Да, этот код я видел. Тут идет вызов метода Notify из MessageHisotryManager. А вот вызова процесса я в MessageHisotryManager так и не нашел.

Бакалов Павел Вячеславович,

Процесс CasePortalMessageHistoryNotificationProcess уже считается старым и вместо него используется такой же, только мультиязычный - CasePortalMessageMultiLanguageProcess. Этот процесс вызывается в CaseMessageListener из системной настройки (http://prntscr.com/izs0wi).

Ранее, в схеме CaseMessageListener напрямую вызывался интересующий вас процесс.

Demchenko Olha,

Спасибо большое! Наконец-то нашлось! =)

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

Добрый день!

На сервере svn создал новый branch, копию существующей главной ветки head. Вопрос, как настроить в bpmonline, чтобы при заливке в svn изменения фиксировались в эту новую ветку, а не в старую? При том, что хранилище одно и то же.

Нравится

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

Добрый день, Дмитрий.

Для этого необходимо новую ветку выделить в отдельное хранилище и добавить его в список хранилищ в BPM'Online. Чтобы открыть список доступных хранилищ, на вкладке [Действия] в интерфейсе раздела [Конфигурация] нужно выбрать действие [Открыть список хранилищ].

Как настроить хранилище SVN

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

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

Нравится

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

Здравствуйте, Павел!

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

Выглядеть он будет так: http://prntscr.com/io67sn

Настройка: http://prntscr.com/io689w

"Количество" потом поменять на "Существует", и внутри указать, собственно, фильтр по текущему контакту.

Спасибо большое!

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

Доброго времени суток.

Установил bpm на Windows Server 2016.

Ввожу логин и пароль на странице авторизации. Реакции никакой. Но в консоли появляются следующие ошибки:

Failed to load resource: the server responded with a status of 404 (Not Found). В ролях сервера установил все галочки для (Веб-сервер(IIS) - Веб-сервер, Веб-сервер(IIS) - Средства управления)

Точно такой же сайт прекрасно работает на Windows Server 2012, но на 2012 IIS 8, а на сервере 2016 IIS 10. Может для 10-й версии какие-то дополнительные настройки нужно указывать?

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

Нравится

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

Здравствуйте, Кирилл!

Дополнительных настроек касаемо iis 10 - нету.

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

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

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

Добрый день. Учитывая помощь из поста (https://community.terrasoft.ru/questions/podklucenie-globalnogo-poiska)В connectionString указал путь к файлу SQLite и он сейчас выглядит таким образом:

    

    

    guest@localhost:5672/" />

при запуске приложения появилось такое:

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

При этом по указаному пути появился файл GlobalSearch.db

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

Далее пытаюсь выполнить такой пост-запрос:

$params = @{"ApiKey"= ""; "SiteName"="C:\BPMonline_GlobalSearchServices_1.0.0.136_711\DB\GlobalSearch.db"}

Invoke-WebRequest -Uri "http://localhost:81/GlobalSearch/0/addsite" -Method POST -Body $params 

получаю ошибку

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

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

Нравится

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

Здравствуйте, Максим!

Параметр SiteName – это не путь к БД а название сайта, должен совпадать с названием БД.

А путь к БД SqlLite указыватся в ConnectionString.config

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

 

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

Здравствуйте. Спасибо за помощь в настройке конфигов (https://community.terrasoft.ru/questions/nastroika-globalnogo-poiska). Теперь столкнулся со следующей проблемой: 

https://academy.terrasoft.ru/documents/marketing/7-11/opisanie-api-servisa-globalnogo-poiska#XREF_17963_API

 здесь дан пример кода. Вот что у меня получилось

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

Я нашел, что можно с этим сделать, но получаю другую ошибку

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

Почему может не находиться метод addsite?

Нравится

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

Здравствуйте, Максим

Данная ошибка, скорее всего, возникает из-за того, что Вы не совсем правильно формируете POST запрос.

Данный POST запрос должен идти не к ElasticSearch? а к Global Search Service.

Для исправления перестройте POST запрос и попробуйте выполнить его повторно.

Denys Diachenko,

заменил на адрес 

Global Search Service. В итоге получил такое

До этого при запуске Global Search Service из IIS наблюдалось такое

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

Максим.Паламарчук,

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

Denys Diachenko,

так я и указал, скопировав из адресной строки браузера "http://localhost/GlobalSearch/0" + /addsite

Максим.Паламарчук,

Судя по ссылке Вы развернули 

Global Search Service как приложение в Вашем сайте bpmonline - это неправильно.

Вам необходимо Global Search Service развернуть как отдельный сайт в IIS.

Также судя по второму скриншоту у Вас некорректно прописан путь к БД Global Search - необходимо прописать верный путь и повторить POST запрос с обновленными атрибутами.

Denys Diachenko,

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

Здравствуйте, Максим!

Могли бы Вы, пожалуйста, описать какие возникли трудности при настройке?

Shevchenko Andrey,

Добрый день! У меня ошибка "unable to open database file" призапуске приложения глобального поиска из IIS.

В файле web.config указаны такие настройки:

<OnSiteClientSettings>

    <add key="ElasticSearchUrl" value="http://localhost:9200/"/>

    <add key="ConfigDirectory" value="C:\BPMonline_GlobalSearchServices_1.0.0.136_711\GSSConfigs"/>

  </OnSiteClientSettings>

 

 

<appSettings>

    <!--<add key="DbDialectProvider" value="ServiceStack.OrmLite.SqlServerDialect, ServiceStack.OrmLite.SqlServer, Version=4.0.56.0, Culture=neutral, PublicKeyToken=null"/>-->

    <!--Comment DbDialectProvider above and uncomment DbDialectProvider below for on site clients. Vice versa for cloud clients.-->

    <add key="DbDialectProvider" value="ServiceStack.OrmLite.SqliteDialect, ServiceStack.OrmLite.Sqlite.Windows, Version=4.0.56.0, Culture=neutral, PublicKeyToken=null"/>

    <add key="DBConnectionConfigPattern" value="Server={0};Database={1};Uid=Supervisor;Pwd=Supervisor;charset=utf8;Allow User Variables=True" />

    <add key="servicestack:license" value="3802-e1JlZjozODAyLE5hbWU6VGVycmFzb2Z0LFR5cGU6SW5kaWUsSGFzaDpwd0VYdGh0eFByRi90OVpnMmZrZGMxQkNrV0QrSnFZWlRBS3kxSEVZb0dCejRSMnZNVGtFdHNtcVpHd3BGc094bWtsdW1qYTNWV3JTZkJsdTdtU3dMNWZNVDdUQW1pTkIrR2lxN2F4MldiNGs2S0t5Mkp1eG1vbVpHSVNzYWljelNSOHdVTjE1QXhsQ2ZpdHVJNWZiQWlmQUtBeUJ2ajc0UjhCYW5GOVdrRWs9LEV4cGlyeToyMDE3LTA1LTE0fQ==" />

    <add key="AuthApiKeyCacheExpiration" value="300" />

    <add key="MailingAccountCacheExpiration" value="300" />

    <add key="log4net.Config" value="log4net.config" />

    <add key="log4net.Config.Watch" value="True" />

    <add key="ApiKey" value="" />

    <add key="elasticLogin" value="#elasticLogin#" />

    <add key="elasticPassword" value="#elasticPassword#" />

    <add key="RequestTimeOut" value="600000" />

  </appSettings>

 

Здравствуйте, Максим!

Обращаю Ваше внимание на строку конфига:

<add key="DBConnectionConfigPattern" value="Server={0};Database={1};Uid=Supervisor;Pwd=Supervisor;charset=utf8;Allow User Variables=True" />

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

Shevchenko Andrey,

Здесь нужны сервер и БД, которые используются в моем приложении bpm'online?

Здравствуйте, Максим!

В инструкции указано:

DBConnectionConfigPattern — шаблон строки подключения к БД клиента. Необходимо указать логин и пароль пользователя:

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

Shevchenko Andrey,

я указываю и так

<add key="DBConnectionConfigPattern" value="Server=имя моего sql-сервера;Database=имя моей БД;Uid=логин;Pwd=пароль;charset=utf8;Allow User Variables=True" />

и так 

<add key="DBConnectionConfigPattern" value="Server={имя моего sql-сервера};Database={имя моей БД};Uid=логин;Pwd=пароль;charset=utf8;Allow User Variables=True" />

и так 

<add key="DBConnectionConfigPattern" value="Server={0};Database={1};Uid=логин;Pwd=пароль;charset=utf8;Allow User Variables=True" />

 

ошибка "unable to open database file" остается

Здравствуйте, Максим!

Данный параметры необходимо указать как в первом варианте.

Так же при добавлении сайта через пост запрос, выбирается путь к БД который указан в connectionString который Вы настраивали ранее. 

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

Shevchenko Andrey,

Настройка connectionsting такая

<connectionStrings>

    <add name="ConnectionDb" connectionString="Data Source=имя sql сервера;Initial Catalog=имя моей БД;User Id=логин;Password=пароль;"/>

    <add name="RabbitMQ" connectionString="amqp://guest:guest@localhost:5672/" />

</connectionStrings>

 

пост-запрос

$params = @{"ApiKey"= ""; "SiteName"="имя моей БД"}

Invoke-WebRequest -Uri "http://localhost:81/GlobalSearch/0/addsite" -Method POST -Body $params

ошибка та же

Shevchenko Andrey,

добрый день. В connectionString указал путь к файлу SQLite и он сейчас выглядит таким образом:

<connectionStrings>    

    <add name="ConnectionDb" connectionString="C:\BPMonline_GlobalSearchServices_1.0.0.136_711\DB\GlobalSearch.db"/>

    <add name="RabbitMQ" connectionString="amqp://guest:guest@localhost:5672/" />

</connectionStrings>

 

при запуске приложения появилось такое:

При этом по указаному пути появился файл GlobalSearch.db

Далее пытаюсь выполнить такой пост-запрос:

$params = @{"ApiKey"= ""; "SiteName"="C:\BPMonline_GlobalSearchServices_1.0.0.136_711\DB\GlobalSearch.db"}

Invoke-WebRequest -Uri "http://localhost:81/GlobalSearch/0/addsite" -Method POST -Body $params 

 

получаю ошибку

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

Здравствуйте, Максим!

Данная проблема может возникает из-за несовпадения ApiKey. Рекомендуем Вам проверить корректность ApiKey, а так же попробовать выполнить запрос с любым не пустым ApiKey.

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