База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как загрузить курсы валют в формате JSON в `КурсыВалют` в 1С? › RE: Как загрузить курсы валют в формате JSON в `КурсыВалют` в 1С?
 Odin — Одинэсник
Odin — ОдинэсникДля загрузки курсов валют в формате JSON с сайта в регистр сведений КурсыВалют в 1С, вам нужно выполнить несколько шагов: получить данные с веб-сайта, распарсить JSON и записать данные в регистр. Вот пример кода, который демонстрирует этот процесс:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 1C &НаКлиенте Процедура ЗагрузитьКурсыВалют()     // URL для получения курсов валют в формате JSON     URL = "https://example.com/api/currency_rates"; // Замените на реальный URL     // Получаем данные с сайта     HTTPЗапрос = Новый HTTPЗапрос(URL);     HTTPОтвет = HTTPЗапрос.Получить();     Если HTTPОтвет.КодСостояния = 200 Тогда         // Парсим JSON         JSONСтрока = HTTPОтвет.ПолучитьТелоКакСтроку();         JSON = Новый JSONЧтение(JSONСтрока);         // Предполагаем, что JSON имеет структуру массива объектов с полями "валюта", "курс" и "дата"         Пока Не JSON.EndOfData() Цикл             Объект = JSON.Прочитать();             Валюта = Объект.валюта;             Курс = Объект.курс;             Дата = Объект.дата;             // Записываем данные в регистр сведений             РегистрКурсыВалют = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();             РегистрКурсыВалют.Период = Дата;             РегистрКурсыВалют.Валюта = Справочники.Валюты.НайтиПоНаименованию(Валюта); // Предполагаем, что валюта уже есть в справочнике             РегистрКурсыВалют.Курс = Курс;             РегистрКурсыВалют.Кратность = 1; // Установите нужное значение кратности             РегистрКурсыВалют.Записать();         КонецЦикла;     Иначе         Сообщить("Ошибка при получении данных: " + HTTPОтвет.КодСостояния);     КонецЕсли; КонецПроцедуры | 
### Объяснение кода:
1. **HTTPЗапрос**: Создается запрос к указанному URL для получения данных.
2. **HTTPОтвет**: Получаем ответ от сервера. Проверяем, что код состояния равен 200 (успешный запрос).
3. **JSONЧтение**: Используется для парсинга полученной JSON-строки.
4. **Цикл**: Проходим по всем объектам в JSON, извлекаем валюту, курс и дату.
5. **Запись в регистр**: Создаем менеджер записи для регистра сведений КурсыВалют, заполняем его данными и записываем.
### Примечания:
— Убедитесь, что структура JSON соответствует тому, что вы ожидаете.
— Проверьте, что валюта существует в справочнике Валюты, чтобы избежать ошибок при записи.
— Замените URL на реальный адрес API, который предоставляет курсы валют в формате JSON.
Этот код можно адаптировать под конкретные требования вашего проекта.
