Телефоны, почта и адреса контрагентов: экспорт из 1С в файл и CRM

· 10 мин

Содержание

Выгрузить контакты из 1С быстрее всего так: откройте список контрагентов, нажмите Ещё → Вывести список, отметьте нужные колонки и сохраните результат в Excel. Если нужны телефоны и почта отдельными колонками, а не одной строкой, используйте универсальный отчёт или консоль запросов. Для переноса в другую базу 1С подходит XML, для CRM и рассылок — CSV.

Выбор зависит от трёх вещей: сколько полей нужно, куда пойдёт файл и есть ли у вас права администратора. Бухгалтеру хватит первых двух способов. Запросы и программная выгрузка — для тех, кто работает в базе с полными правами.

Какой способ выгрузки выбрать: сравнение

СпособЧто получитеКогда выбиратьОграничения
Вывод спискаТаблицу с колонками формы спискаНужны наименование, ИНН, видимые поляТелефоны и почта есть, только если выведены в форму
Универсальный отчётТаблицу с отбором и группировкамиНужны контакты с фильтрами по виду, группеНастройка 5–10 минут
Сохранение в CSV/TXTПлоский текстовый файлИмпорт в CRM, Google Контакты, рассылкиСледите за кодировкой и разделителем
Обработка XMLФайл обмена между базами 1СПеренос контрагентов в другую базу той же конфигурацииExcel его не прочитает
Консоль запросовЛюбой набор полей одной таблицейПолная выгрузка всех видов контактовНужны права на внешние обработки

Где 1С хранит контакты и что подготовить перед выгрузкой

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

  • 📞 Тип — телефон, адрес электронной почты, адрес, веб-страница, факс, другое;
  • 🏷️ Вид — например, «Телефон», «Юридический адрес», «Email для счетов»;
  • 📝 Представление — сам номер или адрес в читаемом виде.

Поэтому у одного контрагента может быть три телефона и две почты. При выгрузке «как есть» вы получите несколько строк на одного контрагента. Это нормально, ниже покажу, как свернуть их в одну строку.

Где искать контакты в разных конфигурациях:

КонфигурацияГде лежат организацииГде лежат контактные лица
Бухгалтерия предприятия 3.0Справочники → Покупки и продажи → КонтрагентыКарточка контрагента, ссылка «Контактные лица»
Управление торговлей 11CRM и маркетинг → Партнеры (телефоны и почта у партнёра)Карточка партнёра, контактные лица партнёра

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

Перед выгрузкой сделайте три вещи:

  1. Решите, нужны ли помеченные на удаление записи. Обычно нет.
  2. Определите, выгружаете вы только организации или ещё и контактных лиц.
  3. Переключите список из иерархического режима в плоский: Ещё → Режим просмотра → Список. Иначе в файл попадёт только текущая группа.

Быстрая выгрузка контактов списком в Excel

Этот способ работает в любой конфигурации на управляемых формах и не требует особых прав.

  1. Откройте список контрагентов (или партнёров в УТ).
  2. Установите отбор, если нужна часть базы: по группе, по признаку «Покупатель», по поиску.
  3. Нажмите Ещё → Вывести список.
  4. В окне отметьте колонки, которые нужны в файле. Флажок «Только выделенные» оставьте пустым, если нужен весь список.
  5. Нажмите «ОК». Откроется табличный документ.
  6. Сохраните его: Главное меню (значок с тремя полосками) → Файл → Сохранить как, тип файла — «Лист Microsoft Excel 2007 (*.xlsx)».

Если в списке нет колонок с телефоном и почтой, проверьте Ещё → Изменить форму: там видно, какие поля можно вывести в эту форму. Если контактов среди них нет — переходите к универсальному отчёту.

Плюс способа — скорость: 2 минуты на любой объём. Минус — выгружается только то, что видно в форме. Дополнительные телефоны и вторые адреса почты так не достать.

Универсальный отчёт: телефоны и почта контрагентов в одной таблице

Универсальный отчёт есть во всех конфигурациях на базе БСП. В БП 3.0 он находится в разделе Отчеты среди стандартных отчётов. В любой конфигурации его можно открыть через Главное меню → Все функции → Отчеты → Универсальный отчет.

Пункт «Все функции» включается так: Главное меню → Сервис → Параметры, флажок «Отображать команду “Все функции”».

Настройка:

  1. В шапке отчёта выберите тип объекта «Справочник», объект — «Контрагенты».
  2. В поле выбора таблицы укажите табличную часть с контактной информацией, если она предложена в списке. Без неё отчёт покажет только реквизиты шапки.
  3. Нажмите «Настройки» и перейдите в расширенный режим.
  4. На вкладке полей добавьте: наименование контрагента, ИНН, вид контактной информации, представление.
  5. На вкладке отборов поставьте «Тип» в списке «Телефон, Адрес электронной почты» и отбор «Пометка удаления = Нет».
  6. Сформируйте отчёт и сохраните через Файл → Сохранить как в xlsx.

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

