Сборка Windows .exe (onefile) + инструкция

build.bat собирает «Приём документов.exe» одним файлом через PyInstaller.
Добавлена инструкция для пользователя и раздел сборки в README.
.gitignore исключает build-артефакты (*.exe, build/, dist/, *.spec).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
jze9
2026-06-26 03:22:30 +05:00
parent b5f7060a1f
commit 75d01219d3
4 changed files with 82 additions and 0 deletions

6
.gitignore vendored
View File

@@ -33,3 +33,9 @@ Thumbs.db
# Временные lock-файлы LibreOffice
.~lock.*#
# Сборка PyInstaller
*.exe
build/
dist/
*.spec

View File

@@ -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.<ext>` из папки `ТОk` → лист `ТОk_NN` реестра.

29
build.bat Normal file
View File

@@ -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

View File

@@ -0,0 +1,30 @@
ПРИЁМ ДОКУМЕНТОВ — внесение в реестр и заполнение журнала
==========================================================
Как пользоваться
----------------
1. Запустите «Приём документов.exe» (двойной щелчок).
Ничего устанавливать не нужно — всё уже внутри файла.
2. В открывшемся окне укажите кнопками «Обзор»:
• Реестр — файл «2026_ЕДИНЫЙ РЕЕСТР НЕВОСТРЕБОВАННЫХ ДОКУМЕНТОВ..ods»
• Журнал — файл «Журнал внесения.xlsx»
• Папка приёма — папка «прием» с файлами принятых документов
3. При необходимости измените «Дату внесения» (по умолчанию — сегодня).
4. Нажмите «Внести данные».
Результат
---------
Оригиналы НЕ изменяются. Рядом с ними создаются:
• 2026_ЕДИНЫЙ РЕЕСТР НЕВОСТРЕБОВАННЫХ ДОКУМЕНТОВ._ЗАПОЛНЕНО.ods
• Журнал внесения_ЗАПОЛНЕНО.xlsx
Повторный запуск не задваивает данные — программа всегда читает оригиналы.
Примечание
----------
Файл 64-битный, для 64-разрядной Windows (10/11). При первом запуске
SmartScreen/антивирус может предупредить о неизвестном издателе —
это обычное поведение для самостоятельно собранных программ.