Коллеги, здравствуйте!
Написан БП по передаче обращений в продажи(т.е. создается лид). Если в обращении прикреплен файл, соответственно этот файл добавляем на деталь файлы, и его тоже нужно будет передать на деталь Файлы и Примечания в лидах.С помощью обычных блоков в БП этого сделать не удалось - БП завершался с ошибкой. Как тогда можно поступить в данном случае? Может, кто уже реализовывал данный кейс?

Нравится

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

Реализовать это можно. Не совсем, конечно понятна фраза "этот файл добавляем на деталь файлы, и его тоже нужно будет передать на деталь Файлы и Примечания в лидах".

1. Вам необходимо знать Id обращения, файлы которого вам нужно скопировать в Лид.
2. Не рекомендую реализовывать такие действия в том же БП где вы пытаетесь создать Лид, так как Лид до конца не создается (скорее всего), но как только закончит действие БП по созданию Лида, можно сделать второй БП который будет стартовать по сигналу Создания записи в таблице Лид (так же можно будет их отсеять от обычных Лидов любым вашим уникальным значением).
3. В этом втором БП который будет ловить сигнал создания Лида, вам необходимо добавить буквально один элемент "Добавить данные". В поле "В какой объект добавить данные" указать "Файл и ссылка лида", в поле "Какой режим добавления данных" выбрать "Добавить результат выборки", в поле "Выборка по объекту" указать "Файл и ссылка обращения" (например, возможно у вас будет другая таблица с хранимыми файлами, если вы не используете стоковую для обращений) и указать условие выборки (то есть фильтр по Id, где Id это идентификатор вашего обращения). Затем необходимо указать список полей которые нужно скопировать, в этих полях будут доступны данные по типу "Результат выборки. Версия" и так далее.

Приложу скриншоты одного такого работающего элемента.
Если возникнут вопросы можете писать в ЛС.

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

"Владимир Соколов" написал:

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


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

"Кисловский Михаил Андреевич" написал:Но возможно у Лида будут сторонние файлы, которые не должны быть в обращении.
Так что визуальная подмена деталей тут будет неуместна, на мой взгляд.

Я не про подмену, а про дополнительную закладку. Как это сделано в Продаже, где отображается дополнительно история Контрагента

Кисловский Михаил Андреевич пишет:

Приложу скриншоты одного такого работающего элемента. Если возникнут вопросы можете писать в ЛС.

А можно скрин. У меня почему то не работает. Нужно из активности файл прикрепить в обращения. 

 

Владимир прав, плодить копии файлов без крайней необходимости не стоит. Но если всё же нужно копировать и стандартные механизмы работы с данными не подходят, можно сделать в базе хранимку с параметрами, осуществляющую копирование значения поля с файлом, а затем запускать её из C#-кода.

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

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

При попытке изменить значение поля Ответственный в записи лида, должно появиться окно с реестром записей контактов при выборе из справочника Контакт. Но в итоге появляется пустое окно, в консоли появляется следующая ошибка https://yadi.sk/d/bdZQ5R6k3JQBxt После обновления страницы снова пробую поменять ответственного результат тот же, консоль отображает следующее https://yadi.sk/d/SE5OTKS_3JQC8o https://yadi.sk/d/Q6bHaOUQ3JQCCK
Также страницу обновляет очень медленно.

Какова природа данной ошибки?

Нравится

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

Елена, сообщение консоли говорит о том, что превышено время ожидания ответа от сервера.
Причины могут быть совершенно разными: загружен сервер (в таком случае нужно анализировать производительность); сам запрос по получению списка контактов выполняется долго и клиентская сторона не дожидается его выполнения.

Для точной диагностики необходим профайлинг запроса на стороне Sql-сервера и отладка.

Если Вам необходима помощь в диагностике проблемы, пожалуйста, направьте запрос в службу поддержки в формате:
- место и способ воспроизведения (в идеале - доступ к обезличенной копии БД);
- предшествующие изменения.

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

