diff --git a/.gitignore b/.gitignore index e750502..59fc9ff 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,9 @@ Thumbs.db # Временные lock-файлы LibreOffice .~lock.*# + +# Сборка PyInstaller +*.exe +build/ +dist/ +*.spec diff --git a/README.md b/README.md index 6057985..ccda599 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,23 @@ python3 run.py Скрипт идемпотентен: всегда читает оригиналы, повторный запуск не задваивает данные. +## Сборка .exe для Windows (один файл) + +На **Windows** (Python 3.10+ с галочкой «Add to PATH») достаточно запустить +`build.bat` — он установит зависимости и соберёт один файл: + +``` +build.bat +``` + +Результат: `dist\Приём документов.exe` — всё внутри одного файла, у конечного +пользователя ничего ставить не нужно. В onefile-режиме пути по умолчанию не +работают, файлы реестра/журнала и папку `прием` нужно указать в окне кнопками +«Обзор». + +> Кросс-сборка из Linux напрямую невозможна (PyInstaller собирает под ту ОС, +> где запущен); на Linux это делается через Wine с Windows-Python. + ## Правило сопоставления Файл `DD.MM.YYYY_74_NN.` из папки `ТОk` → лист `ТОk_NN` реестра. diff --git a/build.bat b/build.bat new file mode 100644 index 0000000..3c6f679 --- /dev/null +++ b/build.bat @@ -0,0 +1,29 @@ +@echo off +chcp 65001 >nul +REM ============================================================ +REM Сборка «Приём документов.exe» (один файл) для Windows. +REM Требуется установленный Python 3.10+ (при установке +REM отметить галочку «Add python.exe to PATH»). +REM Запускать из папки проекта двойным щелчком. +REM ============================================================ + +echo Установка зависимостей... +python -m pip install --upgrade pyinstaller odfpy openpyxl xlrd || goto :err + +echo. +echo Сборка одного файла... +python -m PyInstaller --noconfirm --clean --onefile --windowed ^ + --name "Приём документов" ^ + --collect-submodules odf ^ + gui.py || goto :err + +echo. +echo Готово. Файл: dist\Приём документов.exe +pause +exit /b 0 + +:err +echo. +echo ОШИБКА сборки. Проверьте, что Python установлен и доступен в PATH. +pause +exit /b 1 diff --git a/Приём документов — инструкция.txt b/Приём документов — инструкция.txt new file mode 100644 index 0000000..9661d97 --- /dev/null +++ b/Приём документов — инструкция.txt @@ -0,0 +1,30 @@ +ПРИЁМ ДОКУМЕНТОВ — внесение в реестр и заполнение журнала +========================================================== + +Как пользоваться +---------------- +1. Запустите «Приём документов.exe» (двойной щелчок). + Ничего устанавливать не нужно — всё уже внутри файла. + +2. В открывшемся окне укажите кнопками «Обзор»: + • Реестр — файл «2026_ЕДИНЫЙ РЕЕСТР НЕВОСТРЕБОВАННЫХ ДОКУМЕНТОВ..ods» + • Журнал — файл «Журнал внесения.xlsx» + • Папка приёма — папка «прием» с файлами принятых документов + +3. При необходимости измените «Дату внесения» (по умолчанию — сегодня). + +4. Нажмите «Внести данные». + +Результат +--------- +Оригиналы НЕ изменяются. Рядом с ними создаются: + • 2026_ЕДИНЫЙ РЕЕСТР НЕВОСТРЕБОВАННЫХ ДОКУМЕНТОВ._ЗАПОЛНЕНО.ods + • Журнал внесения_ЗАПОЛНЕНО.xlsx + +Повторный запуск не задваивает данные — программа всегда читает оригиналы. + +Примечание +---------- +Файл 64-битный, для 64-разрядной Windows (10/11). При первом запуске +SmartScreen/антивирус может предупредить о неизвестном издателе — +это обычное поведение для самостоятельно собранных программ.