Алгоритм подключения классификатора адресов KLADR для 1С:Бухгалтерии 4.5, 1С: Зарплата и кадры 3.2 и т.п.
Автор статьи:
© Затеев Роман
Михайлович aka MiCo, romzat@mail.ru
2004.06.01,
г. Новокузнецк.
Содержание
Введение
Проблема
Причина
Решение
проблемы
Алгоритм
подключения классификатора КЛАДР
В данной статье я пытаюсь поставить все точки
над “i”
(по крайней мере для себя) в вопросе подключения
классификатора КЛАДР к конфигурациям 1C: Предприятие 7.7, в частности, 1C: Бухгалтерский учет 4.5, 1С: Зарплата
и кадры 3.2 и т.п.
Проблема подключения справочника КЛАДР периодически
появляется на форумах в Интернете, в частности:
http://forum.mista.ru/topic.php?id=1131 (Топик
открывал я в январе 2004г )
http://forum.mista.ru/topic.php?id=1073
и др,
но до сих пор дельного предложения по решению проблемы не было
указано.
P.S. Проблема
не возникает у тех, кто подписан на ИТС, но не все могут себе
позволить подписку.
При импортировании в программу 1С справочник KLADR, скачанный с сайта http://www.gnivc.ru/techno/56.htm - ГНИВЦ МНС,
не удается обеспечить нормальную работу программы: справочник физически
подсоединяется, программа выдает положительные диагностические
сообщения:
Файл kladr.dbf с адресным классификатором найден, копируется...
Файл kladr.dbf с адресным классификатором скопирован.
Файл street.dbf с классификатором улиц найден, копируется...
Файл street.dbf с классификатором улиц скопирован.
Файл socrbase.dbf с классификатором сокращений найден,
копируется...
Но далее происходит следующее (пример: установка
адреса для сотрудника):
Нажимаем на кнопке […] возле
поля регион. Появляется форма:
Далее вводим название региона: Кемеровская обл.
Нажимаем [OK].
Выбранный регион попадает в поле регион в форме
ввода адреса.
Далее пытаемся выбрать город “Новокузнецк” в поле
“Город”, нажав кнопку […]
В справочнике “Города” выбираем город “Новокузнецк”
Нажимаем кнопку [OK].
Открывается форма “Ввод адреса”, курсор перескакивает
на пункт “Населенный пункт”, НО ВСЕ
ПОЛЯ ОКАЗЫВАЮТСЯ ПУСТЫМИ.
На сайте http://www.gnivc.ru/techno/56.htm размещается
версия КЛАДР немного отличная по структуре от той, которая применяется
в 1С 7.7.
Отличия заключаются в следующем:
Структура таблицы KLADR.DBF, которую “понимает”
1С 7.7 следующая:
Table
Format: dBase III
Records
Number: 157815
Fields
Number: 5
Header
Size: 193
Record
Length: 72
# Field
Name Field Type Field Size
- ----------
---------- ----------
1 NAME Character 40
2 SOCR Character 10
3 CODE Character 11
4 INDEX Character 6
5 GNINMB Character 4
А структура таблицы KLADR.DBF, которая выкладывается
по адресу http://www.gnivc.ru/techno/56.htm имеет формат:
Table
Format: dBase III
Records
Number: 166775
Fields
Number: 8
Header
Size: 289
Record
Length: 88
# Field
Name Field Type Field Size
- ----------
---------- ----------
1 NAME Character 40
2 SOCR Character 10
3 CODE Character 13
4 INDEX Character 6
5 GNINMB Character 4
6
UNO Character 2
7 OCATD Character 11
8 STATUS Character 1
Т.о. видно, что KLADR.DBF в версии ГНИВЦ МНС имеет
поле CODE длиной 13 символов (в
отличие от версии 1С – 11 символов), а также имеет поля UNO, OCADT, STATUS.
Остальные таблицы (SOCRBASE.DBF, STREET.DBF) имеют
одинаковый формат.
Решение проблемы заключается в том, что необходимо
в таблице KLADR.DBF в версии ГНИВЦ МНС уменьшить размер поля CODE до 11 символов. Это не приведет к
потере данных в поле CODE по
причине того, что все строки в поле CODE имеют последние символы 00, зато приведет к нормальной работе
1С 7.7. Следует отметить, что после таких “обрезаний” скорее всего
не будет работать “родной” VIEW’ер
базы КЛАДР KLADRS.exe (да
от нас этого и не требуется).
“Урезание” поля можно проделать в программе Database Desktop от Borland’a. Процедура описана ниже.
1.
Скачиваем с сайта http://www.gnivc.ru/techno/56.htm файлы
a.
BASE.A01
b.
BASE.A02
c.
BASE.A03
d.
BASE.A04
e.
BASE.A05
f.
BASE.ARJ
в подкаталог C:\_tmp_
2.
Далее необходимо выполнить команды (в командном файле):
md "E:\_1C_\_KLADR_"
"%ProgramFiles%\WinRar\WinRar.exe" e "C:\_tmp_\BASE.ARJ" "E:\_1C_\_KLADR_"
pause
3.
В результате в подкаталоге "E:\_1C_\_KLADR_" появятся
6 файлов:
a.
ALTNAMES.DBF
- содержит сведения о соответствии кодов записей со старыми и новыми наименованиями
адресных объектов, а также сведения о соответствии кодов адресных объектов
до и после их переподчинения
b.
DOMA.DBF
содержит записи с объектами шестого уровня классификации (номера домов улиц
городов и населенных пунктов)
c.
FLAT.DBF
- содержит записи с объектами седьмого уровня классификации (номера квартир
домов)
d.
KLADR.DBF
- содержит записи с объектами первых четырех уровней классификации (регионы;
районы; города, поселки городского типа, сельсоветы; сельские населенные пункты)
e.
SOCRBASE.DBF
- содержит записи с краткими наименованиями типов адресных объектов
f.
STREET.DBF
- содержит записи с объектами пятого уровня классификации (улицы городов и
населенных пунктов)
4.
Далее запускаем DataBase DeskTop и открываем в нем таблицу KLADR.dbf
"%ProgramFiles%\Common Files\Borland Shared\Database Desktop\DBD32.EXE" "E:\_1C_\_KLADR_\KLADR.DBF"
5.
Появится таблица:
6.
Жмем на кнопку [Restructure] (или выбираем пункт меню Table-> Restructure). Появится окно “Restructure”
7.
Выбираем поле CODE параметр “Size”
для этого поля меняем значение с 13 на 11. Нажимаем [Enter].
8.
Нажимаем на кнопку [Save].
Появится окно “Restructure
Warning”
9.
Жмем [OK]
и закрываем DataBase Desktop.
10.
Запускаем 1С: Бухгалтерию 7.7 (Зарплату и кадры и т.п.).
11.
Входим в пункт меню Справочники->Сотрудники.
12.
Выбираем любого сотрудника либо создаем нового.
13.
Заходим на вкладку “Прочее”
14.
Нажимаем на кнопку рядом с полем “Адрес регистрации”.

