Посоветуйте рассылку друзьям и знакомым. Для этого просто перешлите это письмо. Подписаться на рассылку можно на сайте или письмом.
Доброго времени суток, уважаемые читатели!
Число подписчиков на рассылку медленно но верно растет. Я надеюсь, что все подписчики читают рассылку. К сожалению, писем от Вас пока нет, так что темы рассылки я выбираю сам. В планах перевести рассылку в категорию "Серебрянные". Это привлечет большее количество подписчиков. В настоящее время создаю наброски сайта. На нем будет собираться полезная информация из нашего общения и многие другие полезные вещи.
В выпуске №1, где речь шла об 1С и Excel, забыл сказать, что в том случае, если программно создается книга Excel, то в конце всех действий с ней ее нужно записать. Вот код для выполнения этой операции:
Книга.SaveAs(ПутьКФайлу); ПутьКФайлу - полный путь к файлу книги Excel.
Классификатор адресов.
Если кто работает с конфигурацией "Зарплата и кадры", тот знает, насколько важен этот самый классификатор. Ведь при формировании сведений для отчетности идет провеска адресов сотрудников по нему. Загрузить классификатор в конфигурацию не составляет труда. Для этого в "Зарплата и кадры" есть специальная обработка. Только еще нужно иметь сам классификатор в формате dbf. Его можно найти на диске ИТС или скачать с какого-нибудь сайта. Так зачем же я завел разговор про него, спросите вы?
А дело в том, что есть способ, позволяющий работать с классификатором адресов, не загружая его в базу.
Большим недостатком загрузки классификатора в базу я считаю то, что после этого размер базы увеличивается на ~40 мегабайт. Далее расскажу о том, как можно обойтись без загрузки классификатора в базу, но с возможностью использования полной его информации, причем в любой информационной базе 1С.
Классификатор состоит из двух основных файлов - kladr.dbf (классификатор адресов) и street.dbf (классификатор улиц). Структуру их полей описывать не буду, ее можно посмотреть любым просмотрщиком dbf-файлов. В обоих файлах есть поле "Code", оно и понадобится. Длина этого поля составляет 11 символов в kladr.dbf и 15 в street.dbf. Объясню назначение этого поля.
Адреса в РФ классифицируются в следующем порядке: регион, район, город, населенный пункт, улица. Информация обо всех улицах РФ хранится в street.dbf, об остальном - в kladr.dbf. Теперь рассмотрим, как разобраться в значении поля "Code". Возьмем, например, значение "32017005028" из kladr.dbf. Первые две цифры ("32") - это код региона, следующие три ("017") - это код района, еще три ("005") - это код города, и последние три ("028") - код населенного
пункта. Таким образом, зная код населенного пункта (или города), мы можем узнать, к какому району и региону он принадлежит. Теперь возьмем значение "320170050280035" из street.dbf. Здесь первые 11 символов ("32017005028") соответствуют коду населенного пункта (или города), к которому принадлежит улица, а последние 4 ("0035") - код улицы.
Эта информация пригодится нам для написания обработки, которая будет работать с этими двумя файлами. Саму обработку я выложу на сайте, а алгоритм опишу в следующем выпуске.