Ausgabe für testende noch weiter verbessert

This commit is contained in:
Wolfgang Wiedermann 2023-01-26 14:56:53 +01:00
parent 162ecfd053
commit f81019d64b
3 changed files with 43 additions and 4 deletions

View File

@ -51,7 +51,7 @@ für alle Zeilen im Tabellenblatt:
### Output eines Durchlaufs mit den gegebenen Testdaten ### Output eines Durchlaufs mit den gegebenen Testdaten
``` ```
$ python3 merge_sample.py ~/git/example_merge_bug4599$ python3 merge_sample.py
Importiere aus excel_file_1.xlsx - Tabelle1 Importiere aus excel_file_1.xlsx - Tabelle1
Mtknr: 1 Note: 1.0 hinzufügen Mtknr: 1 Note: 1.0 hinzufügen
@ -60,14 +60,35 @@ Mtknr: 3 Note: 1.0 hinzufügen
Mtknr: 4 Note: 3.0 hinzufügen Mtknr: 4 Note: 3.0 hinzufügen
Mtknr: 5 Note: 2.3 hinzufügen Mtknr: 5 Note: 2.3 hinzufügen
Fehlender oder ungültiger Notenwert für Mtknr 6 Fehlender oder ungültiger Notenwert für Mtknr 6
---
Datenbankstand nach Import:
pruefung_id mtknr note
6 1 1
6 2 1.3
6 3 1
6 4 3
6 5 2.3
---
Importiere aus excel_file_2.xlsx - Tabelle1 Importiere aus excel_file_2.xlsx - Tabelle1
Wollen Sie die Note zu 1 auf 1.3 aktualisieren? (j/n) Wollen Sie die Note zu 1 auf 1.3 aktualisieren? (j/n)
n j
unverändert angepasst
Mtknr: 7 Note: 1.3 hinzufügen Mtknr: 7 Note: 1.3 hinzufügen
Mtknr: 8 Note: 1.0 hinzufügen Mtknr: 8 Note: 1.0 hinzufügen
Mtknr: 9 Note: 3.0 hinzufügen Mtknr: 9 Note: 3.0 hinzufügen
Note zu 2 wird nicht geändert, Zeile leer oder ungültig Note zu 2 wird nicht geändert, Zeile leer oder ungültig
Note zu 3 wird nicht geändert, Zeile leer oder ungültig Note zu 3 wird nicht geändert, Zeile leer oder ungültig
---
Datenbankstand nach Import:
pruefung_id mtknr note
6 1 1.3
6 2 1.3
6 3 1
6 4 3
6 5 2.3
6 7 1.3
6 8 1
6 9 3
``` ```

Binary file not shown.

View File

@ -19,7 +19,7 @@ connection = sqlite3.connect(SQLITE_FILE)
# Hier als Konstante, da in der Praxis wahrscheinlich aus Kontext # Hier als Konstante, da in der Praxis wahrscheinlich aus Kontext
# in Webanwendung abgeleitet # in Webanwendung abgeleitet
PRUEFUNG_ID = 5 PRUEFUNG_ID = 6
def read_file(filename): def read_file(filename):
# alle Validierungsschritte zugunsten eines übersichtlichen Beispiels eingespart # alle Validierungsschritte zugunsten eines übersichtlichen Beispiels eingespart
@ -35,6 +35,17 @@ def read_file(filename):
return data return data
def print_result(con, pruefung_id):
sql = "select * from pruefungsergebnis where pruefung_id = ?"
cur = con.cursor()
cur.execute(sql, (pruefung_id, ))
result = cur.fetchall()
print("Datenbankstand nach Import: \n")
print("pruefung_id\tmtknr\tnote")
for entry in result:
print(f"{entry[0]}\t\t{entry[1]}\t{entry[2]}")
def is_already_set(con, pruefung_id, mtknr): def is_already_set(con, pruefung_id, mtknr):
sql = "select count(*) as anzahl from pruefungsergebnis where pruefung_id = ? and mtknr = ?" sql = "select count(*) as anzahl from pruefungsergebnis where pruefung_id = ? and mtknr = ?"
cur = con.cursor() cur = con.cursor()
@ -93,5 +104,12 @@ def merge_data(pruefung_id, new_data):
f1 = read_file("excel_file_1.xlsx") f1 = read_file("excel_file_1.xlsx")
merge_data(PRUEFUNG_ID, f1) merge_data(PRUEFUNG_ID, f1)
print("---")
print_result(connection, PRUEFUNG_ID)
print("---")
f2 = read_file("excel_file_2.xlsx") f2 = read_file("excel_file_2.xlsx")
merge_data(PRUEFUNG_ID, f2) merge_data(PRUEFUNG_ID, f2)
print("---")
print_result(connection, PRUEFUNG_ID)