Конвертация строчных адресов в формат адресов с объектами (КЛАДР)

05.10.21

Интеграция - ЭДО и ОФД

Во многих случаях пользователи систем 1С вполне обходятся адресами контрагентов и грузополучателей, введенными в свободной форме. Но в ряде случаев, например в процессе перехода на электронный документооборот, возникает задача быстрой и массовой переделки адресов, например, адресов сетевых торговых точек, в формат адресов в объектах (или, как еще принято говорить, в формат КЛАДР). Когда количество адресов исчисляется сотнями и тысячами, данная задача становится трудоемкой. Предлагаемая обработка позволяет решать ее. Протестировано в УПП 1.3.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка адресов
.epf 17,63Kb
101
101 Скачать (1 SM) Купить за 1 850 руб.

Внимание! Обработка пока НЕ ТЕСТИРОВАЛАСЬ в релизах УПП 166+, в которых было произведено изменение хранения адресов в формат ГАР ФИАС, ввиду чего ее корректная работа на релизах новее 165 НЕ ГАРАНТИРУЕТСЯ! Ожидайте новой версии или качайте и дорабатывайте на свой страх и риск.

Обработка позволяет массово распознавать строчные адреса. Распознанные адреса можно редактировать как прямо в строках, так и стандартным для 1С способом с помощью диалога ввода адресов, проверять с применением классфификатора и сохранять в РС контактной информации адреса. После правок адреса в объектах записываются в РС.

Распознавание адресов реализовано по тегам. Предполагается, что объекты в адресе разделены запятыми и содержат теги типа "г.", "ул", "д." и т.п. База тегов довольно обширна и определяются теги как до, так и после элемента адреса, т.е. корректно распознаются "ул. Ленина", "Ленина ул", "улица Ленина". Реализована высокая степень очистки от мусора (лишние запятые, пробелы и т.д.). После распознания компоненты адреса разносятся по соответствующим полям. На этом этапе в адрес, если требуется, можно внести исправления. В моем случае такой алгоритм дал довольно высокую степень распознания компонентов адресов при том, что он работает быстро и не требует обращения к БД для своей работы.

На данный момент обработка имеет некоторые ограничения, связанные с тем, что она использовалась исключительно для правки адресов сетевых торговых точек (подразделений крупного юр. лица) и у меня не было необходимости в некоторых доработках, а именно:

  • выполняется работа только с юридическими адресами. Может быть доработано; Работа со всеми видами адресов;
  • ввиду ограничений алгоритма не обрабатываются адреса, которые записаны некачественно, без тегов и разделителей, пример такой записи "Липецк Ленина 5". Это доработано не будет;
  • распознание адресов идет только до номера дома включительно, то что возможно дальше - всякие помещения, квартиры и т.д. - не разбираются. Может быть доработано;
  • добавление адресов для распознания производится только по фильтру, не предусмотрено работы с одиночными контрагентами. Может быть доработано.

Если к обработке будет какой-то интерес и у меня будет свободное время - доработаю. Для добавления контрагентов необходимо заполнить любое из или оба фильтрационных поля в верхней части формы. Допускается спецсимвол %, который означает любую последовательность символов. Например, можно заполнить таким образом:

  • Наименование содержит: Пятерочка%
  • Представление адреса содержит: %Орловская%

После нажатия кнопки Отобрать сетка заполнится контрагентами, сокращенное название которых начинается со слова Пятерочка и в представлении адреса содержится Орловская, т.е. отберутся все магазины Пятерочка по Орловской области. Их юридические адреса будут автоматически распознаны, а компоненты адресов - разнесены по ячейкам решетки. При этом к компонентам будут автоматически добавлены корректные теги, которые используются в классификаторе, например " ул" в конце компонента "улица" вместо "ул. " в начале  и т.п. Наименования контрагентов (колонка Объект) подсвечиваются розовым цветом в том случае, если изменения не вносились в РС контактной информации, или зеленым, если изменения уже записаны в РС. Любая ручная правка записи с зеленой колонкой объект вновь делает ее розовой - до очередной записи в РС. Колонки адреса также подсвечиваются розовым или желтым цветом в случае отсутствия некоторых компонентов адреса. Например, если нет улицы или региона, то колонка подсвечивается розовым. В случае отсутсвия индекса, номера дома или если номер дома чрезмерно длинный, то колонка подсвечивается желтым. Таким образом оператор наглядно видит, какие адреса требуют корректировки. Корректировать можно двумя способами:

  • вручную, путем прямого изменения в строке как представления (адреса в виде строки), так и отдельных компонент. При корректировке представления обновленные компоненты адреса автоматически разносятся по полям.
  • с помощью стандартного диалога правки адреса. Вызывается двойным щелчком по строке в колонке контрагента (Объект) или нажатием на кнопку "Редактировать", при этом редактируются данные активной строки.

Если оператор предполагает, что адрес разнесен верно, и есть желание в этом убедиться - можно нажать кнопку "Проверить". Эта операция пытается подобрать почтовый индекс по компонентам адреса. Если он подобран, то предполагается, что проверка прошла успешно. Для строки вписывается индекс (при его отсутствии) и осуществляется замена имеющегося представления адреса на эталонное, сформированное программой. При этом информация о произошедшем изменении отобразится в окне сообщений:

[г.Липецк, ул.Студенческая, д.12] -> [398006, Липецкая обл, Липецк г, Студенческая ул, дом № 12]

Кнопка "Записать текущую" записывает данные текущей строки в РС КонтактнаяИнформация.

Кнопка "Записать все" записывает все незаписанные данные в РС Контактная информация.

UPD - обновление от 26.03.2017 г:
[*] некоторые улучшения в алгоритме, уменьшено количество ошибок распознавания. В частности, теперь более корректно трактуется тег "д." как деревня либо дом в зависимости от местоположения;

[*] улучшена очистка строк от мусора;

[+] добавлены дополнительные редко встречающиеся теги для населенных пунктов (хутор, слобода, etc);

[+] разбор тегов для корпуса (после дома);

[*] Изменено поведение при загрузке адресов. Теперь обработка не пытается разобрать строку представления, если поля адреса уже находятся в хорошей стадии заполнения (заполнен регион, город или район/НП, улица).  Чтобы вернуть старое поведение, когда разбирается все подряд независимо от состояния адреса, нужно поставить галку "Всегда разбирать представление при загрузке, даже если адрес в хорошем состоянии".

[+] Реализована массовая проверка и исправление записей, которая работает так же, как кнопка "Проверить", но для всех записей в форме обработки. ВНИМАНИЕ! Механизм подбора индекса в редких отдельных случаях способен искажать данные адреса (во всяком случае я наблюдал это в УПП), поэтому применять данную функцию следует с осторожностью. Не запускайте ее сразу на объемах в тысячи адресных записей, пока не убедитесь, что состояние ваших данных позволяет ей работать корректно. В любом случае лог произведенных изменений выводится в окно сообщений, что позволяет впоследствии "вернуть назад" некорректно исправленные адреса. Функция работает только для "красных" записей, которые не имеют признака записанности в регистр КИ.

UPD - обновление от 17.11.2020

[+] Реализована работа с разными видами адресов (юридический, фактический, адрес доставки и т.д.)

См. также

Кассовые операции Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Программист Бухгалтер Пользователь Платформа 1С v8.3 Бухгалтерский учет 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Специализированные обработки для загрузки кассовых чеков в локальных базах: 1С:БП 3.0, 1С:УНФ 3.0, 1С:КА. 2.5, 1С:ERP Управление предприятием 2.5 и 1С:УТ 11.5. Вы просто сканируете QR коды с бумажных и электронных чеков c помощью мобильного приложения ФНС и чеки автоматически (без ручного ввода) загружаются в документы 'Авансовый отчет', 'Расходы предпринимателя', 'Путевой лист', 'Приходная накладная', 'Поступление (акты, накладные, УПД)', 'Приобретение товаров и услуг', 'Отчет о розничных продажах' и 'Поступление денежных документов'. Обработка будет работать на любой версии конфигурации: базовой, ПРОФ или КОРП.

19.08.2020    71236    228    delta    86    

233

ЭДО и ОФД Загрузка и выгрузка в Excel Бухгалтер Бухгалтерский учет 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Платные (руб)

Кто получает документы в формате XML из различных сервисов ЭДО (формат 820 приказ ФНС 31 мая 2019) и набивает их вручную в 1С, тот наверняка хотел бы автоматизировать этот процесс. Поддержка конфигураций: Бухгалтерии 3, УПП 1.3, 1С:КА 2.4 и 1С:КА 2.5, УТ10, УТ11.4 и УТ11.5. Для бухгалтерии 3 добавлена поддержка формат 5.03 от 23/01/2025

3600 руб.

11.02.2020    94988    321    157    

232

Регламентированный учет и отчетность Обмен с ГосИС ЭДО и ОФД Бухгалтер Пользователь Платформа 1С v8.3 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Платные (руб)

Работаете по контрактной схеме, сталкивались с проблемой, что в контракте жестко указаны наименование, цена, единица измерения товара. И не все готовы создавать новую номенклатуру под каждый контракт или менять наименование и единицу измерения для уже имеющейся. Тем более, бывает так, что контракт - это формальность. Контракт не описывает жесткие условия поставки, нужно соблюсти правильность в предоставлении документов. Данное решение позволит вам оперировать своей номенклатурой при оформлении реализаций по государственному контракту в УТ 11.5 и КА 2.5.11, в то же время выводить на печать документы, соответствующие данным контракта. Реализована выгрузка для сайта госзакупок (ЕИС) по 44-ФЗ.

60000 руб.

19.12.2022    13323    36    25    

22

ККМ ЭДО и ОФД Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Бухгалтерский учет Платные (руб)

Обработка «Заполнение авансовых отчетов в 1С и поступлений товаров по онлайн-чекам ФНС» позволяет загружать онлайн чеки в формате JSON из официального мобильного приложения "Проверка чеков ФНС" и заполнять документы «Авансовый отчет» и «Приобретение товаров». Помощник заполнения поможет найти /создать номенклатуру и номенклатуру поставщика по указанным настройкам и перенесет данные чеков в документы учетной системы. Данные чеков из мобильного приложения можно выгружать как по каждому чеку в отдельности, так и выпиской за период.

5400 руб.

09.06.2020    32871    124    42    

117

ЭДО и ОФД Бухгалтер Пользователь Платформа 1С v8.3 1С:Бухгалтерия 3.0 Розничная и сетевая торговля (FMCG) Россия Бухгалтерский учет Платные (руб)

Обработка для автоматической загрузки данных о проданных товарах из OFD.RU через API 2.0 с последующим формированием документов «Отчет о розничных продажах» и «Реализация товаров» в 1С:Бухгалтерии 3.0. Обработка позволяет синхронизировать номенклатуру с базой и автоматически добавлять новые позиции, отсутствующие в системе.

3600 руб.

26.08.2022    9782    12    44    

24

Регламентированный учет и отчетность ЭДО и ОФД Бухгалтер Платформа 1С v8.3 1С:Бухгалтерия 3.0 Пищевая промышленность Россия Бухгалтерский учет Налоговый учет Акцизы Платные (руб)

Расширение для Бухгалтерии предприятия 3.0 «Акцизы на сахаросодержащие напитки» предназначено для автоматизированного учета сумм акцизов по реализованным сахаросодержащим напиткам с 01 июля 2023 года. Позволяет выделить суммы акциза в первичных документах («Реализация товаров и услуг», «Корректировка реализации»), сформировать проводки по начислению акциза, а также сформировать и отправить корректные документы по ЭДО.

14400 руб.

16.10.2023    2382    19    0    

16
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. V.Nikonov 122 21.03.17 10:48 Сейчас в теме
А как насчет Корпусов и Строений?
Вариант Домовладение вычисляется?
Конечная сверка правильности разборки через сравнение Индексов может автоматически производить?
2. spectre1978 61 21.03.17 21:57 Сейчас в теме
(1)на данный момент теги "владение", "вл.", "д.", "дом"... трактуются как дом и информация, им соответствующая, предназначается для Поле7 РС контактной информации. Дальнейшего разбора не было предусмотрено ввиду отсутствия необходимости - более 99% адресов, которые требовалось разобрать, оканчивались номером дома, а оставшиеся несколько случаев можно было решить ручной правкой. Таким образом, на данный момент Корпуса, строения, квартиры, офисы и т.д. не разбираются.
Автоматической проверки всех адресов на валидность в соответствии с классификатором нет, можно сделать проверку отдельного адреса по нажатию кнопки (там выполняется попытка подбора почтового индекса по имеющимся данным - если удалось успешно подобрать, то адрес предполагается валидным).
3. V.Nikonov 122 26.03.17 20:53 Сейчас в теме
(2) Некоторые индексы без корпуса не вычисляются.
4. spectre1978 61 26.03.17 22:02 Сейчас в теме
(1), (3) Завтра утром будет выложено обновление, где будет поддержка корпусов и множественная проверка и корректировка адресов. Оно уже готово.
5. CheBurator 3139 20.07.20 03:18 Сейчас в теме
" можно нажать кнопку "Проверить". Эта операция пытается подобрать почтовый индекс по компонентам адреса. "
- а откуда индекс тянется? если к БД не обращается..? из Кладр?
6. spectre1978 61 20.07.20 08:21 Сейчас в теме
(5) В описании речь только про алгоритм разбора строковых адресов - там работа осуществляется без каких-либо дополнительных проверок, но, естественно, нельзя гарантировать, что 100% полученных наименований будут соответствовать описанным в классификаторе. Проверка по КЛАДР была реализована позже и выполняется отдельно, в процессе нее обращение к классификатору выполняется.
7. andy32 29.09.20 15:51 Сейчас в теме
Распознавание сельсоветов предусмотрено?
8. spectre1978 61 29.09.20 19:12 Сейчас в теме
(7)
Распознавание сельсоветов предусмотрено?

у меня в базе не было соответствующих адресов и используемых сокращений, на которых можно было бы проверить работу, поэтому, к сожалению, нет. Могу добавить необходимые сокращения и произвести проверку работы, если предложите тестовый список адресов.
9. V.Nikonov 122 16.11.20 11:29 Сейчас в теме
В обработке не показывается колонка ВидКонтактнойИнформации. Можно было бы добавить поле к отбору, т.к. зачастую будут обрабатываться "Адрес доставки" и игнорироваться "Почтовый адрес"...
10. spectre1978 61 17.11.20 09:18 Сейчас в теме
11. ManyakRus 489 17.11.20 09:45 Сейчас в теме
Вместо "Распознавание адресов реализовано по тегам"
я сделал поиск адреса по данным яндекс-карты, так ещё лучше :)
Яндекс хорошо находит любой произвольно написанный адрес,
находится даже Округ Москвы и район округа.
12. spectre1978 61 17.11.20 10:45 Сейчас в теме
(11) Замечательно. Подвернись мне такой вариант в 17 году - я бы скачал ваше решение и ничего этого бы тут не было. Но, увы, нормальных обработок не попалось, а то что было - на большом объеме адресов не давало быстро закончить работу. И пришлось изобретать свой велосипед. Судя по количеству скачиваний за три года, велосипед все же поехал.
13. V.Nikonov 122 17.11.20 15:51 Сейчас в теме
(12) Задачи бывают разные. В некоторых случаях вариант не укладывающийся в КЛАДР не прокатит.
Однако, для контроля адреса доставки (преобразование в удобоваримый Адрес) - хорошее средство. Вот только не помню, отдаёт ли Яндекс-API бесплатно распознанный адрес... От Яндекса можно на платной основе получать и координаты (визуализация на карте и грубый просчет логистического маршрута).
15. ManyakRus 489 18.11.20 09:26 Сейчас в теме
(13)
отдаёт ли Яндекс-API бесплатно распознанный адрес

- отдаёт :) бесплатно почти (несколько тыщ в день можно)
16. spectre1978 61 18.11.20 10:33 Сейчас в теме
(15) есть еще dadata.ru. Я подумывал прикрутить функционал обращения к интернет-сервису для адресов, которые написаны совсем криво. Но для моих целей это в конечном итоге не понадобилось, я справился с несколькими тысячами адресов и с помощью работы по тегам.
14. TrinitronOTV 16 18.11.20 06:41 Сейчас в теме
А для БП3.0 такое же имеется?
17. spectre1978 61 18.11.20 10:37 Сейчас в теме
(14) у меня задача стояла для УПП, поэтому сделано для нее. Соответственно, будет работать в других конфах на ОФ, где справочник контрагентов и хранение КИ устроены аналогично. Для УФ не подойдет.
Оставьте свое сообщение