15.
В появившейся форме “Ввод адреса” выбираем вкладку “Классификаторы”
и заполняем ее, как показано на рисунке (Путь: E:\_1c_\_Kladr_) :
16.
Нажимаем кнопку [Загрузить]
17.
В списке сообщений появятся строки:
18.
Переходим на вкладку “Формат МНС”
19.
Жмем на кнопку […] рядом с полем “Регион”
20.
Появится сообщение. Жмен [Да] для запуска
переиндексации.
21.
В окне “Регионы” выбираем “Кемеровская обл.” [OK]
22.
Жмем на кнопку […] рядом с полем “Город”
23.
В окне “Города” выбираем “Новокузнецк” [OK]
24.
Жмем на кнопку […] рядом с полем “Улица”
25.
Появится сообщение о необходимости провести переиндексацию. Жмем
[OK]
26.
В окне “Улица” выбираем “Кирова” [OK].
Жмем [OK]
27.
Вводим номер дома и номер квартиры. [OK]
28.
Видим, что адрес благополучно появился в поле “Адрес по регистрации”
На этом подключение и проверку подключения справочника
КЛАДР к конфигурации 1С:Бухгалтерия 7.7
можно выполненной.
Далее остается проделать алгоритм с пункта 10
по 28 для всех остальных конфигураций (Зарплата и кадры, Комплексная
конфигурация), установленных на компьютере.
P.S. Существует
множество версий классификатора КЛАДР. Каждая из них “заточена”
под определенную программу (или ряд программ), например, версия http://kladr.nalogy.ru/, для “Налогоплательщик”
и CHECKPSN.
С уважением, Затеев Роман Михайлович aka MiCo.
|