Доброго дня, вивчаю демо версію СРМ і в мене з'явилося запитання. Як додати колонку в контактах, щоб можна було відобразити інші телефони(мається на увазі саме ті телефони які були створені додатково в засобах зв'язку)

 

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

Нравится

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

Доброго дня!



Ви можете додати на сторінку контакта нове поле телефону і записувати ще один телефон туди, тоді це поле ви зможете вивести у списку. 





Однак, на жаль, вивести в список телефони, що додані через опції комунікації як "Інший телефон" не можна. 



Як обхідне рішення, ви можете створити бізнес процес, що буде копіювати автоматично значення з опцій комуцікації в окреме поле на сторінці контакта. 



З повагою, 

Антон 

 

Anton Starikov Дякую

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

Добрый день коллеги!

 

Ищу информацию о системной настройке "Order of first/last names".

Несколько вопросов:

1. Данная настройка отражает:

  • как будет заполнено значение в колонке полного имени (Name) контакта,
  • как будут заполнены колонки Surname, GivenName и MiddleName,
  • действительны оба пункта?

2. При изменении настройки на паттерн, не включающий Middle Name, каким будет значение Name для записей, у которых не пустое значение в колонке Middle name?

 

Заранее благодарю за ответ!

Нравится

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

Добрый день!

 

Да. Оба пункта действительны. При изменении Last name или Middle name или First name, изменяется поле Full name и наоборот. 

 

Логика разделения ФИО контакта на Surname GivenName MiddleName настривается системной настройкой ContactFieldConverter, выбором необходимого с# конвертера, которые находятся в таблице ShowNamesBy.

 

В базовой функциональности существуют два конвертера First name [Middle name] Last name и Last name, First name [Middle name]. 

Оба шаблона включают Middle Name.

 

Указанные поля заполняются автоматически на основании данных, которые внесены в поле ФИО, с учетом разделителей. В качестве разделителя система распознает пробел и . , ;



Для заполнения по умолчанию используется конструкция "Фамилия, Имя и Отчество" и разделяется на "Имя" и "Фамилия" согласно формата ФИО (Фамилия Имя Отчество).

 

Правило, которое установлено в системной настройке ContactFieldConverter будет распространятся на новые или редактируемые контакты.

 

 

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

Как востановить удаленный контакт?

Нравится

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

Добрый день! 



Восстановить контакт можно только из бэкапа БД.

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

Добрый день, коллеги! Хотел узнать есть ли возможность переопределить командную строку, чтобы отображать реестр КОНТАКТ не по отображаемому полю ФИО, а по полю МОБИЛЬНЫЙ ТЕЛЕФОН.

 

Попытался переопределить метод getFilters в ContactSectionV2, но при открытие переходит раздела КОНТАКТЫ он вновь сбивает и делает по ФИО. Добавил в раздел КОНТАКТЫ колонку (секцию) МОБИЛЬНЫЙ ТЕЛЕФОН, но все равно переходит на ФИО.

Пример взял отсюда:

https://community.terrasoft.ru/questions/kastomizaciya-stroki-poiska-co…

 

После попробовал переопределить первичную колонку по этому примеру, но при открытие и фильтр отрабатывает корректно, но при открытие любой карточки требует обязательного заполнения МОБИЛЬНЫЙ ТЕЛЕФОН:

https://community.terrasoft.ru/questions/komandnaya-stroka

 

Может кто-то решил подобную проблему?

 

 

 

Нравится

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

Добрый день, Алексей!

В указанном вами примере в коде переопределённого метода есть условие на выполнение фильтра 

if (emailFilter && emailFilter.includes("@")). Скорее всего следует копать именно в этом месте, поскольку вместо вашего фильтра используется базовый.  Рекомендую сделать что-то наподоби регулярного выражения на номер телефона, вместо наведённого в примере символа "@".

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

Общий салют! Как/ или откуда подтягиваются данные в блок mainHeader? Интересует взаимодействие с ФИО контакта (id: MainHeaderSchemaPageHeaderCaptionLabel), которое расположено в шапке на странице любого контакта (здесь это Accom).Изображение удалено.

Нравится

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

Добрый день.

 

Посмотрите в схеме карточки BasePageV2 (пакет NUI) реализацию функции getPageHeaderCaption.

Добрый день.

 

Посмотрите в схеме карточки BasePageV2 (пакет NUI) реализацию функции getPageHeaderCaption.

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

Добрый день,

 

подскажите пожалуйста, столкнулись с неизвестной ошибкой получения данных о контакте используя протокол 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.Х-интерфейсе были и страницы) это уже не обязательно, достаточно, чтобы опубликовалась любая.

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

Добрый день!

Подскажите как можно добавить фото Контакта и Контрагента в реестр и на страницу в мобильной версии Creatio.

Нравится

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

Так стандартно фото есть и в реестре, и в карточке:

scr_mobile_overview_main_wizard.pngscr_mobile_overview_look_inside.png

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

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

Доброго дня. 

Есть в системе Контрагент, и есть Контакт у этого Контрагента.



И есть ответственный, как у Контрагента, так и у Контакта.



Однако, если у Контрагентов один Ответственный - это ведущий менеджер, то у Контактов пользователь Supervisor.



Как бы привести в соответствие ответственных из Контрагента в Контакты. Не в ручную, а автоматизированно. 

 

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

Если это так, то подскажите, какая документация может помочь? 