Выгрузка контактов из 1С в CSV и текстовый файл

Табличный документ 1С сохраняется в xlsx, xls, ods, pdf, html, docx, mxl и txt. Отдельного варианта CSV в окне сохранения нет. Рабочая схема такая:

  1. Получите табличный документ любым способом из разделов выше.
  2. Сохраните его в xlsx.
  3. Откройте файл в Excel и выберите Файл → Сохранить как → CSV UTF-8 (разделитель — запятая).

Обычный пункт «CSV (разделитель — запятые)» в русской версии Excel на деле ставит точку с запятой и пишет файл в кодировке Windows-1251. Google Контакты и большинство облачных CRM ждут UTF-8. Выбирайте вариант с UTF-8, иначе вместо кириллицы будут «кракозябры».

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

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

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
|	КИ.Ссылка.Наименование КАК Контрагент,
|	КИ.Ссылка.ИНН КАК ИНН,
|	КИ.Вид КАК ВидКонтакта,
|	КИ.Представление КАК Значение
|ИЗ
|	Справочник.Контрагенты.КонтактнаяИнформация КАК КИ
|ГДЕ
|	НЕ КИ.Ссылка.ПометкаУдаления
|	И КИ.Тип В (ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон),
|				ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты))
|УПОРЯДОЧИТЬ ПО
|	Контрагент";

Выборка = Запрос.Выполнить().Выбрать();

Запись = Новый ЗаписьТекста("C:\Выгрузка\contacts.csv", КодировкаТекста.UTF8);
Запись.ЗаписатьСтроку("Контрагент;ИНН;Вид;Значение");

Пока Выборка.Следующий() Цикл
	Значение = СтрЗаменить(Выборка.Значение, ";", ",");
	Запись.ЗаписатьСтроку(СтрШаблон("%1;%2;%3;%4",
		Выборка.Контрагент, Выборка.ИНН, Выборка.ВидКонтакта, Значение));
КонецЦикла;

Запись.Закрыть();

В клиент-серверной базе код на сервере пишет файл на диск сервера 1С, а не вашего компьютера. Путь C:\Выгрузка\ должен существовать там, а у пользователя, под которым работает служба 1С, должны быть права на запись.

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

Перенос контрагентов в другую базу через XML

Когда контакты нужны не в Excel, а в другой базе 1С той же конфигурации, используйте обработку «Выгрузка и загрузка данных XML». Это внешняя обработка из набора стандартных обработок фирмы 1С, её версия должна соответствовать платформе 8.3.

Как выгрузить:

  1. Откройте обработку через Главное меню → Файл → Открыть. Платформа может показать предупреждение безопасности — подтвердите открытие, если файл получен из надёжного источника.
  2. На вкладке выгрузки отметьте справочник «Контрагенты». Для УТ 11 — ещё «Партнеры» и контактные лица партнёров.
  3. Укажите имя файла выгрузки.
  4. Нажмите «Выгрузить данные».

Контактная информация уйдёт вместе с контрагентом, потому что это его табличная часть. Обработка подтянет и связанные объекты: виды контактной информации, банковские счета, договоры, если на них есть ссылки.

Загружайте XML сначала в копию базы-приёмника. Обработка переносит объекты с теми же внутренними идентификаторами. Если в приёмнике уже есть контрагент с таким идентификатором, он будет перезаписан данными из файла.

Для баз разных конфигураций (например, из БП в УТ) этот путь не годится. Там нужна «Конвертация данных » или настроенная синхронизация.

Консоль запросов: выгрузить контакты из 1С со всеми полями

Консоль запросов — внешняя обработка для выполнения запросов в пользовательском режиме. Её открывают так же, через Файл → Открыть. Нужна роль, разрешающая интерактивное открытие внешних обработок: в типовых конфигурациях она есть у администратора.

Запрос из раздела про CSV можно вставить в консоль без изменений. Чтобы получить одну строку на контрагента, а телефон и почту в разных колонках, используйте группировку:

ВЫБРАТЬ
	КИ.Ссылка.Наименование КАК Контрагент,
	КИ.Ссылка.ИНН КАК ИНН,
	МАКСИМУМ(ВЫБОР
		КОГДА КИ.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон)
			ТОГДА КИ.Представление
		ИНАЧЕ ""
	КОНЕЦ) КАК Телефон,
	МАКСИМУМ(ВЫБОР
		КОГДА КИ.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.АдресЭлектроннойПочты)
			ТОГДА КИ.Представление
		ИНАЧЕ ""
	КОНЕЦ) КАК Почта
ИЗ
	Справочник.Контрагенты.КонтактнаяИнформация КАК КИ
ГДЕ
	НЕ КИ.Ссылка.ПометкаУдаления
СГРУППИРОВАТЬ ПО
	КИ.Ссылка.Наименование,
	КИ.Ссылка.ИНН

