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

05.10.21

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

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

Скачать файл

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

См. также

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

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

60000 руб.

19.12.2022    12186    34    20    

21

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

Согласно 54-ФЗ по правилам ведения кассовых операций необходимо оформлять приходные кассовые ордера (ПКО) и расходные кассовые ордера (РКО) на основании чеков ККМ. Все данные о чеках, можно взять на сайте оператора фискальных данных (ОФД). Обработка загрузки данных из ОФД в 1С сделает за вас в 1С - ПКО и РКО, Операции по платежным картам или Отчет о розничных продажах (может создать номенклатуру в 1С, указать налоги и др. реквизиты в документах в зависимости от налогообложения ККМ в торговой точке).

5640 руб.

09.08.2017    152062    903    372    

549

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

ПОДПИСЫВАЙТЕ ДОКУМЕНТЫ С ФИЗЛИЦАМИ ПО СМС. Ваши клиенты и сотрудники смогут подписывать документы простой электронной подписью (ПЭП) без визита к вам в офис. С телефона или компьютера без установки приложений и регистраций.

29990 руб.

28.05.2024    1517    5    0    

7

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

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

12960 руб.

19.08.2020    69330    341    80    

225

ЭДО и ОФД Загрузка и выгрузка в 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.

3600 руб.

11.02.2020    92943    300    156    

221

Документооборот и делопроизводство (СЭД) ЭДО и ОФД Учет документов Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Мощный, единый инструмент для решения всех проблем, связанных с переходом на ЭДО. Экономит бумагу и время - организует архив оригиналов первичных документов прямо в базе 1С, в прикрепленных файлах к соответствующим документам. С помощью комплексного отчета по ошибкам в ЭДО позволяет выявить и исправить все возможные ошибки - ошибочно сопоставленные документы, не подписанные документы, подписанные, но не загруженные в 1С документы. Автоматически сопоставляет не сопоставленные между собой документы. Может работать по расписанию и присылать отчет о состоянии архива/по ошибкам на почту. Взаимодействует напрямую с сервисами Диадок/СБИС, имеет интуитивно понятный интерфейс и учитывает 3-х летний опыт 40+ клиентов.

14880 руб.

17.12.2018    45740    65    60    

79
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. V.Nikonov 120 21.03.17 10:48 Сейчас в теме
А как насчет Корпусов и Строений?
Вариант Домовладение вычисляется?
Конечная сверка правильности разборки через сравнение Индексов может автоматически производить?
2. spectre1978 61 21.03.17 21:57 Сейчас в теме
(1)на данный момент теги "владение", "вл.", "д.", "дом"... трактуются как дом и информация, им соответствующая, предназначается для Поле7 РС контактной информации. Дальнейшего разбора не было предусмотрено ввиду отсутствия необходимости - более 99% адресов, которые требовалось разобрать, оканчивались номером дома, а оставшиеся несколько случаев можно было решить ручной правкой. Таким образом, на данный момент Корпуса, строения, квартиры, офисы и т.д. не разбираются.
Автоматической проверки всех адресов на валидность в соответствии с классификатором нет, можно сделать проверку отдельного адреса по нажатию кнопки (там выполняется попытка подбора почтового индекса по имеющимся данным - если удалось успешно подобрать, то адрес предполагается валидным).
3. V.Nikonov 120 26.03.17 20:53 Сейчас в теме
(2) Некоторые индексы без корпуса не вычисляются.
4. spectre1978 61 26.03.17 22:02 Сейчас в теме
(1), (3) Завтра утром будет выложено обновление, где будет поддержка корпусов и множественная проверка и корректировка адресов. Оно уже готово.
5. CheBurator 2712 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 120 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 120 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) у меня задача стояла для УПП, поэтому сделано для нее. Соответственно, будет работать в других конфах на ОФ, где справочник контрагентов и хранение КИ устроены аналогично. Для УФ не подойдет.
Оставьте свое сообщение