Подстановка Контрагента в карточку контакта

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

В карточке контакта есть поле "Email"
В карточке контрагента есть поле "Домен e-mail"

Нужно реализовать следующую задачу: если при создании контакта в карточке не был указан контрагент, то он определился по Домену e-mail.

Например:
В системе создан контрагент "Компания", у которого "Домен e-mail" указан "gmail.com"
Cоздали контакт "Иванов Иван", у которого указали почту "123@gmail.com" и не указали контрагента. После добавления записи, контрагент должен подставиться автоматически, то есть "Компания"

Создан БП, который должен запускаться при создании контакта и если в карточке контакта не указан контрагент. В качестве начального события используется Сигнал (если добавлен контакт), далее элемент Чтение контакта (считываем данные добавленного контакта). Далее нам нужно найти контрагента, чей домен содержится в e-mail клиента.

Как это реализовать? Ведь я от контакта получаю почту "123@gmail.com", а в домене контрагента указан gmail.com

Нравится

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

"Гольфельд Елена Андреевна" написал:В карточке контрагента есть поле "Домен e-mail"

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

поле "Домен email" это постоянное поле? или данное поле создано в средствах связи контрагента. поясните данный момент.

"Гольфельд Елена Андреевна" написал:Как это реализовать? Ведь я от контакта получаю почту "123@gmail.com", а в домене контрагента указан gmail.com

а в этом вам поможет следующая документация с сайта Майкрасофт. String.Split

т.е вам Елена после получения емайл его нужно распарсить (разделить на части) и полученный домен сравнить с доменом контрагента. вот решение вашего вопроса.

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

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

В системе такая логика реализована при загрузке писем в систему - на деталь "Участники активности" добавляются контакты, у которых на детали средство связи есть записи, которые совпадают со значениями в поле "От кого", "Кому", "Копия". Поскольку в email приходят значения вида test@test.test<'Test email user'>, то данное выражение по регулярному выражению преобразовывается в email вида test@test.test. И уже после преобразования значения сравниваются.

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