Как загрузить новые БИК из файла JSON в УПП

1. bamblbi 27.04.21 13:14 Сейчас в теме
Платформа (8.3.9.2033)
Конфигурация не типовая УПП (1.3.152.3)

Подскажите, пожалуйста, как загрузить новые БИК из файла JSON(https://releases.1c.ru/classifiers/total) в УПП ?


P.S. есть куча обработок на портале и в интернете. Но нет возможности их приобрести.
По теме из базы знаний
Найденные решения
2. bamblbi 27.04.21 17:15 Сейчас в теме
Обработка "ЗагрузкаБанков". Модуль формы. Метод "ЗагрузитьКлассификаторБанков()"

В конце перед "ФормаИндикации.Закрыть();" вставляем:

// Новый код ++
	ДеревоБанков.Строки.Очистить();
	
	Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
	Диалог.Заголовок = "Выбор JSON классификатора!";
	Если Диалог.Выбрать() Тогда
		ФайлДЖЕЙСОН = Диалог.ПолноеИмяФайла; // путь к файлу JSON скаченному из https://releases.1c.ru/classifiers/total
	Иначе
		возврат;
	КонецЕсли;
	
	Чтение = Новый ЧтениеJSON;
	Чтение.ОткрытьФайл(ФайлДЖЕЙСОН);
	ДанныеДЖЕЙСОН = ПрочитатьJSON(Чтение, Ложь);
	Чтение.Закрыть();
	
	ФормаИндикации.МаксимальноеЗначение = КолСтрок;
	
	КодРег = "";
	НаименованиеРегиона = "";
	Наименование = "";
	БИК = "";
	КорСчет = "";
	ТипБанка = "";
	Индекс = "";
	Пункт = "";
	ТипПункта = "";
	Город = "";
	Адрес = "";
	Телефон = "";
	
	Для каждого стрДжейсон Из ДанныеДЖЕЙСОН.bics Цикл
		ФормаИндикации.Значение = к;
		
		#Область Переменые
		
		Попытка
			КодРег = стрДжейсон.participantInfo.regionCode;
		Исключение
		КонецПопытки;
		
		Попытка
			НаименованиеРегиона = стрДжейсон.participantInfo.regionName;
		Исключение
		КонецПопытки;
		
		Попытка
			Наименование = стрДжейсон.participantInfo.name;
		Исключение
		КонецПопытки;
		
		Попытка
			БИК = стрДжейсон.bic;
		Исключение
		КонецПопытки;
	
		Попытка
			accounts = стрДжейсон.accounts;
		Исключение
		КонецПопытки;		
				
		Если accounts <> Неопределено И accounts.Количество() Тогда
			Попытка
				КорСчет = accounts[0].account;
			Исключение
			КонецПопытки;	
		Иначе
			КорСчет = "";
		КонецЕсли;
		
		Попытка
			ТипБанка = ОпределитьТипБанка(СокрЛП(КорСчет));	
		Исключение
		КонецПопытки;	
		
		Попытка
			Индекс = стрДжейсон.participantInfo.postalCode;
		Исключение
		КонецПопытки;
		
		Попытка
			Пункт = стрДжейсон.participantInfo.locality;
		Исключение
		КонецПопытки;
		
		Попытка
			ТипПункта = стрДжейсон.participantInfo.localityType;
		Исключение
		КонецПопытки;
		
		Город = СокрЛП(ТипПункта + " " + Пункт);
		
		Попытка
			Адрес = стрДжейсон.participantInfo.address;
		Исключение
		КонецПопытки;
		
		Попытка
			Телефон = стрДжейсон.participantInfo.phones;
		Исключение
		КонецПопытки;
		
		#КонецОбласти
		
								
		РегТабл = ДеревоБанков.Строки.Найти(КодРег,"КодРегиона",Ложь);
		Если РегТабл = Неопределено Тогда
			НоваяСтрокаРегиона              = ДеревоБанков.Строки.Добавить();
			НоваяСтрокаРегиона.КодРегиона   = КодРег;
			НоваяСтрокаРегиона.Наименование = НаименованиеРегиона;
			НоваяСтрокаРегиона.Загрузка     = Ложь;
		Иначе	
			НоваяСтрокаРегиона = РегТабл;
		КонецЕсли;
		
		НоваяСтрокаБанка              = НоваяСтрокаРегиона.Строки.Добавить();
		НоваяСтрокаБанка.Наименование = Наименование;
		НоваяСтрокаБанка.КодРегиона   = БИК;
		НоваяСтрокаБанка.КоррСчет     = КорСчет;
		НоваяСтрокаБанка.ТипБанка     = ТипБанка;	
		НоваяСтрокаБанка.Индекс       = Индекс;
		НоваяСтрокаБанка.Город        = Город;
		НоваяСтрокаБанка.Адрес        = Адрес;
		НоваяСтрокаБанка.Телефон      = Телефон;
		НоваяСтрокаБанка.Загрузка = Ложь;		
	КонецЦикла;
	// Новый код --
Показать
МихаилМ; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. bamblbi 27.04.21 17:15 Сейчас в теме
Обработка "ЗагрузкаБанков". Модуль формы. Метод "ЗагрузитьКлассификаторБанков()"

В конце перед "ФормаИндикации.Закрыть();" вставляем:

// Новый код ++
	ДеревоБанков.Строки.Очистить();
	
	Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
	Диалог.Заголовок = "Выбор JSON классификатора!";
	Если Диалог.Выбрать() Тогда
		ФайлДЖЕЙСОН = Диалог.ПолноеИмяФайла; // путь к файлу JSON скаченному из https://releases.1c.ru/classifiers/total
	Иначе
		возврат;
	КонецЕсли;
	
	Чтение = Новый ЧтениеJSON;
	Чтение.ОткрытьФайл(ФайлДЖЕЙСОН);
	ДанныеДЖЕЙСОН = ПрочитатьJSON(Чтение, Ложь);
	Чтение.Закрыть();
	
	ФормаИндикации.МаксимальноеЗначение = КолСтрок;
	
	КодРег = "";
	НаименованиеРегиона = "";
	Наименование = "";
	БИК = "";
	КорСчет = "";
	ТипБанка = "";
	Индекс = "";
	Пункт = "";
	ТипПункта = "";
	Город = "";
	Адрес = "";
	Телефон = "";
	
	Для каждого стрДжейсон Из ДанныеДЖЕЙСОН.bics Цикл
		ФормаИндикации.Значение = к;
		
		#Область Переменые
		
		Попытка
			КодРег = стрДжейсон.participantInfo.regionCode;
		Исключение
		КонецПопытки;
		
		Попытка
			НаименованиеРегиона = стрДжейсон.participantInfo.regionName;
		Исключение
		КонецПопытки;
		
		Попытка
			Наименование = стрДжейсон.participantInfo.name;
		Исключение
		КонецПопытки;
		
		Попытка
			БИК = стрДжейсон.bic;
		Исключение
		КонецПопытки;
	
		Попытка
			accounts = стрДжейсон.accounts;
		Исключение
		КонецПопытки;		
				
		Если accounts <> Неопределено И accounts.Количество() Тогда
			Попытка
				КорСчет = accounts[0].account;
			Исключение
			КонецПопытки;	
		Иначе
			КорСчет = "";
		КонецЕсли;
		
		Попытка
			ТипБанка = ОпределитьТипБанка(СокрЛП(КорСчет));	
		Исключение
		КонецПопытки;	
		
		Попытка
			Индекс = стрДжейсон.participantInfo.postalCode;
		Исключение
		КонецПопытки;
		
		Попытка
			Пункт = стрДжейсон.participantInfo.locality;
		Исключение
		КонецПопытки;
		
		Попытка
			ТипПункта = стрДжейсон.participantInfo.localityType;
		Исключение
		КонецПопытки;
		
		Город = СокрЛП(ТипПункта + " " + Пункт);
		
		Попытка
			Адрес = стрДжейсон.participantInfo.address;
		Исключение
		КонецПопытки;
		
		Попытка
			Телефон = стрДжейсон.participantInfo.phones;
		Исключение
		КонецПопытки;
		
		#КонецОбласти
		
								
		РегТабл = ДеревоБанков.Строки.Найти(КодРег,"КодРегиона",Ложь);
		Если РегТабл = Неопределено Тогда
			НоваяСтрокаРегиона              = ДеревоБанков.Строки.Добавить();
			НоваяСтрокаРегиона.КодРегиона   = КодРег;
			НоваяСтрокаРегиона.Наименование = НаименованиеРегиона;
			НоваяСтрокаРегиона.Загрузка     = Ложь;
		Иначе	
			НоваяСтрокаРегиона = РегТабл;
		КонецЕсли;
		
		НоваяСтрокаБанка              = НоваяСтрокаРегиона.Строки.Добавить();
		НоваяСтрокаБанка.Наименование = Наименование;
		НоваяСтрокаБанка.КодРегиона   = БИК;
		НоваяСтрокаБанка.КоррСчет     = КорСчет;
		НоваяСтрокаБанка.ТипБанка     = ТипБанка;	
		НоваяСтрокаБанка.Индекс       = Индекс;
		НоваяСтрокаБанка.Город        = Город;
		НоваяСтрокаБанка.Адрес        = Адрес;
		НоваяСтрокаБанка.Телефон      = Телефон;
		НоваяСтрокаБанка.Загрузка = Ложь;		
	КонецЦикла;
	// Новый код --
Показать
МихаилМ; +1 Ответить
3. bamblbi 27.04.21 17:50 Сейчас в теме
Забыл сказать "ЗагрузитьКлассификаторБанков()" - это если выбрать загрузку с сайта 1С. Т.е. типовую загрузку игнорируем свою размещаем ниже. Если хотите красиво, то добавьте отдельный радиобаттон со своим видом загрузки.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот