Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Provisions-Manager 95
Windows-Programm der Handy-Insel Miesbach: liest die monatlichen Provisionsabrechnungen von freenet (CSV/Excel) und Vodafone/Euronics (Excel) ein, ordnet die Positionen den Unterhändlern zu, erlaubt freie Anpassung der Auszahlung und exportiert je Händler eine fertige Excel-Abrechnung. Optik: Windows 95.
Bedienung in Kürze
-
Händler anlegen (
Strg+H): Name, Standard-Auszahlung in % und die Kennungen:- freenet → Spalte Unterhaendler (z. B.
27518902) - Vodafone → Spalte Vo-Nr (z. B.
80211721,EU133301) Ein Händler kann mehrere Kennungen haben, auch bei beiden Anbietern.
- freenet → Spalte Unterhaendler (z. B.
-
Neue Abrechnung (
Strg+N), z. B. „Oktober 2026“. -
Import (
Strg+I): beliebig viele Dateien auf einmal, z. B. alle freenet-Wochenlisten eines Monats plus die Vodafone-Datei. Das Format wird an der Kopfzeile erkannt. Doppelt importierte Dateien werden erkannt. Unbekannte Kennungen erscheinen unter „(Nicht zugeordnet)“ und lassen sich direkt einem Händler zuordnen. -
Prüfen und anpassen: links Händler wählen, rechts sind die Positionen nach Provisionsart gruppiert.
- Gruppe markieren → Prozent… (
F4): Auszahlung für die ganze Provisionsart; auf Wunsch als feste Regel für diesen Händler gespeichert (gilt dann für künftige Importe). - Doppelklick /
F2auf eine Position: Betrag frei überschreiben (Enterspeichern,↓/Tabnächste Zeile,Escabbrechen). Blau = von Hand geändert. - Rechtsklick: u. a. „Auszahlung 0 €“.
- Gruppe markieren → Prozent… (
-
Export (
Strg+E): je Händler (und je Anbieter) eine.xlsxim Format der Vorlage:A B C D E F G H I J K L M N Zeitraum Provisionsart Unterhändler-/VO-Nr Datum Rufnummer IMEI Gerät Vorname Name Tarif Auszahlung Netz Dienst Aktionscode Sortierung: Zeitraum → Provisionsart → Datum, darunter eine Summenzeile. Kopfzeile optional zuschaltbar.
Alles wird sofort in der Datenbank gespeichert (%APPDATA%\Provisionsmanager95\provisionen.db).
Speicherort änderbar unter Datei ▸ Einstellungen, Datensicherung über Datei ▸ Datensicherung.
Zuordnung der Vodafone-Spalten
| Export | Vodafone/Euronics |
|---|---|
| Zeitraum | Abrechnungslauf (VF2609, VF2609P8, …) |
| Provisionsart | Artikelbezeichnung |
| Unterhändler | Vo-Nr |
| Datum | Anschaltdatum |
| Name | Kunde |
| Tarif | Tarif |
| Netz | VF / otelo / Cable (aus der Artikelbezeichnung) |
| Dienst | TarifKey02 |
| Aktionscode | Text |
Bei Vodafone wird nur das Blatt All gelesen (die Einzelblätter je Abrechnungslauf würden sonst doppelt zählen).
Entwicklung
python -m venv .venv && . .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements-dev.txt
pytest # Tests (nur erfundene Testdaten)
python -m provtool # Programm starten (benötigt Tkinter)
Aufbau:
| Datei | Inhalt |
|---|---|
provtool/importer.py |
Formaterkennung und Einlesen (CSV, xlsx, xls) |
provtool/db.py |
SQLite: Händler, Kennungen, Regeln, Abrechnungen, Positionen |
provtool/export.py |
Excel-Export im Zielformat |
provtool/money.py |
Beträge (intern immer in Cent) |
provtool/gui/ |
Oberfläche (Tkinter im Win95-Stil) |
Datenschutz: Echte Abrechnungen enthalten Kundendaten und gehören nicht ins Repository
(.gitignore schließt *.csv, *.xlsx im Hauptordner und beispieldaten/ aus).
Windows-Build
Gitea Actions (.gitea/workflows/windows-build.yml) baut die .exe im Container
tobix/pywine:3.12 (Windows-Python unter Wine) mit PyInstaller:
- jeder Push: Tests unter Windows-Python +
Provisionsmanager95.exeals Artefakt - Tag
vX.Y.Z(passend zuprovtool/__init__.py): zusätzlich ein Gitea-Release mit.exeund.zip
Lokal geht dasselbe mit Docker:
docker run --rm --entrypoint bash -v "$PWD":/src -w /src tobix/pywine:3.12 ./build/build_windows.sh
Neue Version: __version__ in provtool/__init__.py erhöhen, committen, git tag v1.0.1 && git push --tags.