Im Pruflauf geht kein PDF-Betrachter mehr auf

Sein Fund: "wenn du testest, dann mach den tab auch zu". Ein Lauf ueber die
Pruefkette schreibt Dutzende Rechnungen, und nach jeder oeffnete das Programm
den Betrachter - am Ende klickt der Mensch am Rechner dreissig Fenster weg,
die er nie aufgemacht hat.

Geoeffnet wird jetzt nur noch an EINER Stelle (_oeffne_datei), und die haelt im
Testlauf still und meldet stattdessen, was zu sehen gewesen waere. Die zweite
Stelle, die frueher direkt os.startfile rief, geht ebenfalls darueber.

pruef_vorschau prueft jetzt den zurueckgegebenen Pfad - und dass wirklich
nichts aufgemacht wurde. Alle 14 Pruefstaende gruen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V4t48uxDok5rJXhC9bX1Ax
This commit is contained in:
TheMockTv 2026-09-05 18:31:07 +02:00
parent 4cf46e9932
commit fe0c4a8e08
2 changed files with 17 additions and 6 deletions

12
app.py
View file

@ -1263,7 +1263,7 @@ class RechnungsApp(ThemeMixin, KorrekturMixin, EinstellungenMixin, tk.Tk):
pdf_renderer.render_rechnung(pfad, self.cfg, r, kopf, vorschau=True)
print(f"[vorschau] geschrieben -> {pfad}")
if oeffnen:
os.startfile(pfad) # noqa: S606
self._oeffne_datei(pfad)
return pfad
except OSError as e:
messagebox.showerror("Vorschau nicht möglich",
@ -1614,6 +1614,16 @@ class RechnungsApp(ThemeMixin, KorrekturMixin, EinstellungenMixin, tk.Tk):
def _oeffne_datei(self, pfad):
"""Datei oder Ordner im Betrachter oeffnen. Im Pruflauf: NICHT.
Ein Pruefstand schreibt Dutzende Rechnungen. Wuerde jede davon den
PDF-Betrachter aufmachen, hat der Mensch am Rechner am Ende dreissig
Fenster offen, die er selbst wegklicken darf. Gemeldet wird es trotzdem,
damit im Protokoll steht, was zu sehen gewesen waere.
"""
if TESTLAUF:
print(f"[oeffnen] im Pruflauf nicht geoeffnet: {pfad}")
return False
try:
if sys.platform.startswith("win"):
os.startfile(pfad) # noqa: S606