При разработке печатных форм, отчетов или внешних обработок в конфигурации 1С:Бухгалтерия предприятия 3.0 часто возникает необходимость программно получить юридический адрес контрагента или организации в виде готовой текстовой строки. Рассмотрим доступные механизмы и разберем по шагам, какие функции встроенного языка и библиотек платформы для этого используются.
В конфигурациях на базе БП 3.0 существует встроенная функция общего модуля БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице. Она возвращает структуру, содержащую всю ключевую информацию о контрагенте или организации на указанную дату, в том числе и юридический адрес.
Проанализируем пример получения адреса контрагента:
// Получаем структуру сведений о контрагенте на дату документа
СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(СведенияОДокументе.Получатель, СведенияОДокументе.ДатаДокумента);
// Извлекаем текстовое представление юридического адреса
ЮридическийАдрес = СведенияОКонтрагенте.ЮридическийАдрес;
Если требуется сформировать полное текстовое представление организации или контрагента для печатной формы (включающее ИНН, банковские реквизиты, телефоны и адрес), разберем использование функции ОписаниеОрганизации из модуля ОбщегоНазначенияБПВызовСервера:
СведенияОКонтрагенте = БухгалтерскийУчетПереопределяемый.СведенияОЮрФизЛице(СведенияОДокументе.Получатель, СведенияОДокументе.ДатаДокумента);
ПредставлениеПолучателя = ОбщегоНазначенияБПВызовСервера.ОписаниеОрганизации(
СведенияОКонтрагенте,
"НаименованиеДляПечатныхФорм,ИНН,ЮридическийАдрес,Телефоны,НомерСчета,Банк,БИК,КоррСчет"
);
Универсальным решением для всех конфигураций, использующих Библиотеку Стандартных Подсистем (БСП), является обращение к функциям модуля УправлениеКонтактнойИнформацией.
Рассмотрим вызов функции ПредставлениеКонтактнойИнформацииОбъекта, которая возвращает готовую строковую информацию по конкретному виду КИ:
ВидАдреса = Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента;
ЮридическийАдрес = УправлениеКонтактнойИнформацией.ПредставлениеКонтактнойИнформацииОбъекта(СсылкаНаКонтрагента, ВидАдреса, , ДатаДокумента);
В этот метод передаются следующие параметры:
Справочники.Контрагенты;ВидыКонтактнойИнформации (например, ЮрАдресКонтрагента);Выясним возможные причины получения пустых или некорректных данных при работе с адресами:
Дата (например, дату документа), чтобы получить адрес, действовавший на тот момент.ВидыКонтактнойИнформации — юридический адрес контрагента (ЮрАдресКонтрагента) и юридический адрес организации (ЮридическийАдресОрганизации) представляют собой разные элементы.