From 353d710b39b8748c20c0a015ea7c45b1750c9402 Mon Sep 17 00:00:00 2001 From: Floke Date: Mon, 26 May 2025 19:29:42 +0000 Subject: [PATCH] bugfix --- list_generator.py | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/list_generator.py b/list_generator.py index 005c73e3..e792fb07 100644 --- a/list_generator.py +++ b/list_generator.py @@ -142,18 +142,10 @@ def create_and_fill_doc(docs_service, drive_service, folder_id, doc_title): } }) - # --- C. Tabelleninhalt einfügen --- - # Der Inhalt der ersten Zelle beginnt direkt nach dem Einfügen der Tabelle, - # plus einem Offset für die Tabellenstruktur-Tags. - # Ein häufig funktionierender Offset ist +2 (für TableStart, RowStart). - # Wir nehmen an, dass der `current_doc_index` jetzt auf den Beginn der Tabelle zeigt. - # Der Inhalt der ersten Zelle beginnt bei `table_start_index + 2` (relativ zum Dokumentenanfang) - # oder, anders gesagt, Index 1 *innerhalb* der Tabellenstruktur, die bei table_start_index beginnt. - # - # Die Google Docs API ist so gedacht, dass wenn man Text mit Tabs/Newlines an den - # Startindex einer Zelle sendet, sie den Text in die Tabelle verteilt. - - table_content_start_index = table_start_index + 2 # Annahme: Index der ersten Zelle (Beginn des Inhaltsbereichs) + # --- C. Tabelleninhalt einfügen --- + # Die Tabelle wurde an `table_start_index` eingefügt. + # VERSUCH: Der Inhalt der ersten Zelle beginnt bei `table_start_index + 1`. + table_content_start_index = table_start_index + 1 # GEÄNDERT VON +2 ZU +1 # Erstelle den gesamten Text für die Tabelle table_lines = [] @@ -161,15 +153,16 @@ def create_and_fill_doc(docs_service, drive_service, folder_id, doc_title): for kind in kinder_liste: table_lines.append(f"{kind['Nachname']}\t{kind['Vorname']}\t{gruppe_display_name}") - full_table_text_for_cells = "\n".join(table_lines) + "\n" # Wichtig: endet mit \n + full_table_text_for_cells = "\n".join(table_lines) + "\n" requests.append({ 'insertText': { - 'location': {'index': table_content_start_index}, + 'location': {'index': table_content_start_index}, # Verwendet den neuen Offset 'text': full_table_text_for_cells } }) + # --- D. Index aktualisieren und Footer --- # Den Index nach einer Tabelle korrekt weiterzuführen ist der schwierigste Teil. # Die Tabelle selbst (Struktur) plus ihr Inhalt haben eine bestimmte Länge.