Коллеги, здравствуйте!
Назрел такой вопрос по поводу синхронизации с АД. Клиент в своей АД изменил логин пользователя с miignatyev на iignatyev. При последующей синхронизации bpm старый логин не изменил на новый.
Почему? Синхронизация завершается без ошибок

Нравится

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

Здравствуйте, Елена.

В данной ситуации можем рекомендовать следующее:

1. Проверить изменены ли поля User Logon Name в AD (см. скрин).
2. Проверить указан ли правильный логин в атрибуте sAMAccountName пользователя.
3. Выполнить очистку даты последней синхронизации. Выполнить это можно одним из двух способов:
- обнуленить системную настройку [Дата последней синхронизации с LDAP] (LDAPLastSynchDate);
- выполнить скрипт: UPDATE SysSettingsValue SET DateTimeValue = NULL WHERE SysSettingsId = (SELECT Id FROM SysSettings WHERE Code = 'LDAPLastSynchDate'). После этого очистить Redis.
4. После выполненных действий выполнить повторный запуск синхронизации (действие синхронизировать с LDAP в разделе Орг. структура)

"Мария Ватулина" написал:

Здравствуйте, Елена.

В данной ситуации можем рекомендовать следующее:

1. Проверить изменены ли поля User Logon Name в AD (см. скрин).

2. Проверить указан ли правильный логин в атрибуте sAMAccountName пользователя.

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

- обнуленить системную настройку [Дата последней синхронизации с LDAP] (LDAPLastSynchDate);

- выполнить скрипт: UPDATE SysSettingsValue SET DateTimeValue = NULL WHERE SysSettingsId = (SELECT Id FROM SysSettings WHERE Code = 'LDAPLastSynchDate'). После этого очистить Redis.

4. После выполненных действий выполнить повторный запуск синхронизации (действие синхронизировать с LDAP в разделе Орг. структура)

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

ad_1.jpg
19.4 кб

Мария, спасибо! Очистка даты в системной настройке и сброс редиса помог!

Добавить комментарий

DenisV, Здравствуйте! Это известная ошибка BPM'Online, разработчики уже работают над ее исправлением. В ближайших релизах, скорее всего в 7.12.3, она будет решена.

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

Добрый день, коллеги!
Есть задача написать бизнес правило для страницы обращения портальных пользователей. Т.е. если мы заходим по пользователем портала с типом контакта Клиент, то пользователь видит колонку Конфигурационные единицы. Если заходим по пользователем портала с типом контакта Сотрудник, то нет. Вопрос: как мне с помощью бизнес правила в 7.10 извлечь контакт текущего пользователя и отфильтровать его по типу контакта?

Нравится

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

Добрый день, Елена!

Можете поступить следующим образом - сравнивать значение системной переменной CURRENT_USER_CONTACT.TypeId с необходимым айдишником типа пользователя. Их можно найти в таблице ContactType.

Илья,

"Мотков Илья" написал:CURRENT_USER_CONTACT.TypeId

Захожу под портальным пользователем, на странице портального обращения сделал вывод в консоли:

console.log(Terrasoft.SysValue.CURRENT_USER_CONTACT);

выводится:

Object {primaryImageValue: "00000000-0000-0000-0000-000000000000", value: "fc5a908f-b121-4538-8e87-0bf92b5be23c", displayValue: "Погорелов Геннадий"}

Типа тут нет. Более того, если я попробую сделать запрос по id данных контакта:

var currentUser = Terrasoft.SysValue.CURRENT_USER_CONTACT.value;
				var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {
				    rootSchemaName: "Contact"
				});
 
				esq.addColumn("Type");
 
				esq.getEntity(currentUser, function(result) {
				    if (!result.success) {
				        console.log("Ошибка запроса данных");
				        return;
				    }
				    console.log(result)
				    console.log(result.entity.get("Type"));
				}, this);

В консоли выводится null.

Так как получить данные о типе пользователя?

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

Прошу извинить, действительно, дезинформировал. Тогда все же прийдется выполнять esq, допустим, в init`e, заносить полученное значение в аттрибут и сравнивать уже его. NULL вы получили по той причине, что колонка называется TypeId.

Илья,

"Мотков Илья" написал:колонка называется TypeId.

Колонка в Contact именно Type. TypeId - такой колонки нет. Если попробовать задать, то result.entity.get вообще выдаёт ошибку.

Object {success: true, entity: null} - вот так выглядит вывод данных по запросу. То есть явно дело не в пустых колонках.

Денис, рекомендую все же посмотреть напрямую в БД, заполнено ли это поле. Вот пример из коробки, модуль CtiPanelIdentificationUtilities:
filterGroup.add("IsEmployeeType", Terrasoft.createColumnFilterWithParameter(
Terrasoft.ComparisonType.EQUAL, "Contact.Type", ConfigurationConstants.ContactType.Employee));

Вопрос был про 7.10, там точно эта колонка используется.

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

Коллеги, добрый день!
Хочу упорядочить состояния обращений на кнопке https://yadi.sk/i/gHMZhZ-f3GwETh, чтобы первым было состояние "Взять в работу". Как я поняла, все настраивается в справочнике Состояния обращений. Состояние "Отклонено по SLA" является конечным, последующие стадии не указываются. Для состояния "В работе" указаны последующие стадии https://yadi.sk/i/vTu9Wxf23GwHSs Результата нет.
Как правильно выполнить сортировку данной кнопки?

Нравится

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

Добрый день, Елена!

Для версий системы до 7.10 необходимо в справочнике "Состояние обращений", например, на состоянии "В работе", как указанно у Вас на скриншоте удалить с детали все "последующие состояния" и добавить по каждое состояние и обязательно по одному! При этом, первым сверху будет отображаться первое добавленное состояние и так по убыванию.

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

Добрый день, коллеги!
Есть разработческая площадка, развернутая на БД клиента с неактуальными данными, на ней ведутся все доработки в свой пакет и фиксируются в хранилище. Также есть "пустая" продуктивная площадка, на которую все изменения применяются. Кроме того, необходимо настроить права доступа, интеграцию с АД, прописать орг структуру. После окончания всех работ нужно перенести все изменения на актуальную базу клиента. Все доработки перенести с помощью хранилища не проблема, но права доступа, интеграция с АД, пользователи, орг структура, настройки почтового ящика хранятся в БД. Поэтому при переносе эти настройки можно потерять. В связи с этим вопрос: есть ли способ переноса данных с одной базы на другую?

Нравится

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

Добрый день, Елена.

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

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

Перенос настроек интеграции с LDAP также приведет к тому, что синхронизация не будет запущена.

В данной ситуации правильно будет выполнить все настройки вручную на актуальной БД.

"Мария Ватулина" написал:

Добрый день, Елена.

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

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

Перенос настроек интеграции с LDAP также приведет к тому, что синхронизация не будет запущена.

В данной ситуации правильно будет выполнить все настройки вручную на актуальной БД.


Мария, спасибо за ответ!

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

Добрый день, коллеги!
Создаем в разделе новое обращение. В колонку Контрагент добавляем новую запись, которой нет в базе следующим образом: https://yadi.sk/d/3cVtO41M3G6nBG После заполнения необходимых полей при сохранении выдает следующую ошибку: https://yadi.sk/i/g-V0CAGN3GRYcs
Как это исправить?

Нравится

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

Добрый день, Елена!
Данная проблема известна. Мы ее исправили в версии 7.10 (в ближайшее время будет релиз).
Если исправление необходимо внести локально на Ваш сайт, пожалуйста, обратитесь в поддержку с указанием проблематики и адреса сайта.
Спасибо за понимание.

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

Коллеги, добрый день!
При попытке синхронизации с AD в бизнес процессе возникает ошибка: Terrasoft.Common.ArgumentNullOrEmptyException: Значение аргумента "format" не может быть пустым
в Terrasoft.Core.LDAP.LdapUtilities.LogInfo(String format, Object[] args)
в Terrasoft.Core.Process.SyncWithLDAPProcess.ScriptCheckInclusionExecute(ProcessExecutingContext context)
в Terrasoft.Core.Process.ProcessFlowElement.Execute(ProcessExecutingContext context)

Группы с орг структурой я связала

Скриншоты БП из журнала процессов https://yadi.sk/d/4RxVC_F_3Fy4vK https://yadi.sk/d/C8j4PvRZ3Fy5BB

С чем это может быть связано?

Нравится

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

Здравствуйте, Елена.

Выполните sql-скрипт:
select *
from SysLocalizableValue innerValue
where innerValue.SysSchemaId = (select Id from SysSchema where Name = 'SyncWithLDAPProcess')
and innerValue.SysCultureId = '1A778E3F-0A8E-E111-84A3-00155D054C03'

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

insert into SysLocalizableValue (
Id
, SysPackageId
, SysSchemaId
, ResourceManager
, SysCultureId
, ResourceType
, IsChanged
, [Key]
, Value
, ImageData)
select
NEWID()
, SysPackageId
, SysSchemaId
, ResourceManager
, '1A778E3F-0A8E-E111-84A3-00155D054C03'
, ResourceType
, IsChanged
, [Key]
, Value
, ImageData
from SysLocalizableValue lczValue
where lczValue.SysSchemaId = (select Id from SysSchema where Name = 'SyncWithLDAPProcess')
and lczValue.SysCultureId = 'A5420246-0A8E-E111-84A3-00155D054C03'
and not exists (
select 1
from SysLocalizableValue innerValue
where innerValue.SysSchemaId = (select Id from SysSchema where Name = 'SyncWithLDAPProcess')
and innerValue.SysCultureId = '1A778E3F-0A8E-E111-84A3-00155D054C03'
and innerValue.[Key] = lczValue.[Key]
)

После выполнения запроса выполните очистку Redis и перезапуск пула в IIS.

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

Коллеги, добрый день!
При добавлении почтового провайдера https://yadi.sk/i/qAZFt6NZ3Ff5du возникает ошибка https://yadi.sk/d/b6BHLNEd3Ff66r На форуме нашла похожий кейс, где советуют обновиться до последней версии. Но эта ошибка возникает на последней версии тройного бандла 7.9.1
Буду рада всем идеям и предложениям! Спасибо

Нравится

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

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

Данная проблема была выявлена в версии 7.9.1 и решена в 7.9.2.
Вы можете добавить почтовый провайдер в ручную через БД или обновиться до версии 7.9.2.
Скрипт с добавлением почтового провайдера прикрепляю.

INSERT INTO MailServer (
	CreatedById,
	ModifiedById,
	Name,
	Address,
	Port,
	UseSSL,
	EmailProtocolId,
	AllowEmailDownloading,
	AllowEmailSending,
	SMTPServerAddress,
	SMTPPort,
	SMTPServerTimeout,
	UseSSLforSending,
	TypeId,
	UseLogin,
	UseUserNameAsLogin,
	UseEmailAddressAsLogin)
VALUES(
	'410006E1-CA4E-4502-A9EC-E54D922D2C00',
	'410006E1-CA4E-4502-A9EC-E54D922D2C00',
	'name',
	'imap.xxxx.com',
	993,
	1,
	'65BEAF50-B599-4207-B6E2-586DFA9562A6',
	1,
	1,
	'smtp.xxxx.com',
	465,
	40,
	1,
	'844F0837-EAA0-4F40-B965-71F5DB9EAE6E',
	0,
	1,
	0)

Андрей, здравствуйте! Данное решение помогло, теперь вопрос следующий: все параметры для провайдера я указала (предоставил клиент), порты открыты, как говорит клиент, доступ к приложению открыт. Но добавить почту все равно не могу, ругается на неверный логин\пароль. Какие еще есть идеи есть на этот счет?

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

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

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

Коллеги, доброе утро! Возникла проблема с добавлением записи в раздел https://yadi.sk/d/ne2LkUft3FRdDw под администратором. В конфигурации проверили все настройки администрирования, также проверили все настройки в разделе "Права доступа на операции". С чем может быть связана данная ошибка?

Нравится

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

Коллеги! вопрос решен. Нашла на форуме статью с похожей проблемой

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