Как в 1с найти контрагента по электронной почте
Всем привет! Данный материал посвящен описанию базовых возможностей работы с контактной информацией в конфигурациях, содержащих "Библиотеку стандартных подсистем" (БСП). Данная статья будет полезна для разработчиков, программистов и всех тех, кто решился не придумывать свои "разработки - велосипеды" для работы с контактной информацией, а взять уже готовое. Статья призвана экономить ваше время и повысить эффективность разработки.
Итак, перехожу к разделу получения контактной информации объектов с помощью БСП:
Получение контактной информации объектов
Чтобы получить полную контактную информацию контрагента, организации, партнера можно воспользоваться функцией:
КонтактнаяИнформацияОбъекта(СсылкаИлиОбъект, ВидКонтактнойИнформации = Неопределено, Дата = Неопределено, ТолькоПредставление = Истина) Экспорт
В данном примере, получаем полную контактную информацию на текущую дату. При установленном параметре ложь, будет возвращаться ТаблицаЗначений со всей контактной информацией.
В следующем примере вернем фактический адрес контрагента строкой:
Так же существует схожая функция, производящая получение контактной информации для нескольких ссылок или объектов одновременно:
Функция КонтактнаяИнформацияОбъектов(СсылкиИлиОбъекты, Знач ТипыКонтактнойИнформации = Неопределено, Знач ВидыКонтактнойИнформации = Неопределено, Дата = Неопределено) Экспорт
В данной функции ТипыКонтактнойИнформации и ВидыКонтактнойИнформации - массивы, содержащие необходимые типы и виды контактной информации. Функция возвращает таблицу значений по "фильтру" входящих параметров.
Пример использования такой:
Вышеперечисленные функции можно использовать в связке с "индивидуальными" функциями конфигураций по получению информации об организации и контрагентах. Частично об "индивидуальных" функциях я изложил материал вот здесь .
Теперь, давайте посмотрим немного глубже в результаты вышеуказанных функций. Строка возвращаемой таблицы значений выглядит вот так:
Рис.1. Строка таблицы значений контактной информации.
Обратим внимание на колонку Значение - это строка в формате json, выглядит она вот так:
Рис.2. Формат json в колонке Значение.
Сейчас, я хочу преобразовать эту json-строку в структуру для дальнейшего использования. Сделаю это стандартными методами БСП, воспользуюсь функцией:
Функция СтрокуJSONВСтруктуру(Значение) Экспорт
Доработанный код будет выглядеть вот так:
Переменная ААА - содержит структуру по входящей строке json. Выглядит это вот так:
Рис.3. Преобразованная json в структуру.
Здесь, я ничего не придумываю, использую только типовые функции и процедуры БСП и получаю требуемую контактную информацию "по полям" в удобном виде.
Пожалуй, с базовыми вариантами получения контактной информации мы разобрались - можем смело применять. Теперь, перейдем к разделу преобразование контактной информации объектов в разные форматы.
Преобразование контактной информации объектов
В данном разделе рассмотрим несколько полезных функций, позволяющих стандартно конвертировать контактную информацию в разные форматы - xml, json.
Сначала рассмотрим функцию, которая позволяет получить контактную информацию в формате xml
Функция КонтактнаяИнформацияВXML(Знач ЗначенияПолей, Знач Представление = "", Знач ОжидаемыйВид = Неопределено) Экспорт
В качестве входящего параметра ЗначенияПолей, я обычно передаю структуру по заполненным ключам. Представление я не заполняю, а в качестве ожидаемого вида - перечисление с типом контактной информации.
Рассмотрим пример работы с данной функцией, предварительно доработав предыдущий пример:
В качестве результата в переменную ККК возвращается XML-структура, согласно схемы пакетов КонтактнаяИнформация или Адрес.
Рис.4. Преобразованная структура в XML-строку.
Еще один пример с телефоном:
В переменную ТелефонXML возвращается XML строка вот такого содержания:
Рис.5. XML-строка с типом "Номер телефона".
Преобразование структуры "телефона" идет по такой типовой схеме:
Теперь, преобразуем полученную строку XML в строку JSON, доработаем код процедуры:
Полученный ТелефонJSON такой:
Рис.6. JSON-строка с типом "Номер телефона".
Его так же можно преобразовать в структуру с помощью вышеуказанной функции
Функция СтрокуJSONВСтруктуру(Значение) Экспорт
Так, базовые вещи с преобразованием контактной информации я описал. Теперь, переходим к разделу записи контактной информации объектов.
Запись контактной информации объектов
В данном разделе я рассмотрю базовую процедуру добавления контактной информации по ссылке
Процедура ДобавитьКонтактнуюИнформацию(СсылкаИлиОбъект, ЗначениеИлиПредставление, ВидКонтактнойИнформации, Дата = Неопределено, Замещать = Истина) Экспорт
Доработаем наш пример:
Данным кодом мы добавляем нужный нам телефон (Истина - замещает, Ложь - добавляет второй телефон). ТелефонJSON - ранее сформированная нами строка-json. Выглядит это вот так:
Рис.7. Результат добавления "Номера телефона" в карточку контрагента с помощью возможностей БСП.
В данном примере номер телефона "красиво разложен" по полям. Хорошо, переходим к заключению.
Заключение
В данной статье, я постарался обозначить основные правила и методы работы с контактной информацией в рамках библиотеки стандартных подсистем конфигурации. Я описал чтение, преобразование и запись контактной информации объектов.
Надеюсь, что данная информация будем вам полезна, применение данных стандартных методов позволит вам экономить ваше время на разработку ваших решений.
Примеры данной статьи я реализовывал на Платформе 1с 8.3.17.1549, конфигурации Розница 2.3.5 с включенной БСП 3.1.2.457.
Если вам интересен мой практический подход и информация, которую вы сможете реально использовать, если у вас есть желание, чтобы данный комплекс статей наполнялся практическими материалы для программистов - я не откажусь от поддержки как данной статьи, так и всего комплекса статей в целом.
Всем спасибо за прочтение, до новых встреч!
Предыдущие материалы
Так же, я прошу посмотреть мои предыдущие статьи, посвященные базовым возможностям типовых конфигураций:
Расширение позволяет быстро подбирать контрагентов в ЛЮБЫЕ документы путем ввода телефона или адреса электронной почты.
- Бухгалтерия предприятия 3.0
- Управление торговлей 11.4, 11.5
- Управление торговлей 3 (KZ) *
- Комплексная автоматизация 2.4 (KZ) *
- Управление торговлей 3 (BY) **
- Комплексная автоматизация 2.4 (BY) **
- Управление предприятием ERP 2.4, 2.5
- Комплексная автоматизация 2.4, 2.5
- Управление нашей фирмой 1.6
- Бухгалтерия для Казахстана 3.0
Наверняка, у вас есть много вопросов относительно оплаты (как оплатить, как получить разработку, не возникнут ли проблемы и т.п.).
Ответы на самые распространенные вопросы, относящиеся к процессу покупки моих разработок, приведены на странице заказа. Для перехода к ней нажмите Оплатить картой или Заказать счет .
Там же вы найдете мои контакты, на случай если останутся вопросы.
Быстрый ввод в документах
Функционал типовых конфигураций 1С работает таким образом, что подбор контрагентов в документы можно осуществлять как подбором из справочника, так и путем быстрого ввода. Причем для последнего варианта вводить можно только наименование (и ИНН в Бухгалтерии 3.0). Однако нередко информации о наименовании и ИНН перед глазами нет, зато есть номер телефона (или адрес электронной почты) контрагента. И задача в таком случае состоит в том, чтобы при вводе контактных данных подставлялась соответствующую карточка контрагента. Именно эту задачу и решает данный продукт.
Покажу на примере. Допустим, есть контрагенты с заполненными контактными данными (почта и/или телефон):
При заполнении ЛЮБОГО документа в поле выбора контрагента вводим телефон, в результате в списке выбора отображается нужный контрагент:
При вводе почты все аналогично (причем можно вводить почту как полностью, так и частично):
Если для контрагента заведено контактное лицо и у него заполнена информация о телефоне и/или почте, то можно при заполнении документов указывать эти контактные данные, в результате также будет определен нужный контрагент:
Поиск в списках документов
Для поиска нужных контрагентов по контактам в списках документов вполне хватит возможностей типового функционала - необходимо сначала на форму добавить нужный отбор:
На вкладке Отбор раскрыть реквизит Партнер (для Бухгалтерии - Контрагент) и указать какое поле нас интересует для отбора - Телефон или Адрес электронной почты:
После добавления нужного отбора на форму можем без проблем искать нужных контрагентов:
Обращаю ваше внимание, что для корректной работы расширение необходимо подключать с отключением безопасного режима:
Вас может заинтересовать
Расширение для типовых конфигураций 1С:Предприятие 8.3, позволяет легко настроить учет согласований (утверждений) произвольных справочников и документов
В данной статье показано, как настроить отправку электронной почты из 1С:Предприятие 8.3 (на примере Бухгалтерии предприятия 3.0), а также осуществлена отправка письма с вложением печатных форм счета на оплату покупателю
В данной статье показано, как нужно делать прикрепление файлов произвольного формата к документам и справочникам 1С:Предприятие 8.
При выборе Документа в 1с выдаётся ошибка:
: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить().Выбрать();
по причине:
<(9, 22)>: Поле не найдено "КонтактнаяИнформация.Объект"
КонтактнаяИнформация.>Объект = &Объект.
Как правильно переписать код? И что такое КонтактнаяИнформация.Объект = &Объект", не могу разобраться. Помогите, пжл
З.Ы.: я так понимаю в Регистре Сведений Контактной информации нет. Не нашёл такой регистр
Выбрать и адрес, и телефон, и ящик из контактной информации
Привет. У меня тут снова вопрос родился. Мне надо получить контактную информацию(адрес, телефон и.
Порядок типов контактной информации в карточке контрагента
Всем доброго времени суток. В 1С 8.2, УТ10.3, в карточке контрагента есть вкладка контактная.
Добавление Окна Ввода Контактной Информации В Документ.
Здравствуйте, имеется Управление торговлей, редакция 11.0 (11.0.8.11) . Скажите пожалуйста как.
Выборка контактной информации из запроса
Доброго времени суток. в УТ 10.3 написал следующие строки выборки контактной информации из запроса.
vitek944, у вас запросы к совершенно разным объектам: в книге в регистру сведений, в вашей коде - к табличной части справочника Контрагенты. Там точно есть поле Объект?
GreenkA, в З.Ы. написал что обращаюсь в справочнику, т.к. регистра такого нет. А вот как узнать есть объект или нет? Литературы в инете много, а вот с толковой беда если честно.
Сложно ответить не видя конфигурацию, м.б. в вашей конфигурации регистр КонтактнаяИнформация как-нибудь иначе называется?Посмотрите куда записывается эта информация при записи справочника, в какие регистры
https://yadi.sk/d/c7a4agDcEfd98g Конфигурация УТ (демо). Мной добавлялись только: справочник Автомобили, Журнал и Документ "Развозка"
Если у кого есть стоящая литера по 1С (именно чтоб разжёвывалось "что, откуда берётся и куда вставляется") присылайте названия, буду благодарен. В инете то книг много и на форуме много, только всё поверхностно описано. Так же как и в данном случае
Решение
Рядом нет компа, но “обьект” - это Измерение в РегистреСведений КонтактнаяИнформация, в котором содержится ссылка на Контрагента.
Тип и Представление - это тоже измерения того же регистра, например, "Тип" (Перечисления.ТипыКонтактнойИнформации.Телефон), "Вид" (ссылка на запись в справочнике "Справочники.ВидыКонтактнойИнформации" или Строка).
Т.е. выбираются записи из регистраСведений.КонтактнаяИнформация, где измерение Объект=Ссылке, которую вы передаете при выполнении функции - Функция ПолучитьАдресКонтрагента(Объект)
Вы же ищите по справочнику, в котором возможно нет поля Объект , есть реквизит “ссылка” на контрагента
Реквизиты Тип и Вид могут тоже отсутствовать
Hh_Anna, в УТ нет такого регистра сведений. Об этом уже написали выше. Все хранится в соответствующих табличных частях объекта.
Справочник "Контрагенты", каждый задавал вопрос (особенно бухгалтер или другой пользователь 1С-базы), как найти контрагента, зная только его Е-майл, или контактный телефон, или адрес, или прочий контакт.
Так вот выход есть, если приделать не большую штукенцию
В конфигураторе находим справочник "Контрагенты" обычно у всех есть ФормаСписка вот его и редактируем
- Создаем поле в данном случае "Контракт_" (Строка, 100)
- В событиях добавляем процедуру "ОкончаниеВводаТекста" процедуру "ТекКонтракт_" и создаем процедуру
- Вставляем уже готовый написанный код и все готово.
Да, у меня стандартная конфигурция УТП. т.е. по идее все остальные примочки для поиска уже должны быть, и самое главное при поиске контактной информации "ТИПдляПоискаДанных" должно стоять наименование. иначе будет ошибка.
Писал на скорую руку, за 10 минут.
Специальные предложения
Просмотры 12878
Загрузки 35
Рейтинг 6
Создание 17.05.12 12:02
Обновление 17.05.12 12:02
№ Публикации 128308
Тип файла Архив с данными
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Не указано
См. также
TextRadar - нечеткий поиск в тексте Промо
В отличие от нечеткого сравнения строк, когда обе сравниваемых строки равнозначны, в задаче нечеткого поиска выделяются строка поиска и строка данных, а вычислить необходимо не степень похожести двух строк, а степень присутствия строки поиска в строке данных. Нормированный коэффициент, находящийся между 0 и 1 позволяет отсечь заведомо низкие результаты, организовать поиск по синонимам и т.д. Наглядное отображение результатов в кратком и детальном виде поможет быстро найти интересующий фрагмент.
1 стартмани
19.09.2018 26422 33 TSSV 19
AllContacts
Универсальное расширение для централизованного управления контактами. Позволяет организовать хранение, упорядочивание и использование контактной информации объектов информационной базы в едином рабочем пространстве.
5 стартмани
19.04.2022 1706 1 the1 7
Расширяем возможности типового поиска номенклатуры для конфигурации УТ 11.4
Данная доработка позволит вам расширить поиск по типовому справочнику номенклатуры конфигурации УТ .
3 стартмани
18.12.2021 3091 1 quazare 5
Клиент системы взаимодействия (альтернативный), обычное и управляемое приложение
Универсальное расширение "Взаимодействие". Расширение предназначено для встраивания в любую конфигурацию на платформе 8.3 (начиная с версии 8.3.15 и новее).
10 стартмани
10.12.2020 7151 10 33lab 13
Автоматизация отдела продаж - CRM конфигурация для небольшой компании Промо
Вам нужна несложная и многофункциональная автоматизированная система управления продажами для автоматизации отдела продаж? Наша CRM Система поможет Вам! Внедрение займет не более 15 минут. A-CRM - быстрая и безболезненная автоматизация отдела продаж. Без лишних затрат и сложностей. Интеграция с 1С Бухгалтерией 3 и 1С УТ 11.
3 стартмани
05.03.2018 34936 65 user718500 20
Поиск неиспользуемых экспортных методов (процедур и функций) общих модулей
Обработка "Поиск неиспользуемых экспортных методов общих модулей" предназначена для выполнения поиска неиспользуемых экспортных методов (процедур и функций) общих модулей в конфигурациях, разработанных на платформе "1С: Предприятие 8.х".
1 стартмани
27.10.2020 5521 6 tezin 29
Ускоряем поиск по акцизной марке ЕГАИС в 1С:Розница 2.3.5
Ускоряем поиск по акцизной марке ЕГАИС (для целей эксперимента было сгенерировано 1 000 000 кодов акцизных марок ЕГАИС нового формата).
1 стартмани
28.07.2020 10255 5 RocKeR_13 5
10 стартмани
13.04.2020 11995 22 MikeI 11
Универсальный поиск объектов по глобальному уникальному идентификатору (ГУИД, GUID) Промо
Универсальная обработка поиска объектов информационной базы по глобальному уникальному идентификатору (ГУИД, GUID) или по его части.
1 стартмани
06.09.2016 42646 118 Dzenn 9
Поиск пересекающихся ссылок на комбинации объектов с ограничением области поиска по метаданным
Обработка ищет все объекты базы, в которых одновременно присутствуют перечисленные элементы. Построена на базе типовой обработки Все функции - Стандартные - Поиск ссылок на объект, но позволяет накладывать отбор не по одному объекту, а по нескольким, что позволяет настраивать поиск по комбинациям условий. И ограничивать область поиска.
1 стартмани
12.03.2020 11812 18 sapervodichka 18
Мастер полнотекстового поиска
Набор инструментов для работы с полнотекстовым индексом платформы 1С. Стандартные и расширенные возможности.
2 стартмани
07.02.2020 19829 186 YPermitin 32
Сценарное сравнение данных (версия 1.5.12)
Прикладное решение Сценарное сравнение данных (ССД) предназначено для автоматизации процесса поиска расхождений в данных.
1 стартмани
18.08.2019 10493 24 sertak 23
Мульти рассылка СМС из 1С для типовых и нетиповых конфигураций, на управляемых и обычных формах Промо
1 стартмани
03.02.2015 50263 447 Diversus 103
Подсистема для выгрузки, быстрого поиска и анализа журнала регистрации 1С в Elasticsearch
Elasticsearch - это opensource решение для очень быстрого поиска данных в больших массивах информации. Использование этого решения позволит решить проблемы с поиском и анализом больших объемов информации журнала регистрации. Протестировано на платформах начиная с 8.3.10.2580.
5 стартмани
15.05.2019 17044 33 Nikolo17 14
Поиск и чистка битых ссылок в регистрах сведений и накоплений 8.3
Данная обработка позволяет чистить устаревшие битые записи в регистрах сведений и накоплений. Я не затрагиваю в ней регистр бухгалтерии, так как там удаление любой записи может быть критичным для баланса. Бухгалтеры иногда готовы терпеть любые ссылки на удаленные раннее из базы объекты, лишь бы баланс сходился, даже если битая ссылка не может пролить свет на её происхождение.
1 стартмани
04.05.2019 13384 126 AlexandrSmith 2
1С и Битрикс24, загрузка и прослушивание звонков в 1С. Интерактивно и через регламентное задание. Инициирование звонка битрикс из 1с (секретные команды).
1С и Битрикс24, загрузка звонков, прослушивание в 1С. Распознавание партнеров, сотрудников, Контактных лиц. Отображается звонок во взаимодействиях карточки партнера. Добавлены коды битрикс из командной строки. Если запущено приложение для звонков битрикс, может инициировать звонок из 1с, хотя в API такой функции нет
Внешняя обработка для поиска клиента и контактного лица контрагента по телефону или е-майл для УТ 10.3. Работает по вхождению строки. По любой маске телефона. Исключаемые символы: пробел, скобки, дефис
Поиск осуществляется по РегиструСведений КонтактнаяИнформация.
Телефон и E-mail ищется по конструкции "ПОДОБНО" и знаки процентов "%".
Вверху дополнительный фильтр по наименованию, контрагента или контактного лица по вхождению. Работает совместно с поиском по телефону или эл. адресу.
Протестировано на релизе УТ 10.3.60.1
Возможно, будет работать (с минимальными доработками) на КА 1.1 и УПП 1.3, регистр Контактная информация там аналогичной структуры.
Специальные предложения
Просмотры 2115
Загрузки 1
Рейтинг 2
Создание 02.06.21 08:00
Обновление 02.06.21 08:00
№ Публикации 1451900
Операционная система Не имеет значения
Страна Россия
Доступ к файлу Абонемент ($m)
Код открыт Да
См. также
TextRadar - нечеткий поиск в тексте Промо
В отличие от нечеткого сравнения строк, когда обе сравниваемых строки равнозначны, в задаче нечеткого поиска выделяются строка поиска и строка данных, а вычислить необходимо не степень похожести двух строк, а степень присутствия строки поиска в строке данных. Нормированный коэффициент, находящийся между 0 и 1 позволяет отсечь заведомо низкие результаты, организовать поиск по синонимам и т.д. Наглядное отображение результатов в кратком и детальном виде поможет быстро найти интересующий фрагмент.
Читайте также: