gifts2017

Ввод адреса по классификатору KLADR v.2.5

Опубликовал Евгений П. (jack19) в раздел Обработки - Универсальные обработки

Доработана версия обработки leosoft, выложенная ранее по адресу http://infostart.ru/public/61447/. По аналогии с программой "СheckXML+2НДФЛ 2010" устаревшие адреса не обрезаются, но исправляются в процессе ввода.

Исправлен ряд ошибок. Кроме того:

1. Можно искать города без заполнения района (заполняется при выборе города).

2. Можно искать населенные пункты без заполнения района и города (заполняются при выборе  населенного пункта).

3. Можно искать улицы без заполнения района, города и населенного пункта (заполняются при выборе улицы).

4. При выборе элемента адреса в списке выбора в информационной строке внизу панели выводится полный адрес (регион, район и т.д), как в типовой обработке. Устаревшие названия подсвечиваются красным цветом.

5. При выборе устаревшего названия производится  попытка заменить его на актуальное с выдачей соответствующего предупреждения. Для этого дополнительно используется справочник из KLADR "altnames.DBF".

6. Очищается поле "Район" при вводе районных  центров.

7. Индекс проставляется теперь на основании не только номера дома, но и номера корпуса.

8. При нажатии Esc при нахождении в списке выбора элемента адреса происходит не закрытие обработки, а возврат панели ввода элементов.

9. При открытии списка выбора элементов адреса список теперь позиционируется на текущем элементе.

При первом использовании необходимо удалить индексные файлы из каталога с файлами KLADR.

Недостаток: список выбора элементов адреса теперь может заполняться дольше.

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
VvodAdresa25.ert
.ert 84,00Kb
27.02.11
156
.ert 84,00Kb 156 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Евгений П. (jack19) 27.02.11 15:42
Исправил некоторые ошибки. Теперь список формируется быстрее.
2. анна хорошавина (vannav78) 21.09.11 10:22
3. Dmitry Bas (b-dm) 31.10.11 18:12
Весьма опасная обработка - эдак можно совсем кадровиков разбаловать.
А ну как начнут вводить улицы без привязки к городам.
Или же -это в случае неизвестной улицы делается поиск, а уж после этого к ним прицепляется нужный город и т.п. ?
Непонятен также пункт 9, получатеся что обработка запоминает предыдущий выбранный элемент, потому он и является текущим ? Остальные пункты только в "плюс", очень полезная вещица, буду юзать в будущем и прикручу своим кадровикам в каких то базах.
4. Евгений П. (jack19) 31.10.11 18:42
b-dm пишет:

Весьма опасная обработка - эдак можно совсем кадровиков разбаловать.
А ну как начнут вводить улицы без привязки к городам.
Или же -это в случае неизвестной улицы делается поиск, а уж после этого к ним прицепляется нужный город и т.п. ?
Непонятен также пункт 9, получатеся что обработка запоминает предыдущий выбранный элемент, потому он и является текущим ? Остальные пункты только в "плюс", очень полезная вещица, буду юзать в будущем и прикручу своим кадровикам в каких то базах.


При выборе улицы, если не заполнены верхние поля, эти поля (нас.пункт, город, район) автоматически заполняются. Пункт 9 означает, что в отличие от предыдущей версии обработки (не моей), если открывается список выбора при заполненном поле, то программа пытается найти в списке строку, содержащуюся в поле, и позиционирует на ней.

P.S. Хорошо бы, если Вы оценили обработку, сейчас и в дальнейшем ставили плюсик.
5. Dmitry Bas (b-dm) 03.11.11 19:52
(4) - вот это другое дело. И понятно объяснили, и много полезных вещей в обработке сделано, доработано и
удобно и кадровику, и программисту.
Плюсик поставил, прекрасная обработка.
6. Kapitan911 Юрий (Kapitan911) 16.02.13 06:46
В этом году для сдачи 2НДФЛ требуют в адресах указание района для районных центров.
А при вводе адреса он очищался. Как вернуть районы... Сотрудников очень много
7. Евгений П. (jack19) 16.02.13 09:02
(6) Kapitan911,

Уточните, откуда Вы это взяли. Скачал последнюю программу проверки CheckXml+2NDFL2012 от 15.02.2012. Проверил свою базу (свыше 1000 человек). Ошибки в адресах в основном касаются только номеров домов.
8. Евгений П. (jack19) 16.02.13 09:07
(6) Kapitan911,

от 15.02.2013 конечно.
9. Kapitan911 Юрий (Kapitan911) 16.02.13 09:43
Ни CheckXml, ни Tester, ни Налогоплательщик2013 ошибок не показывают. А загружаешь в СБИС - он ругается, клиенты недовольны, он у 90% стоит. Отключать в нем проверку КЛАДРа не хотят.
10. Евгений П. (jack19) 16.02.13 09:56
(9) Kapitan911,

К сожалению, кроме CheckXml, другими методами проверки я не располагаю. Других способов исправить адреса, как получить протокол ошибок (если они действительно есть) и вручную их исправить, я не вижу. Если Вы пользуетесь для ввода адреса данной обработкой, могу посоветовать закомментировать в ней строки
410: Район = ""; и
467: Район = "";
11. Евгений П. (jack19) 16.02.13 10:15
(9) Kapitan911,

Немного не так. Вместо строк 409 и 466:

Если (Число(Сред(НовыйКод,3,3)) = 0) или (Число(Сред(НовыйКод,6,3)) = 1) или ((Число(Сред(НовыйКод,6,3)) = 0) и (Число(Сред(НовыйКод,9,3)) = 1)) Тогда

нужно вставить:

Если 1=0 Тогда

P.S. Не раз слышал, что с программами передачи файлов постоянно случаются подобные проблемы. Но, по-моему это проблемы самих программ передачи данных. Я бы не спешил менять адреса.
12. Kapitan911 Юрий (Kapitan911) 16.02.13 10:28
Я поправил в обработке там, где в комментариях про райцентр написано
13. Евгений П. (jack19) 16.02.13 16:51
(12) Kapitan911,

Кажется я опять поторопился. В строках 409 и 466 должно остаться:

Если (Число(Сред(НовыйКод,3,3)) = 0) Тогда
14. Kapitan911 Юрий (Kapitan911) 16.02.13 21:11
Я поправил так:

Процедура УстановитьВладельца(Вид, Код)

Если Вид = "Город" Тогда
//Юрий - районы тоже нужны
//Если Число(Сред(Код, 6, 3)) = 1 Тогда
// // это райцентр - город
// Район = "";
Если (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
//ИначеЕсли (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
КлассификаторАдресов.ТекущийИндекс("Районы");
Если КлассификаторАдресов.Найти(Лев(Код,5)+"00000000", 0) = 1 Тогда
Район = СокрЛП(КлассификаторАдресов.Name) + " " + СокрЛП(КлассификаторАдресов.Socr);
КонецЕсли;
КонецЕсли;
ИначеЕсли Вид = "НасПункт" Тогда
//Юрий - районы тоже нужны
//Если (Число(Сред(Код, 9, 3)) = 1) или (Число(Сред(Код, 6, 3)) = 1) Тогда
// // это райцентр - нас.пункт
// Район = "";
Если (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
//ИначеЕсли (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
КлассификаторАдресов.ТекущийИндекс("Районы");
Если КлассификаторАдресов.Найти(Лев(Код,5)+"00000000", 0) = 1 Тогда
Район = СокрЛП(КлассификаторАдресов.Name) + " " + СокрЛП(КлассификаторАдресов.Socr);
КонецЕсли;
КонецЕсли;
Если (Число(Сред(Код, 6, 3)) > 0) и (Число(Сред(Код, 9, 3)) > 1) Тогда
КлассификаторАдресов.ТекущийИндекс("Города");
Если КлассификаторАдресов.Найти(Лев(Код,8)+"00000", 0) = 1 Тогда
Город = СокрЛП(КлассификаторАдресов.Name) + " " + СокрЛП(КлассификаторАдресов.Socr);
КонецЕсли;
КонецЕсли;
ИначеЕсли Вид = "Улица" Тогда
//Юрий - районы тоже нужны
//Если (Число(Сред(Код, 9, 3)) = 1) или (Число(Сред(Код, 6, 3)) = 1) Тогда
// // это райцентр - нас.пункт
// Район = "";
Если (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
//ИначеЕсли (ПустоеЗначение(Район) = 1) и (Число(Сред(Код, 3, 3)) <> 0) Тогда
15. Евгений П. (jack19) 16.02.13 21:46
(14) Kapitan911,

Вроде так. Но и 409 и 466 строки тоже можно поправить, как в моем предыдущем комментарии.
16. Алексей (artspeed) 21.04.13 07:07
Отличная обработка. Мне понравилось. Были проблемы со штатными обработками по кладру, эта схватила сразу Кладр.

Единственное, что бы я добавил исходя из задачи - ЗАМЕНИТЬ штатную обработку, так это:

1) Загрузка кладр с диска ИТС или с папки - непосредственно в бухию 7.7 в папку по умолчанию
2) Галочку - пусть кладр использовать по умолчанию. ИБ+extdb
3) Автоматическое или по требованию удаление первоначальных индексов.

А так большой плюс за обработку.
17. Евгений П. (jack19) 21.04.13 07:50
(16) artspeed,

Спасибо за оценку. Что касается возможных доработок данной обработки, то в связи с тем, что сейчас при проверке отчетности по НДФЛ могут выдаваться ошибки, связанные с отсутствием номера дома в кладре, я бы в первую очередь добавил бы выбор номеров домов по кладру, как это сделал в штатной обработке
http://infostart.ru/public/96029/
Но сам я так и не стал пользоваться данной обработкой, а необходимость такой функции (выбор дома по классификатору) для пользователей инфостарта не почувствовал.
18. Алексей (artspeed) 21.04.13 07:59
Допустим мне эта обработка нужна, что бы выгружать в формате кредитных историй НБКИ адрес раздельно. Сейчас модифицирую обработку. Еще раз спасибо )
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа