АктуальныеАдресныеСведения (БСП)

Автор: 1С
ОбщийМодуль.АдресныйКлассификаторСлужебный
БСП

Актуальные адресные сведения. Возвращает актуальные данные адресного объекта или ориентира с точностью доя подчиненного (без домов).

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

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

СведенияОДоступностиАдресныхСведений (БСП)

АдресныйКлассификаторЗагружен (БСП)

ОткрытьСведенияОбАдресномКлассификаторе (БСП)

ЕстьПравоДобавлениеИзменениеАдресныхСведений (БСП)

ДоступныеВерсииАдресныхСведений (БСП)

СведенияОРегионе (БСП)

СведенияОДоступностиАдресногоКлассификатора (БСП)

ДоступнаЗагрузкаАдресныхСведенийИзИнтернет (БСП)

ЗагрузитьАктуальныйКурс (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз