MAIB: получение курса обмена валют

02.04.24

Учетные задачи - Банковские операции

Автозагрузка курса валют из личного кабинета банка MAIB (Молдова).

Скачать файл

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

Наименование По подписке [?] Купить один файл
Внешняя обработка которая запускает скомпелированный код Python вложенный как макет обработки
.epf 17,72Mb
0
0 Скачать (1 SM) Купить за 1 850 руб.
Код на Python
.py 4,15Kb
0
0 Скачать (5 SM) Купить за 3 050 руб.

Условия: Компания занимается продажей электронной техники, и ведет управленческий учет в USD.

Также всё расчеты с поставщиками проходят в USD, компания сотрудничает только с одним банком MAIB.

Задача: загружать курс продажи валюты из личного кабинета и загружать в качестве курса в 1С вместо курса ЦБ Молдовы.

Решение:

  1. Пишем программу на Python с использованием библиотеки Selenium, которая получает входные данные логин и пароль, производит вход в личный кабинет по адресу https://business.maib.md/IBMAIB/, находит курс обмена валют через парсинг HTML.
  2. Для получения данных подключаем библиотеку SYS
  3. Полученную программу компилируем в EXE файл
  4. В 1С пишем обработку, которая будет выполняться по расписанию. Скомпилированный EXE добавляем в макеты обрабокти.
  5. Т.к. у меня IQ 10, логин и пароль храним в коде
  6. Получаем повестку в суд от банка за нарушение правил пользования личным кабинетом.

Код в 1С
 

&НаСервере
Процедура ЗагрузитьКурс() Экспорт
	Логин = "Login"; 
	Пароль = "Password";
	ВременныйКаталог = КаталогВременныхФайлов();
	ПутьКИсполяемому = ВременныйКаталог + "TakeExchangeRate.exe" ;
	ПутьКXML =   ВременныйКаталог + "ExchangeRates.xml";
	Если не  ПроверитьСуществованиеФайла(ПутьКИсполяемому) Тогда
		Попытка
			Индификатор = ПолучитьДанныеМакета(ПутьКИсполяемому);
			МакетДоговора = ПолучитьИзВременногоХранилища(Индификатор);
			МакетДоговора.Записать(ПутьКИсполяемому);
		Исключение
			Сообщить(ОписаниеОшибки());
		КонецПопытки;
	КонецЕсли;
	Попытка 
		ФайлСкрипта = ВременныйКаталог + "TakeExchangeRate.bat";
		ТекстовыйДокумент = Новый ТекстовыйДокумент;
		ТекстовыйДокумент.УстановитьТекст(ПутьКИсполяемому + " "+ Логин + " "+ Пароль );
		ТекстовыйДокумент.Записать(ФайлСкрипта, "cp866");
		КодВозврата = Неопределено;
		ЗапуститьПриложение(ФайлСкрипта,ВременныйКаталог, Истина, КодВозврата);
		
	Исключение 
		Сообщить("Ошибка при запуске команды: " + ПутьКИсполяемому); 
		Возврат ;
	КонецПопытки;  
	ЧтениеXML = Новый ЧтениеXML;
	ЧтениеXML.ОткрытьФайл(ПутьКXML);
	
	ИнформацияКомпоненты = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML); 
	
	Если НЕ ИнформацияКомпоненты.Свойства().Получить("USD") = Неопределено тогда
		Курс =  Число(СокрЛП(СтрРазделить(ИнформацияКомпоненты.USD.VanzareUSD, Символы.ПС)[0]));
	КонецЕсли; 
	МенеджерЗаписи = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();
	
	МенеджерЗаписи.Валюта = Справочники.Валюты.НайтиПоНаименованию("USD");
	МенеджерЗаписи.Курс = Курс;
	МенеджерЗаписи.Кратность = 1;
	МенеджерЗаписи.Период = ТекущаяДата();
	МенеджерЗаписи.Записать();	
	ЧтениеXML.Закрыть();
КонецПроцедуры         

&НаСервере
Функция ПроверитьСуществованиеФайла(ЛокПолноеИмяФайла) Экспорт
	ВыбФайл = Новый Файл(ЛокПолноеИмяФайла);		
	Возврат ВыбФайл.Существует();
КонецФункции 

&НаСервере
Функция ПолучитьДанныеМакета(ПутьКИсполяемому)
	АдресХранилища = Новый УникальныйИдентификатор();
	Макет          = ПолучитьМакет("PythonКод"); 
	
	ВременныйФайл = ПолучитьИмяВременногоФайла(ПутьКИсполяемому); 
	Макет.Записать(ВременныйФайл);
	
	Адрес = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ВременныйФайл), АдресХранилища); 
	УдалитьФайлы(ВременныйФайл); 
	
	Возврат Адрес; 
КонецФункции 

Протестировано на конфигурации

  • Управление торговлей для Молдовы, редакция 2.5
  • Локализация для Молдовы: 1C-Account-Timbal SRL (2.5.2.0) 

См. также

Банковские операции Обмен с интернет-банком Эквайринг/ридер магнитных карт Программист Бухгалтер Пользователь Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Устали вручную дозаполнять и корректировать документы по банку после загрузки банковской выписки? С помощью правил обработки банковской выписки вы сможете автоматически определять правильный вид хозяйственной операции, заполнять расшифровку, аналитику платежа и многое другое.

19200 руб.

21.03.2023    12833    89    16    

76

WEB-интеграция Администрирование веб-серверов Платные (руб)

Веб-портал обеспечивает удобный доступ к конфигурации 1С:ITIL, 1С:ITILIUM, Управление IT-отделом 8 через интернет с любого устройства посредством браузера, увеличивая эффективность работы пользователей и снижая нагрузку на сервер. Быстрая инсталляция портала за пару часов, удобный и интуитивно понятный интерфейс и безопасность данных помогут упростить работу с порталом и ускорить выполнение бизнес-процессов компании.

128000 руб.

19.12.2023    2203    2    0    

9

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Модуль "Подсистема интеграции AmoCRM с 1С" позволяет обеспечить единое информационное пространство, в котором пользователи могут эффективно управлять клиентской базой, следить за статусами сделок и поддерживать актуальность данных как в AmoCRM, так и в 1С. Бесплатный период Техподдержки - 1 месяц.

60000 руб.

07.05.2019    34238    64    45    

24

Оптовая торговля Розничная торговля WEB-интеграция 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Платные (руб)

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

57600 руб.

26.11.2024    1950    1    1    

4

Банковские операции Мастера заполнения Программист Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Если вам нужно корректировать банковские документы, это расширение — именно то, что вам нужно! Создайте правило обработки, укажите, как заполнять документы, и оно автоматически применится при загрузке банковской выписки. Это значительно сократит время и усилия на корректировку. Расширение легко устанавливается в большинство современных конфигураций 1С:УТ 11.5, 1С:ERP 2.5, 1С:КА 2.5, 1С:УНФ 3.0, Розница 3.0

12000 руб.

20.12.2024    1023    6    10    

8

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    18812    21    22    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    3434    3    2    

4
Оставьте свое сообщение