Коды адреса. Определение кодов ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса
// Определение кодов ОКАТО, ОКТМО, налоговых инспекций ФНС и др. адреса
//
// Параметры:
// Адрес - Строка - Адрес в формате JSON или XML
// Источник - Строка - Устарело. Код сначала ищется в загруженных данных и если не найден, то в веб-сервисе.
//
// Возвращаемое значение:
// Структура - Коды адреса.
//
Функция КодыАдреса(Знач Адрес, Источник = Неопределено) Экспорт
Если ЭтоКонтактнаяИнформацияВXML(Адрес) Тогда
АдресСтруктура = КонтактнаяИнформацияВСтруктуруJSON(Адрес);
ИначеЕсли ЭтоКонтактнаяИнформацияВJSON(Адрес) Тогда
АдресСтруктура = JSONВКонтактнуюИнформациюПоПолям(Адрес);
ИначеЕсли ЭтоКонтактнаяИнформацияВФорматеКлючЗначение(Адрес) Тогда
АдресСтруктура = КонтактнаяИнформацияВФорматеКлючЗначениеВJSON(Адрес);
Иначе
ОписаниеПричиныОшибки = НСтр("ru = 'Передано недопустимое значение адреса в функцию получения кодов адреса'");
ЗаписьЖурналаРегистрации(СобытиеЖурналаРегистрации(),
УровеньЖурналаРегистрации.Предупреждение,,Адрес, ОписаниеПричиныОшибки);
Возврат КонструкторКодовАдреса();
КонецЕсли;
ИдентификаторАдресногоОбъекта = "";
Если ТипЗнч(АдресСтруктура) = Тип("Структура") И АдресСтруктура.Свойство("ID") И ЗначениеЗаполнено(АдресСтруктура.ID) Тогда
ИдентификаторАдресногоОбъекта = АдресСтруктура.ID;
КонецЕсли;
Возврат КодыАдресаИКодыКЛАДР(АдресСтруктура, ИдентификаторАдресногоОбъекта, Источник)
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
КодСериализацииОбъектаАдресации (БСП)
КодСериализацииПочтовогоИндекса (БСП)