Или если не бизнес-процессы, то что? 

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

Нравится

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

Добрый день!

Ответственный у контрагентов и контактов - это тот, кто создал контрагент и контакт.

Привести в соответствие по вашему описанию можно скриптом в базе, например:

update c
set OwnerId = a.OwnerId
from Contact as c
join Account as a on c.AccountId = a.Id
 
либо (в зависимости от связи)
 
update c
set OwnerId = a.OwnerId
from Contact as c
join Account as a on c.Id = a.PrimaryContactId

Но, при создании новых контрагентов или контактов владельцы все равно будут проставлены по описанной выше логике. Так что надо будет либо сделать периодический бизнес процесс по обновлению, либо процесс по сигналу создания объекта (контрагента или контакта).

Добрый день!

Ответственный у контрагентов и контактов - это тот, кто создал контрагент и контакт.

Привести в соответствие по вашему описанию можно скриптом в базе, например:

update c
set OwnerId = a.OwnerId
from Contact as c
join Account as a on c.AccountId = a.Id
 
либо (в зависимости от связи)
 
update c
set OwnerId = a.OwnerId
from Contact as c
join Account as a on c.Id = a.PrimaryContactId

Но, при создании новых контрагентов или контактов владельцы все равно будут проставлены по описанной выше логике. Так что надо будет либо сделать периодический бизнес процесс по обновлению, либо процесс по сигналу создания объекта (контрагента или контакта).

Сидоров Александр В.,

То есть в бизнес-процесс можно зашить этот скрипт?

Bogdan Zozulya,

Да, можно. Элемент "Задание сценарий", в нем вызов CustomQuery

Можно, но не нужно. Внутри БП для этого есть более подходящие способы: элементы чтения и изменения данных или работа в скрипте с EntitySchemaQuery.

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

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

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

Bogdan Zozulya,

С документацией по настройке бизнес-процессов можете ознакомиться по этой ссылке на Академии и более подробно по работе с данными здесь.

Алла Савельева,

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

Можно сделать два отдельных механизма: один — для разового запуска в начале, другой — постоянно готовый сработать БП на событии изменения поля «Ответственный» контрагента: получаем значение поля и элементом изменения данных меняем ответственного во всех контактах, у которых указан этот контрагент.

Bogdan Zozulya,

Если возникнут дополнительные вопросы, спрашивайте - с радостью помогу.

Алла Савельева,

Спасибо, пожалуй воспользуюсь. Вот здесь как указать чтобы он взял данные из Ответственного в Контрагенте? 

Сидоров Александр В.,

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

В зависимости от того, как связаны интересующие контакты с контрагентом: по полю в контрагенте «Основной контакт» или наоборот, по полю в контакте «Контрагент».

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

Понял, внимательно изучил, второй вариант, по полю «Контрагент» в «Контакте». Выходит второй вариант скрипта. верно?  

update c
set OwnerId = a.OwnerId
from Contact as c
join Account as a on c.Id = a.PrimaryContactId
Показать все комментарии

Добрый день!
На странице редактирования лида при вводе в поле контакт имени контакта система предлагает создать новый. И если нажать на "Создать", то сразу же создастся контакт с введенным именем в поле.
Стоит задача, что бы после нажатия "создать" открывалась страница контакта, и можно было дополнять данные уже на странице контакта.

Немогу словить в каком модуле реализовано создание контакта, да и в модуле ли вообще оно реализовано? ВОзможно кто-то решал подобное?
Есть конечно один вариант, при котором будет открываться страница контакта - это в обьекте Контакт сделать какое-то поле обьязательным на уровне приложения. Но это не выход...

Нравится

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

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

Функциональность создания новой записи из справочника реализована в LookupQuickAddMixin.

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

За эту функциональность отвечает фича UseSilentCreation.

"Demchenko Olha" написал:

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

Функциональность создания новой записи из справочника реализована в LookupQuickAddMixin.

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

За эту функциональность отвечает фича UseSilentCreation.

Ольга, спасибо!

Я, как раз перед Вашим ответом нашел нужный модуль LookupQuickAddMixin :smile:
Заместил его, и добавил необходимое условие, чтобы срабатывал метод openPageForNewEntity.
Все работает корректно!

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

В 7.16 карточка лида выглядит уже не так, как в первом сообщении темы. Возможно, и логика менялась. Где именно вводите и создаётся запись?

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

Здравствуйте! Подскажите, пожалуйста, как добавить JS событие при сохранении контрагента/контакта?
Вот кусок кода на странцие:

methods: {
fir: function()
{
if (this.get("UsrKey").checked)
{
this.set("UsrLoyaltyOfContact", "Лояльно");
}
else
{
this.set("UsrLoyaltyOfContact", "Не определено");
}
}

}

UsrKey - Boolen Checkbox, UsrLoyaltyOfContact - Справочник.

Не могу разобраться, куда подвесить событие?

Нравится

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

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

Что-то похожее ранее обсуждалось здесь.

Вам необходимо переопределить метод onSaved в секции methods схемы страницы редактирования

                        // Переопределение базового метода Terrasoft.BasePageV2.OnSaved.
			// Выполняет постобработку сохранения записи
			onSaved: function(response, config) {
				// Вызов родительской реализации.
				this.callParent(arguments);
                                //Вызов Вашего метода
                                fir();
			}
Показать все комментарии