Автоматизация обновления адресного классификатора

15.11.23

База данных - Обновление 1С

Пример, как автоматизировать обновление адресного классификатора ГАР.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Автоматизация обновления адресного классификатора :
.zip 50,18Kb ver:1.0.3
10
10 Скачать (1 SM) Купить за 1 850 руб.

Доброго времени суток, уважаемые коллеги. 

Начну с небольшого предисловия. Недавно обновил базу бухгалтерии до последнего релиза и встала задача об обновлении классификатора, но делать данную работу монотонно для 3-х баз руками хотелось не очень. Тем более давно хотел попробовать для себя на практике oScript и его библиотеки.

Вот и родилась идея помочь не только себе, но и другим людям.

Идея скрипта очень проста: скачиваем с сайта https://its.1c.ru БД ФИАС с поддержкой адресов по муниципальному делению, распаковываем и запускаем 1С с обработкой, которая уже определяет, что нам нужно обновлять.

В обработке добавлен код для определения, какие регионы загружать в классификатор:

&НаКлиенте
Процедура _ПриОткрытии(Отказ)
	
	ПриОткрытии(Отказ);
	
	Попытка
		КодИсточникаЗагрузки = "КАТАЛОГ";
		
		Для Каждого стр ИЗ СубъектыРФ Цикл
			Если 	стр.КодСубъектаРФ = 45	//Курганская обл
				ИЛИ стр.КодСубъектаРФ = 47	//Ленинградская обл
				ИЛИ стр.КодСубъектаРФ = 50 	//Московская область
				ИЛИ стр.КодСубъектаРФ = 59	//Пермский край
				ИЛИ стр.КодСубъектаРФ = 66	//Свердловская обл
				ИЛИ стр.КодСубъектаРФ = 72	//Тюменкская обл
				ИЛИ стр.КодСубъектаРФ = 74 	//Челябинская обл
				ИЛИ стр.КодСубъектаРФ = 77 	//Город Москва
				ИЛИ стр.КодСубъектаРФ = 78 	//Город СанктПетербург
				
					Тогда
				
				стр.Загружать	= Истина;
			Иначе
				стр.Загружать	= Ложь;
			КонецЕсли;
		КонецЦикла;
		
		АдресЗагрузки = "D:\Script\download";
		
		ОбновитьИнтерфейсПоКоличествуЗагружаемых();
		
		Загрузить(Неопределено);
	Исключение
		ЗаписатьОшибкуВЖурнал(ОписаниеОшибки());
		ЗавершитьРаботуСистемы(Ложь);
	КонецПопытки;
	
КонецПроцедуры //_ПриОткрытии

Также обращу внимание на то, что в коде также жестко прописано, куда будут распакованы, скачанные скриптом файлы.

Тестирование проводилось на библиотеке стандартных подсистем версии 3.0.1.349, а именно на конфигурации 1С: Бухгалтерия 3.0 (3.0.67.54)

UPD. 2023.11.16:

Изменена ссылка загрузки на адресный классификатор ГАР: https://its.1c.ru/download/gar

Доработана форма обработки. 

Проверено на версии БСП: 3.1.9.144

Проверено на конфигурации: Бухгалтерия предприятия, редакция 3.0 (3.0.143.32)

скрипт oscript автоматизация ГАР обновление бухгалтерия обработка

См. также

Обновление 1С Программист Платформа 1С v8.3 Россия Бесплатно (free)

При обновлении релиза конфигурации УТ появилась ошибка "Ошибка формата потока".

21.03.2025    473    Gummi_pr    7    

4

Обновление 1С Программист Платформа 1С v8.3 1С:ERP. Управление холдингом Абонемент ($m)

Описан практический пример обновления через копию конфигурации 1С:ERP. Управление холдингом с версии 3.2.6.6 на версию 3.2.6.7, который можно применять на других конфигурациях и версиях.

10 стартмани

18.02.2025    811    PetrovAnton    6    

5

Обновление 1С Программист Платформа 1С v8.3 Абонемент ($m)

Отчет о сравнении конфигураций представляет собой обширный массив информации. Однако у него есть значительное ограничение: его невозможно настраивать, например, добавлять различные группировки, фильтры или сортировку данных. Тем не менее, если преобразовать этот отчет в таблицу и использовать её в качестве источника данных, это открывает возможность для создания универсального отчета с использованием группировок, отборов и сортировки

10 стартмани

18.02.2025    712    5    kalyaka    0    

7

Обновление 1С Программист Платформа 1С v8.3 Абонемент ($m)

При длительном обновлении из конфигуратора следим за процентом загрузки ПК и отправляем письмо на почту при завершении.

1 стартмани

17.02.2025    346    0    slavik27    0    

3

Обновление 1С Запросы Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 Абонемент ($m)

Данный инструмент помогает анализировать доработанную конфигурацию после обновления на новый релиз и находить «битые» тексты запросов, в которых участвуют несуществующие в новом релизе метаданные.

2 стартмани

06.02.2025    1951    16    XilDen    26    

35

Групповая разработка (Git, хранилище) Обновление 1С Программист Платформа 1С v8.3 Россия Бесплатно (free)

Внедряем проверку новых версий прямо в расширение. Оповещайте о новых версиях и показывайте пользователям список изменений. Для разработчиков, которые хотят сэкономить время и повысить лояльность клиентов!

05.02.2025    2045    Nonik    10    

17
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Константин С. 675 19.01.19 13:33 Сейчас в теме
А разве нет регламентного задания на обновление Классификаторов?
2. Meteorage 21 19.01.19 19:55 Сейчас в теме
(1) Бесспорно, есть регламентное задание. Оно называется "Обновление классификаторов". И оно выполняет обновление классификаторов:

1) Производственные календари
2) Тарифы страховых взносов
3) Предельная величина базы страховых взносов
4) Максимальный размер ежемесячной страховой выплаты
5) Минимальная оплата труда
6) Размер вычетов НДФЛ
7) Общероссийский классификатор основных фондов
3. CaSH_2004 374 03.01.21 22:25 Сейчас в теме
(0) Не знаю как плюсануть в новом интерфейсе сайта (подскажите если не сложно) но автору однозначно "+".
Очень упростил мне работу. Попробую и я немного упростить работу другим:
Скачал я и решил обновить ФИАС в Зарплата и управление персоналом, редакция 3.1 (3.1.16.108)
OneScript я не использую и решил пока не тратить время на изучение, мне достаточно просто было загрузить базу с обработкой.
Но пришлось немного в скрипте покапаться и застрял немного на Новый Команда т.к. такого в 1С нет, но оказалась что это механизм самого скрипта. Нюансы типа
Команда.УстановитьКоманду("deployka");
Команда.ДобавитьПараметр("run");
непонятны откуда они и что значит "deployka", но в общем смысл понятен что просто запускается 1С и обработка в ней без передчи параметров в нее, жаль об этом нигде не слова, но в скрипте все вплолне читаемо.
Далее возникла проблема с самой обработкой в ЗУП, на там просто выдавала ошибку уже в общем модуле. Но я так понял что либо обработка устарела либо ЗУП отличается ей от БП, вобщем пошел в
РС.АдресныеОбъекты и скопировал оттуда форму ЗагрузкаАдресногоКлассификатора в созданную новую обработку, указал форму основной и в эту форму перенес из формы автора область Доработки и добавление в процедуре ЗавершениеЗагрузки и все заработало!
Если бы автор все это указал у себя то вообще было бы супер быстро решить проблему.

Интересно кстати а реально нет автоматического обнавления через регламентное задание? Мне оно все равно не подходит, но для справки интересно.
Meteorage; +1 Ответить
4. CaSH_2004 374 03.01.21 22:58 Сейчас в теме
Еще забыл добавить - ошибку то сложно было выявить т.к. выполнение происходит в Попытке и ошибка просто записывается в журнал регистрации и происходит ЗавершениеСистемы(). Непонятно как автор планировал потом ее читать (хотя намеки на это есть в коде).
И непонятно как определить успешно ли выполнена обработкаю Я переделал на вывод результата выполнения в текстовый файл т.к. не знаю как сделать код возврата работы 1С при ее завершении. Если кто-то знает - поделитесь!
5. Chebchic 31.10.23 18:16 Сейчас в теме
в современной бухгалтерии не работает, к сожалению
7. Meteorage 21 31.10.23 18:49 Сейчас в теме
(6)
(5)
Давно не проверял. Могу проверить/доработать, если нужно
6. Chebchic 31.10.23 18:17 Сейчас в теме
8. Chebchic 31.10.23 20:52 Сейчас в теме
Доработка будет платной? Если бы она (обработка) просто работала - было бы очень хорошо.
Оставьте свое сообщение