Справочники и Данные · 11 мин
Где в 1С хранятся адреса контрагентов
Где в 1С хранятся адреса контрагентов: табличная часть «Контактная информация», регистр сведений, JSON-формат значений. Как найти, выгрузить и отредактировать адреса.
Адреса контрагентов в типовых конфигурациях 1С (Бухгалтерия предприятия, Управление торговлей, ERP, Комплексная автоматизация) не хранятся в отдельных реквизитах справочника «Контрагенты». Они размещаются в универсальном механизме контактной информации, который обслуживает сразу несколько объектов: контрагентов, партнёров, физических лиц, организации, склады и другие справочники.
Физически адрес — это строка табличной части «КонтактнаяИнформация» справочника «Контрагенты» (или регистра сведений «КонтактнаяИнформация» в конфигурациях, где справочник «Партнёры» отделён от контрагентов). Каждая строка содержит вид контактной информации (юридический адрес, фактический адрес, почтовый адрес), представление адреса для отображения и служебное поле со структурированным значением.
Такое устройство объясняет типичные затруднения: в карточке контрагента адрес виден, а в схеме запроса или внешней обработке его «нет». Чтобы корректно получать адреса в отчётах, выгрузках и обменах, нужно понимать, где именно лежат данные и в каком формате они записаны.
Где физически хранятся адреса: табличная часть и регистр
В большинстве типовых конфигураций на БСП (Библиотека стандартных подсистем) контактная информация реализована как табличная часть объекта-владельца. У справочника «Контрагенты» она называется «КонтактнаяИнформация» и содержит колонки: «Тип» (перечисление — адрес, телефон, email и т.д.), «Вид» (ссылка на справочник «ВидыКонтактнойИнформации»), «Представление» (строка для показа пользователю), «Значение» (структурированные данные) и ряд служебных полей: город, регион, страна, адресЭП и другие.
В конфигурациях с разделением «Партнёры» и «Контрагенты» (Управление торговлей, ERP) адреса могут храниться у обоих справочников одновременно. Адрес доставки и юридический адрес часто привязаны к партнёру, а юридический адрес для печати документов — к контрагенту. При поиске «пропавшего» адреса проверяйте оба объекта.
В старых конфигурациях (Управление производственным предприятием 1.3, Комплексная автоматизация 1.1) контактная информация хранится иначе — в независимом регистре сведений «КонтактнаяИнформация», где измерением выступает ссылка на объект, а ресурсами — тип, вид и представление. Это принципиально меняет запросы: вместо обращения к табличной части используется соединение с регистром.
Где искать адреса в разных конфигурациях
Табличная часть «КонтактнаяИнформация» справочника «Контрагенты». Запрос — через Справочник.Контрагенты.КонтактнаяИнформация.
Табличные части у справочников «Контрагенты» и «Партнёры». Адрес доставки чаще у партнёра, юридический — у контрагента.
Регистр сведений «КонтактнаяИнформация» с измерением «Объект». Запрос — через соединение с регистром.
Как устроены поля адреса: представление и JSON-значение
Поле «Представление» — это готовая строка вида «101000, г Москва, ул Мясницкая, д 13 стр 2». Именно её видит пользователь в карточке и именно она попадает в печатные формы, если разработчик не переопределил вывод. Поле удобно для отображения, но непригодно для анализа: разобрать строку на регион, город и улицу надёжно нельзя.
Поле «Значение» содержит сериализованную структуру адреса. В актуальных версиях БСП это JSON с полями country, region, city, street, houseNumber и другими, соответствующими классификатору ФИАС/ГАР. В более ранних версиях вместо JSON использовался XML или строка с перечнем полей через запятую («Индекс=101000,Регион=...»). Формат зависит от версии библиотеки, поэтому при разработке обработок проверяйте, что именно лежит в поле у вашей базы.
Дополнительно часть данных дублируется в отдельных колонках табличной части: «Страна», «Регион», «Город», «ЗначенияПолей» (устаревший формат). Эти колонки заполняются механизмом БСП автоматически и используются для быстрого поиска и группировок без разбора JSON.
Как найти адрес контрагента в пользовательском режиме
В карточке контрагента адреса выводятся в блоке «Контактная информация» либо на отдельной вкладке «Адреса» (зависит от конфигурации). Типовые виды: «Юридический адрес», «Фактический адрес», «Почтовый адрес», «Адрес доставки». Если нужного вида нет, его можно добавить через кнопку «Ещё» или команду добавления контактной информации — список видов настраивается в справочнике «Виды контактной информации».
Чтобы массово посмотреть адреса без программирования, используйте групповое изменение реквизитов (в БСП — «Администрирование» → «Обслуживание» → «Корректировка данных» → «Групповое изменение реквизитов») или универсальный отчёт по справочнику «Контрагенты» с выводом табличной части. Также в большинстве конфигураций доступен отчёт «Контактная информация» или вывод адресов через подбор в списке контрагентов.
Для выгрузки в Excel удобен типовой механизм: в списке контрагентов через «Ещё» → «Вывести список» добавьте колонки с адресами (если настройка списка позволяет), либо воспользуйтесь обработкой выгрузки контактной информации, если она есть в разделе «Продажи» или «CRM» вашей конфигурации.
- 1Откройте список контрагентов и проверьте, есть ли команда вывода списка с дополнительными колонками
- 2Если адресов нет — откройте универсальный отчёт (Администрирование → Печатные формы, отчеты и обработки) по справочнику «Контрагенты»
- 3Добавьте в отчёт поля из табличной части «Контактная информация»: Вид, Представление
- 4Установите отбор по виду адреса (например, «Юридический адрес»)
- 5Сформируйте отчёт и сохраните результат в Excel или mxl
- 6Проверьте на нескольких контрагентах, что адреса совпадают с карточками
Как получить адреса запросом и в коде
Для конфигураций на БСП запрос к адресам строится через табличную часть. Типовой шаблон: выбрать ссылку контрагента, вид контактной информации и представление из таблицы «Справочник.Контрагенты.КонтактнаяИнформация», наложив условие на вид — например, ссылку на предопределённый элемент «Юридический адрес контрагента» (имя предопределённого элемента зависит от конфигурации, часто это «ЮридическийАдресКонтрагента»).
В программном коде правильнее использовать API БСП вместо прямого чтения табличной части: функции модуля «УправлениеКонтактнойИнформацией» (например, получение контактной информации объекта по виду или по типу) возвращают и представление, и структурированные значения. Это защищает от изменений формата хранения при обновлении конфигурации.
Для старых конфигураций с регистром сведений запрос строится через соединение: левое соединение справочника «Контрагенты» с регистром «КонтактнаяИнформация» по условию «Объект = Ссылка» и отбору по виду адреса. Учитывайте, что у одного контрагента может быть несколько адресов — без отбора по виду соединение размножит строки результата.
ВЫБРАТЬ
Контрагенты.Ссылка КАК Контрагент,
КИ.Представление КАК ЮридическийАдрес
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты.КонтактнаяИнформация КАК КИ
ПО Контрагенты.Ссылка = КИ.Ссылка
И КИ.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮридическийАдресКонтрагента)Почему адрес «не находится»: типичные ошибки
Самая частая причина — обращение не к тому объекту. В УТ и ERP пользователь вводит адрес в карточке партнёра, а отчёт читает табличную часть контрагента, где адрес пуст. Вторая причина — отбор по представлению вида адреса строкой («Юр. адрес»), тогда как в базе вид называется иначе или переименован пользователем. Отбор всегда надёжнее делать по ссылке на предопределённый элемент справочника видов.
Третья группа ошибок связана с форматом: обработка читает поле «ЗначенияПолей» в старом формате, а база уже обновлена и пишет JSON в поле «Значение» — в результате адрес «пропадает» из выгрузки. Аналогично, обращение к устаревшим колонкам после обновления БСП может давать пустые значения.
Отдельный случай — дубли видов контактной информации. Если администратор создал свой вид «Юридический адрес» вместо использования предопределённого, типовые печатные формы и отчёты его не увидят: они ищут конкретный предопределённый элемент.
Массовое изменение и загрузка адресов
Разовую корректировку выполняйте через карточку контрагента: форма ввода адреса проверяет данные по адресному классификатору (если он загружен) и сохраняет нормализованное значение. Это важно для последующей работы ЭДО, проверки контрагентов и отчётности, где адрес разбирается по полям.
Массовая загрузка адресов (например, при миграции из другой системы) выполняется типовой обработкой «Загрузка данных из файла» — в БСП она поддерживает заполнение контактной информации из табличного документа. Альтернатива — написание собственной обработки с использованием API модуля «УправлениеКонтактнойИнформацией», который сам сформирует корректный JSON.
Проверка результата и контроль качества данных
После загрузки или изменения адресов проверьте выборку: сформируйте универсальный отчёт по табличной части «КонтактнаяИнформация» и сравните количество контрагентов с заполненным юридическим адресом до и после операции. Расхождения укажут на контрагентов, у которых адрес не записался или записался под другим видом.
Полезно проверить и качество самих адресов: пустые поля региона или города при заполненном представлении означают, что адрес введён свободной строкой без привязки к классификатору. Такие адреса могут не пройти автоматические проверки в ЭДО и при обмене с государственными сервисами.
Как проверить корректность адресов
Совпадает с тем, что видно в карточке контрагента
В отчёте пусто, а в карточке адрес есть — смотрите другой вид или партнёра
Заполнены и соответствуют представлению
Пустые при заполненном представлении — адрес введён строкой без классификатора
Валидный JSON с полями адреса
Пустое или содержит устаревший формат после обновления
Адрес выводится полностью
Адрес обрезан или отсутствует — проверьте вид, используемый в печатной форме
Частые вопросы
Почему в запросе по справочнику «Контрагенты» я не вижу поля «Адрес»?
Потому что адрес — не реквизит справочника, а строка табличной части «КонтактнаяИнформация». В конструкторе запросов раскройте табличную часть контрагентов и выберите поля «Вид» и «Представление», добавив отбор по нужному виду адреса.
Чем отличается юридический адрес от фактического в 1С?
Это разные виды контактной информации, хранящиеся отдельными строками. Юридический адрес используется в официальных документах и проверках, фактический — для логистики и доставки. В печатных формах каждый выводится в своих местах, поэтому заполнять нужно оба.
Можно ли хранить несколько адресов доставки у одного контрагента?
Да. В УТ и ERP для этого обычно используют несколько записей вида «Адрес доставки» у партнёра или отдельные справочники адресов доставки, если конфигурация их поддерживает. В БП 3.0 несколько адресов доставки хранятся как отдельные строки контактной информации.
После обновления конфигурации адреса в старой обработке стали пустыми. Что случилось?
Скорее всего, обработка читает устаревшее поле «ЗначенияПолей», а новая версия БСП хранит данные в поле «Значение» в формате JSON. Обновите обработку, переведя её на программный интерфейс модуля «УправлениеКонтактнойИнформацией».
Как загрузить адресный классификатор и зачем он нужен?
Классификатор (ФИАС/ГАР) загружается через раздел «Администрирование» → «Интернет-поддержка и сервисы» → «Адресный классификатор». Он позволяет вводить адреса по подсказке, проверяет их корректность и обеспечивает правильное заполнение структурированных полей для отчётности и ЭДО.
Что важно запомнить
Адреса контрагентов хранятся в табличной части «КонтактнаяИнформация» (в старых конфигурациях — в регистре сведений) и привязаны к видам контактной информации. Отображаемый текст — поле «Представление», структура — JSON в поле «Значение». Для выборок используйте отбор по ссылке на вид, для кода — API БСП, а массовые изменения выполняйте только после резервного копирования.