Если у контрагента два телефона, в колонку попадёт один из них. Когда важны все номера, оставьте первый вариант запроса без группировки и сверните строки уже в Excel сводной таблицей.

Ещё два приёма:

  • 👥 Контактные лица. В БП 3.0 это отдельный справочник «Контактные лица» со своей табличной частью контактной информации. В конструкторе запроса выберите таблицу Справочник.КонтактныеЛица.КонтактнаяИнформация и добавьте поле владельца контактного лица из реквизитов ссылки — так видно, к какой организации относится человек.
  • 🔎 Конструктор вместо ручного текста. Двойной клик по таблице в конструкторе покажет её реальные поля в вашей версии конфигурации. Это надёжнее, чем угадывать имена.

Результат выполнения консоль выводит в таблицу, которую сохраняют в xlsx так же, как отчёт.

Синхронизация контактов из 1С с CRM и почтовыми сервисами

Разовый перенос в CRM, Google Контакты, Outlook или сервис рассылок почти всегда идёт через CSV или xlsx. Порядок:

  1. Скачайте из системы-приёмника пример файла импорта или выгрузите из неё пару тестовых контактов. Так вы увидите точные названия колонок.
  2. Переименуйте колонки своей выгрузки под этот пример.
  3. Загрузите сначала 5–10 строк и проверьте, как легли поля.
  4. Только потом загружайте весь файл.

Типовое сопоставление полей:

Сопоставление полей
Наименование контрагента→Компания / Организация
ИНН→Дополнительное поле «ИНН» (создайте в CRM заранее)
Контактное лицо→Имя контакта
Телефон→Телефон (рабочий)
Адрес электронной почты→Email
Вид контактной информации→Метка или тип телефона

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

  • 🔌 Готовый модуль интеграции от разработчика CRM. У крупных CRM есть свои коннекторы к 1С, они ставятся как расширение или внешняя обработка.
  • 🌐 HTTP-сервис в 1С. Программист публикует сервис на веб-сервере, CRM забирает по нему изменения. Нужна публикация базы и доработка.
  • 📦 Обмен через файл по расписанию. Регламентное задание в 1С пишет CSV в общую папку, CRM его подхватывает. Простейший вариант на основе кода выше.

Телефоны и почта контактных лиц — это персональные данные физических лиц. Передача их в стороннюю CRM или сервис рассылок должна опираться на законное основание по 152-ФЗ. Для рекламных рассылок нужно согласие получателя.

Ошибки при выгрузке контактов и как их исправить

Вместо кириллицы в файле непонятные символы. Кодировка не совпала. Для CSV выбирайте UTF-8. Если файл уже в Windows-1251, откройте его в Excel через Данные → Из текстового/CSV-файла и укажите кодировку вручную.

Телефоны превратились в числа вида 7,9E+10. Excel распознал номер как число. При импорте CSV задайте колонке телефона формат «Текстовый». В исходной выгрузке храните номер в виде +7 900 000-00-00 — с пробелами Excel не примет его за число.

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

В выгрузку попали группы и удалённые. Добавьте в отбор «Это группа = Нет» и «Пометка удаления = Нет». Если запрос строится по самому справочнику, а не по его табличной части, добавьте условие НЕ Контрагенты.ЭтоГруппа.

Консоль запросов не открывается: нет прав. У пользователя нет роли на открытие внешних обработок. Попросите администратора базы выполнить выгрузку или выдать роль временно.

Один и тот же номер у десятка контрагентов. Это не ошибка выгрузки, а грязь в справочнике: при заполнении скопировали карточку. Перед импортом в CRM удалите дубли в Excel через Данные → Удалить дубликаты.

Частые вопросы о выгрузке контактов

Можно ли выгрузить контакты из 1С в формате vCard для телефона?
Штатной выгрузки в vCard в типовых конфигурациях нет. Выгрузите CSV, загрузите его в Google Контакты, а оттуда контакты синхронизируются на телефон.
Выгрузятся ли контакты из базы в облаке 1С:Фреш?
Да. Вывод списка и универсальный отчёт работают в веб-клиенте так же. Файл сохраняется на ваш компьютер через браузер.
Как выгрузить только покупателей без поставщиков?
В БП 3.0 установите в списке отбор по группе контрагентов, если покупатели в ней собраны. Иначе отберите тех, по кому есть документы реализации за период, отчётом по продажам и сопоставьте с выгрузкой по ИНН.
Сколько контактов можно выгрузить за раз?
Жёсткого лимита нет. Список на 20–30 тысяч строк формируется за минуту-две. На больших объёмах быстрее работает запрос, чем вывод списка.
Выгружаются ли адреса в разбивке на индекс, город и улицу?
Поле «Представление» даёт адрес одной строкой. Разбивка на части хранится в служебных полях табличной части; для неё нужен запрос программиста или разделение строки в Excel.

Источники

  • Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных»