ПРОЕКТ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Резервное копирование 1С:Фреш — под вашим контролем.

Разработка FreshBackup Manager — настольных приложений и серверных консольных утилит для автоматического получения, проверки и хранения резервных архивов. Формат и стек подбираются под инфраструктуру заказчика.

Приложение / CLI Формат решения
Windows / Server / Linux Целевые платформы
По согласованию Стек, стоимость и сроки
● ● ● FreshBackup Manager · 1.0.8
Реальный пример окна FreshBackup Manager со списком баз
● Архивы 1С:Фреш Выбрано → Скачано → Проверено
01 Ручная и автоматическая загрузка 02 Проверка ZIP + SHA-256 03 Локальное хранение копий 04 Индивидуальная оценка

01 / О ПРОДУКТЕ

Меньше рутины.
Больше контроля.

FreshBackup Manager предназначен для получения доступных пользователю архивов из облачного сервиса «1С:Фреш». Все задачи резервирования — список баз, расписание, проверка, журнал — собраны в одном интерфейсе.

01

По вашему расписанию

Ежедневно, еженедельно, ежемесячно или через заданный интервал. Программа организует регулярное получение копий.

02

Несколько баз в одном окне

Выберите одну или несколько доступных информационных баз и сохраните набор для следующих запусков.

03

Повторы при сбоях

Повторные попытки после обрыва связи и докачка, только если сервер поддерживает HTTP Range.

04

Контроль целостности

Проверка ZIP, CRC и SHA-256 с сохранением финального архива после успешной проверки.

05

Управление хранением

Настройка папки и количества сохраняемых копий для каждой информационной базы.

06

Журнал и системный трей

История скачиваний, статусы ошибок и быстрые команды из области уведомлений Windows.

01 Подключение Авторизация в 1С:Фреш
02 Выбор баз Нужные приложения
03 Скачивание Вручную или по графику
04 Проверка ZIP + SHA-256
Важно: скачивание ≠ восстановление. Приложение получает архивы из сервиса. Загрузка этих архивов в локальную 1С выполняется штатным механизмом конфигурации и в стоимость разработки программы не входит.

02 / КОММЕРЧЕСКОЕ ПРЕДЛОЖЕНИЕ

Понятные условия.
Под вашу задачу.

Онлайн-версия коммерческого предложения, подготовленная по Word-документу. Полный документ доступен для скачивания в исходном формате .docx.

ОРИЕНТИР ДЛЯ ПРОСТЫХ СИСТЕМ
30 000–50 000 ₽

Простые системы резервного копирования — ориентировочно 30 000–50 000 ₽. Более сложные системы — по договорной цене. Итоговая стоимость определяется по количеству и объёму баз, инфраструктуре и согласованным требованиям. Уведомления, SMTP, интеграции и другие дополнительные функции согласуются и оплачиваются отдельно.

Предлагаемый срок После оценки проекта
Аванс По договору
После приёмки По договору
Исправление дефектов 30 календарных дней
Скачать предложение .docx ↓

Сроки определяются после анализа требований, подтверждения разрешённого способа получения архивов и предоставления тестового доступа. Изменения объёма работ и ограничения стороннего сервиса могут потребовать отдельного согласования сроков и стоимости.

РЕЗУЛЬТАТ РАЗРАБОТКИ

Приложение, которое можно установить и использовать.

Возможный состав работ: интерфейс на русском языке, подключение к разрешённому механизму выгрузки, очередь загрузки, расписание, управление архивами, журнал, системный трей, сборка и документация. Конкретные функции и объём передачи исходного кода закрепляются в ТЗ и смете.

✓ Исходный код Python
✓ Пакет под согласованную ОС
✓ Инструкция и тестовые сценарии
✓ Сдача по критериям приёмки

Простые системы резервного копирования — ориентировочно 30 000–50 000 ₽. Более сложные системы — по договорной цене. Итоговая стоимость определяется по количеству и объёму баз, инфраструктуре и согласованным требованиям. Уведомления, SMTP, интеграции и другие дополнительные функции согласуются и оплачиваются отдельно. Состав работ, сроки, налоги, сторонние расходы и порядок оплаты закрепляются в индивидуальном предложении и договоре.

03 / ПОЛНЫЙ ТЕКСТ КП

Коммерческое предложение онлайн

Текст перенесён из включённого в пакет Word-документа; таблицы и основные условия представлены непосредственно на странице.

DOCX · ОНЛАЙН-ПРОСМОТР

Разработка FreshBackup Manager на Python

Скачать Word ↓

По запросу разрабатываются настольное приложение с графическим интерфейсом и серверная консольная утилита без GUI для Windows Server или Linux. Консольный вариант предусматривает запуск из командной строки, конфигурационный файл, коды завершения и журналирование; автоматический запуск настраивается через systemd/cron или Планировщик заданий Windows. Формат поставки, целевые ОС, установка, сопровождение и стоимость каждого варианта согласуются отдельно.

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

Стоимость и условия

Показатель Предложение
Стоимость разработки и внедрения Простые системы: ориентировочно 30 000–50 000 ₽; более сложные — по договорной цене после анализа требований
Налоги, сборы, комиссии посредников Состав и учёт налогов, сборов и комиссий указываются в индивидуальной смете и договоре
Предлагаемый срок Индивидуально, после согласования объёма работ и тестового доступа
Формат результата Исходный код, согласованная сборка приложения или серверной утилиты, конфигурация и инструкция
Порядок оплаты (предлагаемый) Этапы, размер аванса и платежи согласуются в договоре
Гарантия на исправление дефектов реализации 30 календарных дней после подписания акта приёмки

Простые системы резервного копирования — ориентировочно 30 000–50 000 ₽. Более сложные системы — по договорной цене. Итоговая стоимость определяется по количеству и объёму баз, инфраструктуре и согласованным требованиям. Уведомления, SMTP, интеграции и другие дополнительные функции согласуются и оплачиваются отдельно. Состав работ, сроки, налоги, сторонние расходы и порядок оплаты закрепляются в индивидуальном предложении и договоре.

От чего зависит стоимость

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

Для расчёта нужны перечень и объёмы баз, схема инфраструктуры, доступные способы выгрузки, расписание, политика хранения и требования к восстановлению. После обследования согласуются состав работ, смета, сроки, этапы и критерии приёмки. Дополнительные работы и изменения требований оцениваются отдельно до их выполнения.

Возможный состав работ

Перечень ниже служит основой для обсуждения. В проект входят только работы, явно согласованные в ТЗ и смете.

Настольное приложение FreshBackup Manager с русскоязычным графическим интерфейсом либо серверная консольная утилита без GUI; формат и целевая платформа согласуются в ТЗ.

Подключение к 1С:Фреш с использованием доступного и разрешённого механизма авторизации; проверка соединения и получение списка доступных баз.

Выбор одной либо нескольких информационных баз; загрузка архивов вручную и по расписанию.

Повторные попытки при сетевых сбоях и продолжение загрузки при поддержке сервером HTTP Range; без ложного обещания обязательного докачивания.

Проверка целостности ZIP, вычисление SHA-256, безопасная запись во временный файл с публикацией после успешной проверки.

Выбор каталога, хранение указанного количества локальных копий для каждой базы, журнал событий и ошибок.

Запуск в системном трее, ручное скачивание через меню трея, настройки автозапуска и расписания.

Сборка, краткое руководство, сценарии тестирования и передача исходных кодов.

Как будет работать

1. Пользователь задаёт параметры подключения к сервису и проверяет доступ.

2. Программа показывает доступные информационные базы и позволяет выбрать нужные.

3. Пользователь задаёт папку, количество сохраняемых архивов и расписание.

4. Загрузка происходит вручную либо автоматически; результаты и ошибки отображаются в журнале.

5. Программа проверяет архив и сохраняет его, после чего применяет правила хранения копий.

Визуальный ориентир

Ниже — пример интерфейса, приложенный к исходным материалам. Финальный дизайн уточняется на этапе согласования макетов.

