Назначение
Обработка загружает файлы из указанной папки в папку Яндекс.Диска.
Перед загрузкой обработка создает целевую папку на Яндекс.Диске, если ее еще нет. Для работы используется OAuth-токен пользователя Яндекса, которому принадлежит нужный Яндекс.Диск.
Обработка совместима с механизмом дополнительных отчетов и обработок БСП и может запускаться как вручную из формы настроек, так и командой дополнительной обработки, в том числе по расписанию.
Возможности
- Загрузка файлов из выбранного каталога на Яндекс.Диск.
- Работа через HTTPS и официальный API `cloud-api.yandex.net`.
- Автоматическое создание папки назначения на Яндекс.Диске.
- Перезапись файлов на Диске при повторной загрузке.
- Сохранение настроек в элементе справочника "Дополнительные отчеты и обработки".
- Ручной запуск загрузки из формы обработки.
- Запуск серверной команды дополнительной обработки по расписанию.
- Запись итогов выполнения в журнал регистрации 1С.
Когда пригодится
- Регулярная выгрузка отчетов из 1С в облачную папку.
- Передача файлов обмена внешним пользователям через Яндекс.Диск.
- Резервное копирование небольших служебных файлов из каталога на сервере 1С.
- Автоматизация сценариев, где нужно забрать файлы из локальной папки и сделать их доступными в облаке.
Требования
- Платформа 1С:Предприятие 8.3.
- Конфигурация с поддержкой дополнительных отчетов и обработок БСП.
- Доступ сервера 1С к исходному каталогу с файлами.
- Доступ сервера 1С в интернет к адресу `https://cloud-api.yandex.net`.
- Аккаунт Яндекса с подключенным Яндекс.Диском.
- OAuth-токен Яндекса с правами доступа к Яндекс.Диску.
Важно: если информационная база работает в клиент-серверном варианте, путь к каталогу файлов должен быть доступен именно серверу 1С, а не только компьютеру пользователя.
Установка
- Откройте раздел администрирования дополнительных отчетов и обработок.
- Добавьте внешнюю обработку "Загрузка файлов на Яндекс.Диск".
- При необходимости разрешите использование дополнительных обработок в информационной базе.
- Откройте команду "Настройки загрузки на Яндекс.Диск".
- Заполните каталог файлов и OAuth-токен.
- Сохраните настройки.
Настройка
В форме настроек указываются:
- "Каталог файлов" - папка, из которой обработка будет брать файлы для загрузки.
- "OAuth-токен" - токен доступа к Яндекс.Диску.
Целевая папка на Яндекс.Диске по умолчанию: `/Uploads/1C`.
При выполнении загрузки обработка:
- Проверяет заполнение обязательных настроек.
- Создает папку на Яндекс.Диске, если она отсутствует.
- Получает список файлов из исходного каталога.
- Для каждого файла запрашивает у Яндекс.Диска ссылку загрузки.
- Передает файл на полученную ссылку.
- Записывает итог выполнения в журнал регистрации 1С.
Запуск
Доступны два варианта запуска:
- из формы настроек по кнопке "Выполнить загрузку";
- через команду дополнительной обработки "Загрузить файлы на Яндекс.Диск".
Для регулярной загрузки можно настроить выполнение команды дополнительной обработки по расписанию средствами БСП.
Получение OAuth-токена Яндекс.Диска
Шаг 1: Регистрация приложения
-
Перейдите на страницу создания приложения.
-
Заполните форму:
-
Название приложения: Введите любое понятное вам имя (например, "Мой Тестовый Клиент").
-
Платформы: Выберите "Веб-сервисы". В поле "Redirect URI" (Callback URL) вставьте значение по умолчанию:
https://oauth.yandex.ru/verification_code. -
Доступ к данным: Здесь выберите права, которые будут у вашего приложения. Для большинства задач вам понадобятся:
-
cloud_api:disk.read— чтение всего Диска. -
cloud_api:disk.write— запись в любом месте на Диске. -
cloud_api:disk.info— доступ к информации о Диске.
-
-
-
Внизу страницы нажмите кнопку "Создать приложение".
Шаг 2: Получение токена
-
На странице только что созданного приложения найдите и скопируйте его ClientID.
-
Сформируйте специальную ссылку для получения токена, подставив ваш
ClientID:
https://oauth.yandex.ru/authorize?response_type=token&client_id=**ВАШ_CLIENTID** -
Перейдите по этой ссылке в браузере, войдите в свой аккаунт Яндекса и нажмите "Разрешить".
-
После авторизации вы будете перенаправлены на страницу, в адресной строке которой будет ваш токен.
Важное замечание: Сохраните полученный токен сразу, так как Яндекс OAuth не хранит выданные токены, и вы не сможете посмотреть его позже в личном кабинете. Если вы его потеряете, придется генерировать новый.
Безопасность
- Не публикуйте OAuth-токен в открытом доступе.
- Не передавайте токен пользователям, которым не нужен доступ к Яндекс.Диску.
- Для эксплуатации лучше использовать отдельный технический аккаунт Яндекса.
- При компрометации токена отзовите доступ в настройках аккаунта Яндекса и выпустите новый токен.
- Убедитесь, что доступ к настройкам дополнительной обработки есть только у администраторов или ответственных пользователей.
Ограничения и особенности
- Обработка загружает файлы с сервера 1С, поэтому каталог должен быть доступен серверному процессу 1С.
- Скорость загрузки зависит от размера файлов, канала связи и ограничений API Яндекс.Диска.
- Для больших файлов и нестабильного интернета рекомендуется предварительно протестировать загрузку на копии каталога.
- При повторной загрузке файлов с теми же именами обработка использует режим перезаписи.
Внешняя обработка для 1С позволяет автоматически выгружать файлы из указанной папки на Яндекс.Диск. Поддерживает сохранение настроек, ручной запуск и запуск по расписанию через механизм дополнительных обработок БСП. Для обмена с Яндекс.Диском используется официальный REST API и OAuth-токен пользователя.
Подходит для автоматической передачи отчетов, файлов обмена, архивов и других документов из 1С в облачное хранилище.
## История версий
- 1.2.0 — добавлена опция удаления файлов в папке на Яндекс.Диске перед загрузкой.
- 1.1.0 — добавлена функция удаления файлов из папки на Яндекс.Диске.
- 1.0.0 — первоначальный выпуск.
Проверено на следующих конфигурациях и релизах:
- Бухгалтерия предприятия, редакция 3.0, релизы 3.0.197.22
- Управление нашей фирмой, редакция 3.0, релизы 3.0.13.330
- Управление торговлей, редакция 11, релизы 11.5.26.118
Вступайте в нашу телеграмм-группу Инфостарт