Универсальная выгрузка отчетов в облако по регламенту
Краткое описание
Обработка для автоматической выгрузки любых отчетов 1С (СКД и обычных) в облачные хранилища по расписанию. Поддерживает Яндекс.Диск и Mail.ru Cloud, множество форматов выгрузки, вычисляемые параметры и полный контроль выполнения.
Тестировалась на платформе 8.3.25.1394 в режиме совместимости 8.3.12.
Назначение
Решает задачу автоматической отправки отчетов в облачные хранилища без необходимости ручного формирования и выгрузки. Позволяет настроить регулярную выгрузку произвольного количества отчетов с различными параметрами в разные облачные папки.
Основные возможности
Облачные хранилища
- Яндекс.Диск - через REST API с OAuth авторизацией
- Mail.ru Cloud - через WebDAV протокол
- Проверка соединения с отображением свободного места
- Автоматическое создание папок в облаке
Форматы выгрузки
- XLSX (Excel 2007+)
- XLS (Excel 97-2003)
- PDF (для просмотра и печати)
- MXL (табличный документ 1С)
- HTML (веб-формат)
Работа с отчетами
- Поддержка отчетов на СКД
- Поддержка обычных отчетов
- Автоматическое извлечение параметров отчета
- Вычисляемые значения параметров (динамические периоды)
- Тестовое формирование с предварительным просмотром
- Сохранение последнего сформированного отчета
Шаблоны имен файлов
Макросы для автоматического формирования имен:
{Дата}
- текущая дата{Время}
- текущее время{ДатаВремя}
- дата и время{ИмяОтчета}
- название отчета
Пример: Продажи_{Дата}.xlsx
→ Продажи_06.10.2025.xlsx
Расписание
- Регламентное задание 1С
- Гибкая настройка расписания (ежедневно, еженедельно, ежемесячно, произвольно)
- Визуальная индикация состояния регламента
- Автоматическое обновление статусов каждые 30 секунд
Контроль выполнения
- Полная история всех выгрузок с результатами
- Счетчик неудачных попыток с автоматической остановкой
- Цветовая индикация статусов (зеленый/красный)
- Фильтрация истории по результату
Управление заданиями
- Создание неограниченного количества заданий
- Копирование настроек
- Отборы по использованию, типу облака, наличию ошибок
- Массовое управление
Архитектура решения
Компоненты
- Внешняя обработка - главная форма со списком заданий
- Форма настройки задания - детальная настройка параметров
- Регистр сведений "НастройкиВыгрузкиОтчетовВОблако" - хранение настроек
- Регистр сведений "ИсторияВыгрузокВОблако" - история выполнения
- Перечисление "ТипыОблака" - типы облачных хранилищ
- Регламентное задание "ВыгрузкаОтчетаВОблако" - автоматическое выполнение
- Общий модуль - API работы с облаками и формирование отчетов
Принцип работы
Для отчетов на СКД
Требуется только добавить в модуль отчета функцию с описанием параметров:
Функция ПолучитьПараметрыДляВыгрузкиВОблако() Экспорт
Параметры = Новый Массив;
Параметр = Новый Структура;
Параметр.Вставить("Имя", "НачалоПериода");
Параметр.Вставить("Представление", "Начало периода");
Параметр.Вставить("ТипЗначения", Новый ОписаниеТипов("Дата"));
Параметр.Вставить("Вычислить", "НачалоДня(ТекущаяДата())");
Параметр.Вставить("Обязательный", Истина);
Параметры.Добавить(Параметр);
Возврат Параметры;
КонецФункции
Обработка автоматически:
- Извлечет параметры
- Вычислит значения по алгоритмам
- Сформирует отчет через СКД
- Загрузит в облако
Для обычных отчетов
Дополнительно требуется функция формирования:
Функция СформироватьОтчетДляВыгрузки(ПараметрыОтчета) Экспорт
ТабДокумент = Новый ТабличныйДокумент;
// Код формирования отчета
Возврат ТабДокумент;
КонецФункции
Вычисляемые параметры
Параметры могут вычисляться динамически при каждой выгрузке:
Примеры алгоритмов:
// Текущий день
НачалоДня(ТекущаяДата())
КонецДня(ТекущаяДата())
// Предыдущий месяц
НачалоМесяца(ДобавитьМесяц(ТекущаяДата(), -1))
КонецМесяца(ДобавитьМесяц(ТекущаяДата(), -1))
// Начало года
НачалоГода(ТекущаяДата())
// Справочники
Справочники.Организации.ОсновнаяОрганизация
Это позволяет настроить выгрузку один раз, и параметры будут автоматически актуализироваться при каждом запуске.
Технические требования
- Платформа: 1С:Предприятие 8.2 и выше
- Режим работы: Обычное приложение (толстый клиент)
- Тип форм: Обычные формы
- Интернет: Требуется для загрузки в облако
- Права: Администрирование для настройки регламентных заданий
Установка и настройка
1. Загрузка в конфигурацию
- Загрузите файлы обработки в конфигурацию
- Создайте регистры сведений:
- НастройкиВыгрузкиОтчетовВОблако
- ИсторияВыгрузокВОблако
- Создайте перечисление ТипыОблака
- Создайте регламентное задание ВыгрузкаОтчетаВОблако
- Добавьте общий модуль с функциями работы
2. Настройка облачного хранилища
Для Яндекс.Диска:
- Зарегистрируйте приложение на https://oauth.yandex.ru
- Получите OAuth-токен
- Укажите токен в настройках задания
Для Mail.ru:
- Создайте пароль для внешних приложений
- Укажите email и пароль в настройках
3. Настройка отчета
- Добавьте в модуль отчета функцию
ПолучитьПараметрыДляВыгрузкиВОблако()
- Для обычных отчетов - также
СформироватьОтчетДляВыгрузки()
- На странице "Параметры отчета" формы есть готовый пример кода
4. Создание задания выгрузки
- Откройте обработку
- Нажмите "Добавить"
- Заполните основные параметры
- Выберите отчет и заполните параметры
- Настройте подключение к облаку
- Проверьте тестовой выгрузкой
- Настройте расписание
- Сохраните
Интерфейс
Главная форма
- Список всех заданий с основными параметрами
- Отборы по различным критериям
- Кнопки управления (добавить, изменить, удалить, выполнить)
- Автоматическая очистка "осиротевших" регламентных заданий
Форма настройки задания
Вкладка "Основное":
- Наименование и комментарий
- Выбор отчета и варианта
- Формат выгрузки с автоматическим обновлением расширения
- Шаблон имени файла с макросами
Вкладка "Параметры отчета":
- Автоматическая загрузка параметров из отчета
- Заполнение значений и алгоритмов вычисления
- Тестовое формирование отчета
- Открытие последнего сформированного отчета
- Справка с примером кода для модуля отчета
Вкладка "Облако":
- Выбор типа облака
- Настройка авторизации
- Путь для сохранения файлов
- Проверка соединения с отображением свободного места
- Статусы формирования и выгрузки
- Полная тестовая выгрузка
Вкладка "Расписание":
- Включение регламентного задания
- Настройка расписания
- Визуализация статусов с цветовой индикацией
- Информация о последнем запуске
- Автообновление каждые 30 секунд
Вкладка "Дополнительно":
- Статистика (даты создания, изменения, выгрузок)
- Контроль попыток с возможностью сброса
- Технические параметры
Вкладка "История":
- Все попытки выгрузки с результатами
- Фильтрация по результату
- Информация об отчете и варианте
- Путь к загруженному файлу
Сценарии использования
Ежедневная выгрузка продаж
- Отчет: Продажи за период
- Параметры: НачалоДня / КонецДня с вычислением
- Формат: XLSX
- Расписание: ежедневно в 09:00
- Результат: каждое утро актуальный отчет в облаке
Месячный отчет для бухгалтерии
- Отчет: Оборотно-сальдовая ведомость
- Параметры: начало и конец предыдущего месяца
- Формат: PDF
- Расписание: 1 число каждого месяца в 08:00
- Результат: автоматический отчет за прошлый месяц
Выгрузка остатков для руководителя
- Отчет: Остатки товаров
- Параметры: текущая дата
- Формат: XLSX
- Расписание: каждые 4 часа с 08:00 до 20:00
- Результат: актуальные остатки несколько раз в день
Преимущества
- Универсальность - работает с любыми отчетами без доработок
- Автоматизация - настроил один раз, работает постоянно
- Гибкость - вычисляемые параметры, макросы в именах файлов
- Надежность - контроль ошибок, история, попытки повторной выгрузки
- Удобство - интуитивный интерфейс, тестирование, справка
- Масштабируемость - неограниченное количество заданий
- Прозрачность - полная история с результатами каждой выгрузки
Ограничения
- Работает только в обычных формах (не управляемое приложение)
- Требует доступ в интернет
- Для автоматической выгрузки требуются права администратора
- Не поддерживает другие облачные хранилища (кроме Яндекс и Mail.ru)
Планы развития
- Поддержка Google Drive
- Поддержка Dropbox
- Отправка по FTP/SFTP
- Отправка по email
- Уведомления об ошибках
- Версия для управляемых форм
Поддержка
Обработка включает:
- Подробную документацию пользователя
- Примеры кода в интерфейсе
- Комментарии в коде
- Типовые сценарии использования
Скриншоты
- Главная форма со списком заданий
- Настройка задания - вкладка "Основное"
- Параметры отчета с примером кода
- Настройка облака с проверкой соединения
- История выгрузок
- Расписание с индикацией статуса
Вступайте в нашу телеграмм-группу Инфостарт