Границы проекта и оговорки

Приложение скачивает резервные архивы, но не восстанавливает их в локальную информационную базу 1С. Восстановление выполняется средствами 1С.

Автоматизация возможна только при наличии у заказчика необходимых прав и технически доступных механизмов сервиса; изменение стороннего API требует отдельного согласования.

Серверный консольный вариант, Windows Server/Linux и развёртывание доступны по отдельному согласованию и оплачиваются отдельно. Поддержка macOS, облачная панель управления, создание архивов на стороне 1С и внешние хранилища также требуют отдельной оценки.

Лицензии 1С, доступ к 1С:Фреш, внешняя инфраструктура и сторонние платные компоненты не входят в цену.

Перед запуском проекта стороны утверждают ТЗ, порядок передачи доступов, критерии приёмки и условия использования исходного кода.

Дополнительные возможности — по отдельному согласованию

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

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

Гибкие сценарии оповещения. Мгновенные сообщения о сбоях, подтверждения успешных операций, ежедневные или еженедельные сводки. Настройка правил по базам и группам, уровней важности, времени отправки и эскалации ответственным сотрудникам.

SMTP под инфраструктуру заказчика. Подключение к SMTP-серверу заказчика либо, по отдельному запросу, разработка встроенного SMTP-компонента или развёртывание собственного SMTP-сервера/ретранслятора в согласованном контуре. Настройка доставки и сопровождение сервера согласуются и оплачиваются отдельно.

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

Этапы и оплата

Этап Содержание Условия оплаты
1. Согласование ТЗ, доступы, макеты, тестовый контур По согласованному графику платежей
2. Разработка Подключение, интерфейс, загрузки, расписание, журнал В согласованной смете
3. Проверка и сдача Тесты, устранение дефектов, сборка и документация По согласованному графику платежей

Предложение носит информационный характер и становится обязательством сторон после согласования ТЗ и заключения договора.

04 / ТЕХНИЧЕСКОЕ ЗАДАНИЕ

Разработка на Python.
От экранов до приёмки.

Техническое задание содержит предлагаемую архитектуру и требования; окончательный объём утверждается для конкретного проекта. Уведомления, SMTP и другие расширения согласуются и оплачиваются отдельно.

Python 3.12+ Язык разработки
PySide6 / Qt Графический интерфейс
HTTPX Сетевой клиент
SQLite История и метаданные
APScheduler Расписание
PyInstaller Поставка под целевую ОС
Открыть полное техническое задание онлайн Все разделы исходного документа, включая таблицы и критерии приёмки ⌄

По запросу разрабатываются настольное приложение с графическим интерфейсом и серверная консольная утилита без GUI для Windows Server или Linux. Консольный вариант предусматривает запуск из командной строки, конфигурационный файл, коды завершения и журналирование; автоматический запуск настраивается через systemd/cron или Планировщик заданий Windows. Формат поставки, целевые ОС, установка, сопровождение и стоимость каждого варианта согласуются отдельно.

1. Назначение и статус

Разработать FreshBackup Manager для скачивания архивов информационных баз, доступных пользователю в «1С:Фреш», на компьютер или сервер. Формат реализации — настольное приложение с GUI либо серверная консольная утилита — определяется в ТЗ. Изображения версии 1.0.8 иллюстрируют настольный интерфейс и не подтверждают наличие готовой серверной версии.

Целевые платформы: Windows 10/11 для настольного варианта; Windows Server или Linux для серверных консольных утилит. Конкретные версии ОС, зависимости и объём работ согласуются для проекта. Язык интерфейса — русский. Доступ к сервису осуществляется с законными полномочиями пользователя.

Опции вне согласованного объёма

Перечисленные ниже функции могут быть разработаны по запросу заказчика. Они не входят в согласованный объём проекта автоматически: каждая опция оплачивается отдельно, её состав, сроки, стоимость и критерии приёмки утверждаются до начала работ в отдельной смете или дополнительном соглашении. Уведомления на почту и в мессенджеры. Оповещения об успешном копировании, ошибках и повторных сбоях, пропущенном запуске, отсутствии свежей копии, нехватке места и результате проверки архива. Каналы, получатели и перечень событий согласуются отдельно; подключение мессенджеров — через доступные официальные API или ботов. Гибкие сценарии оповещения. Мгновенные сообщения о сбоях, подтверждения успешных операций, ежедневные или еженедельные сводки. Настройка правил по базам и группам, уровней важности, времени отправки и эскалации ответственным сотрудникам. SMTP под инфраструктуру заказчика. Подключение к SMTP-серверу заказчика либо, по отдельному запросу, разработка встроенного SMTP-компонента или развёртывание собственного SMTP-сервера/ретранслятора в согласованном контуре. Настройка доставки и сопровождение сервера согласуются и оплачиваются отдельно. Другие расширения системы. Дополнительные хранилища, шифрование архивов, многоуровневое хранение, централизованный мониторинг, роли пользователей, интеграции с другими системами и автоматизированные проверки восстановления. Реализуемость и состав каждого расширения определяются после обследования.

2. Технологии и структура

Предлагаемый язык — Python 3.12+; окончательный стек выбирается по инфраструктуре заказчика. Для GUI — PySide6/Qt Widgets и фоновая работа через QThread/worker. Серверный CLI-вариант работает без Qt и графической сессии.

HTTP-клиент httpx; повторы с backoff, тайм-ауты и потоковая запись на диск; запрет логирования секретов.

SQLite для метаданных и журнала; конфигурация в профиле пользователя или выделенном каталоге службы. Хранение секретов согласуется с целевой ОС: Windows Credential Manager либо защищённое хранилище/механизм передачи секретов серверного контура.

Для настольного варианта — APScheduler либо аналог; для серверного — systemd timers/cron или Планировщик заданий Windows. Предусматривается блокировка одновременных запусков одной задачи.

Контроль SHA-256 средствами hashlib; тест ZIP через zipfile с учётом ресурсных ограничений и особенностей архива.

Формат поставки определяется целевой ОС: настольная Windows-сборка, серверная утилита или пакет с зависимостями. Передаются README, конфигурационный пример, инструкции установки и запуска, requirements/lock-файл и согласованные исходные коды.

3. Архитектурные модули

Модуль Ответственность
GUI Вкладки и формы, таблица баз, индикаторы состояния, трей
Auth / API adapter Авторизация, запрос перечня баз, загрузка архива, обработка ошибок сервиса
Backup manager Очередь задач, временные файлы, повторы, докачка, отмена
Verifier Размер, ZIP, SHA-256, фиксация результата проверки
Scheduler Запуск по расписанию, блокировка дубликатов
Storage / retention Каталоги, имена файлов, безопасное удаление старых подтверждённых копий
Repository / log SQLite, история операций, диагностические сведения

4. Экраны и сценарии интерфейса

4.1. «Подключение»

