Define AI analysis specification, prompt and evaluation cases
This commit is contained in:
1 parent
b3be368594
commit
4ee0e17b8d
3 files changed
+175
No files matched your search
@@ -0,0 +1,83 @@
|
||||
# Rechnungsschnittstelle – Version 1
|
||||
|
||||
Diese Spezifikation beschreibt synthetische Rechnungsimporte
|
||||
für das Eigenprojekt ImportAssist.
|
||||
|
||||
## CSV-001: Dateistruktur
|
||||
|
||||
Die Kopfzeile muss lauten:
|
||||
InvoiceId;CustomerId;Amount;Currency
|
||||
|
||||
Jede Datenzeile enthält genau vier durch Semikolon getrennte
|
||||
Felder. Anführungszeichen und Zeilenumbrüche innerhalb eines
|
||||
Feldes werden nicht unterstützt.
|
||||
|
||||
Bei einem Strukturfehler wird die gesamte Datei abgewiesen.
|
||||
Die fachliche Prüfung der Rechnungen beginnt dann nicht.
|
||||
|
||||
## INV-001: Rechnungsnummer
|
||||
|
||||
InvoiceId muss vorhanden sein und darf nicht ausschließlich
|
||||
aus Leerzeichen oder anderen Whitespace-Zeichen bestehen.
|
||||
|
||||
Bei einem Fehler ist die Rechnungsnummer anhand des
|
||||
Ursprungsbelegs oder des Quellsystems zu ermitteln.
|
||||
Es darf keine Rechnungsnummer erfunden werden.
|
||||
|
||||
## INV-002: Kundennummer
|
||||
|
||||
CustomerId muss vorhanden sein und darf nicht ausschließlich
|
||||
aus Whitespace-Zeichen bestehen.
|
||||
|
||||
Bei einem Fehler ist die Kundenzuordnung anhand des
|
||||
Ursprungsbelegs oder des Quellsystems zu prüfen.
|
||||
Der vorliegende Prüfbericht enthält keine Kundenstammdaten.
|
||||
|
||||
## INV-003: Zahlenformat des Betrags
|
||||
|
||||
Amount wird zunächst als Text übernommen.
|
||||
|
||||
Die Prüfung verwendet decimal.TryParse mit InvariantCulture.
|
||||
Erlaubt sind ein führendes Vorzeichen und ein Dezimalpunkt.
|
||||
Tausendertrennzeichen und Exponentialschreibweise sind
|
||||
nicht erlaubt.
|
||||
|
||||
Beispiele:
|
||||
- 125.50 ist numerisch gültig.
|
||||
- abc ist keine gültige Zahl.
|
||||
- 125,50 entspricht nicht dem vereinbarten Zahlenformat.
|
||||
|
||||
Ein ungültiger Betrag muss anhand der Quelldaten geklärt werden.
|
||||
Eine automatische Umdeutung des Zahlenformats ist nicht vorgesehen.
|
||||
|
||||
## INV-004: Positiver Betrag
|
||||
|
||||
Der numerisch gültige Betrag muss größer als null sein.
|
||||
|
||||
Null und negative Beträge werden zurückgewiesen.
|
||||
Gutschriften sind in dieser Version nicht abgebildet.
|
||||
Ein negativer Betrag darf nicht automatisch positiv gemacht werden.
|
||||
|
||||
## INV-005: Währung
|
||||
|
||||
Currency wird übernommen, aber bislang nicht fachlich geprüft.
|
||||
Ein erfolgreiches Prüfergebnis bestätigt daher keine gültige Währung.
|
||||
|
||||
## REP-001: Bedeutung des Prüfberichts
|
||||
|
||||
Completed bedeutet, dass die fachliche Prüfung abgeschlossen ist.
|
||||
Einzelne Rechnungen können dabei fehlerhaft sein.
|
||||
|
||||
Rejected bedeutet, dass die Dateistruktur abgewiesen wurde.
|
||||
Die Ursache steht in fileErrors; rows bleibt leer.
|
||||
Die Zähler geben dann keine Auskunft über die Gültigkeit
|
||||
der ursprünglichen Rechnungen.
|
||||
|
||||
LineNumber bezeichnet die ursprüngliche CSV-Zeile einschließlich
|
||||
der Kopfzeile.
|
||||
|
||||
## Grenzen
|
||||
|
||||
Die Prüfung umfasst bislang keine Kontrolle auf Dubletten,
|
||||
existierende Kunden oder sachlich richtige Rechnungsbeträge.
|
||||
Es werden keine Rechnungen gebucht.
|
||||
Reference in new issue
Block a user