Поля: адрес сервиса HTTPS (по умолчанию https://1cfresh.com, редактируемый), логин пользователя, пароль/доступный способ авторизации, код абонента при необходимости.

Кнопки: «Проверить подключение», «Обновить список баз», «Сохранить настройки». Маскирование секретов; отображение статуса соединения.

Ошибки: неверные учётные данные, отсутствие полномочий, недоступность сети, серверный отказ, несовместимый интерфейс. Секретные значения не должны появляться в журнале.

4.2. «Информационные базы»

Таблица: отметка выбора, код базы, наименование, конфигурация, версия, дата последней успешной локальной копии.

Множественный выбор баз, сохранение выделенных баз между запусками; недоступные в следующем ответе API базы показываются с понятным статусом.

Кнопка «Скачать копии сейчас» обрабатывает отмеченные базы последовательно; при отсутствии выбранных баз — сообщение с предложением выбрать базы.

4.3. «Расписание и хранение»

Включение автоматического скачивания; периодичность: ежедневно, еженедельно, ежемесячно, либо через заданный интервал (часов).

Поля: локальное время запуска, день недели/месяца или интервал, базовая папка, количество сохраняемых копий на каждую базу (по умолчанию 10).

Режим трея: приложение продолжает работать при закрытии окна в трей; «Выход» полностью останавливает процесс. Автозапуск с Windows — включаемая настройка.

При пропуске времени из-за сна/выключенного ПК: не более одного догоняющего запуска после возобновления при включённой опции; решение фиксируется в журнале.

4.4. «Журнал» и нижняя панель

Журнал: дата/время, база, событие, статус, сообщение, путь к файлу; поиск/фильтр по базе и результату; экспорт в TXT или CSV.

Нижняя панель: текущая база и этап, процент по полученным байтам при известном размере, скорость, загружено/всего, число задач очереди.

Трей: «Открыть FreshBackup Manager», «Скачать выбранные копии сейчас», «Выход». Результат команды из трея отображается уведомлением или записью в журнале.

5. Алгоритм резервного копирования

1. Проверить доступность сервиса, полномочия и наличие отмеченных баз; сформировать последовательную очередь задач.

2. Для каждой базы запросить доступный архив через поддерживаемый сервисом механизм; зафиксировать идентификатор операции и метаданные.

3. Скачивать потоково в отдельный временный файл *.part, не объявляя такой файл резервной копией; регулярно обновлять индикатор.

4. При временном обрыве сделать до 8 повторов с нарастающей задержкой 2–60 секунд; докачивать по HTTP Range только при подтверждённой поддержке и валидности серверного ответа/ETag; иначе начинать файл заново.

5. После скачивания проверить ожидаемый размер, если он известен; структурную читаемость ZIP и CRC файлов с учётом ограничений ресурсов; рассчитать SHA-256. При наличии эталонного SHA-256 сверить его; иначе сохранить локальную контрольную сумму как свидетельство неизменности после скачивания.

6. После успешных проверок атомарно переименовать временный файл в финальный ZIP в пределах одного тома и записать сведения о нём в базу метаданных.

7. Только после появления успешной новой копии применять политику хранения: удалять превышающие лимит проверенные локальные архивы данной базы; при ошибке удаления предупреждать, но не скрывать факт успеха загрузки.

8. Ошибку конкретной базы фиксировать отдельно и продолжать очередь, если остальные базы не зависят от неё.

6. Именование и файловая структура

Рекомендуемый путь: <Папка пользователя>\<КодБазы>\<КороткоеИмя>_<КодБазы>_<ГГГГ-ММ-ДДTЧЧ-ММ-СС>_<ID>.zip. Символы, запрещённые Windows, нормализуются. Коллизии имён не допускаются. В одной папке остаются *.part лишь до завершения / последующего безопасного возобновления.

7. Модель данных (SQLite)

Сущность Основные поля
bases id, code, title, config_name, config_version, selected, last_seen_at
jobs id, base_id, source_id, trigger(manual/schedule/tray), state, attempts, bytes_received, bytes_total, created_at, started_at, finished_at, error_code, error_text
backups id, base_id, filename, file_size, sha256, zip_verified, created_at, verified_at, source_created_at
settings key, value (без хранения паролей и токенов)
events id, job_id, occurred_at, level, message

8. Состояния задач и обработка ошибок

Состояния: queued → connecting → downloading → verifying → completed; дополнительные: retry_wait, failed, cancelled. Переход из verifying в completed разрешён только после проверок и финальной записи файла.

Код / ситуация Поведение
AUTH_FAILED Показать ошибку авторизации; повтор без бесконечных запросов
NO_ACCESS / NO_ARCHIVE Сохранить причину; перейти к следующей базе
TIMEOUT / NETWORK_LOST Ограниченные повторные попытки; продолжение при валидном Range
DISK_FULL / PERMISSION_DENIED Прервать соответствующую загрузку, не удалять старые копии
ZIP_INVALID / CHECKSUM_MISMATCH Не публиковать файл как успешную копию; сохранить диагностический результат
APP_EXIT / CANCELLED Корректная остановка; временный файл обрабатывается по политике возобновления

9. Безопасность

HTTPS и штатная проверка сертификата без опции «игнорировать SSL» по умолчанию; никаких необоснованных обходов механизмов защиты сервиса.

Учётные данные и токены не записываются в лог и SQLite в открытом виде; хранение через системное хранилище секретов.

Защита от path traversal в именах архивов; запись только внутрь выбранной пользователем директории.

При экспорте диагностик обезличивать идентификаторы и адреса по настройке; ограничить логи по размеру и сроку.

Не выполнять автоматическую загрузку ZIP в рабочую информационную базу 1С, не модифицировать архив и не открывать вложенные объекты для исполнения.

10. Требования к качеству и тесты

Модульные тесты: расписание (включая смену месяца), формирование имён, политика хранения, переходы состояний и повторов.

Интеграционные тесты на тестовом сервере HTTP: авторизация, streaming, разрывы соединения, Range 206/200, ETag mismatch, сервер 429/5xx, отсутствие архива.

Файловые тесты: диск заполнен, нет прав доступа, повреждённый ZIP, неожиданный размер, смена имени файла.

GUI-тесты: выбор нескольких баз, сохранение настроек, сворачивание в трей, командное скачивание из трея, отмена операции, перезапуск программы.

Длительная проверка: запуск по расписанию с переходом через ночь и восстановлением системы после сна.

Тесты реального сервиса возможны при предоставлении тестового аккаунта и разрешённого метода работы с архивами.

11. Критерии приёмки

1. Установка Windows-сборки на чистую тестовую машину и запуск без установленного Python.

2. Успешное подключение к доступному тестовому аккаунту 1С:Фреш и корректный перечень баз при наличии согласованного доступа.

3. Выбор минимум двух баз, сохранение выбора и последовательная загрузка архивов по кнопке.

4. Прерывание сети в ходе загрузки с подтверждённым корректным повтором и докачкой при поддержке Range.

5. Ни один непроверенный *.part не считается архивом; ZIP проходит проверку и получает SHA-256.

6. Автоматический запуск задачи по расписанию и запуск вручную из системного трея.

7. Установленный лимит числа сохранённых успешных архивов на базу соблюдается, даже если число ошибок меняется.

8. История попыток и ошибок доступна в журнале, без паролей и токенов.

9. Переданы исходный код, инструкции запуска/сборки, исполняемый пакет и отчёт по приёмочным сценариям.

12. План исполнения и условия

Этап Результат
Анализ и прототип Проверка способов доступа к архивам; согласованные экраны
Реализация API-адаптер, очередь и скачивание, SQLite
Автоматизация Расписание, трей, политика хранения
Тестирование и релиз Реальные/тестовые прогоны, сборка, документация

Сроки определяются после анализа требований, подтверждения разрешённого способа получения архивов и предоставления тестового доступа. Изменения объёма работ и ограничения стороннего сервиса могут потребовать отдельного согласования сроков и стоимости.

13. Исходные материалы и ограничения

Основание: предоставленный документ «Разработка ПО для скачивания баз из 1С_Фреш.pdf» (7 страниц), скриншоты интерфейса и описание версии 1.0.8. Представленные материалы показывают экраны подключения, перечня баз, расписания, журнала и трея; в них отсутствует спецификация официального API 1С:Фреш, поэтому она не заявляется установленным фактом.

Отдельно не входят: локальное восстановление БП/ЗУП, редактирование данных баз, веб-сервер, мобильные приложения и необозначенные интеграции. Любые дополнения оформляются отдельным согласованием.

Полный документ для разработчика

Редактируемое техническое задание в формате Microsoft Word.

Скачать ТЗ .docx ↓

06 / МАТЕРИАЛЫ ПРОЕКТА

Все документы.
В одном месте.

Файлы включены внутрь папки сайта: скачивание Word-документов доступно даже при открытии страницы с компьютера без интернета.

Изображения FreshBackup Manager показывают интерфейс отдельного приложения. Упоминания сторонних продуктов описывают назначение программы и не означают одобрения со стороны их правообладателей.

Увеличенный скриншот