Fehler #482
DATEV-Fehlermeldung obwohl DATEV deaktivert ist
0%
Beschreibung
Kivitendo 3.5.2 und 3.5.7
Das Deaktivieren von DATEV in der Mandantenkonfiguration mit dem Eintrag in defaults: feature_datev → FALSE, belässt die anderen DATEV-Einträge in der Tabelle defaults (datev_check...) auf 'TRUE'.
Das führt dazu, dass auch wenn DATEV deaktiviert ist, DATEV-Fehlermeldungen beim Buchen erzeugt werden, da bei der Prüfung auf DATEV-Fehler zumindest in der SL/IS.pm am Ende der sub post_invoice bei der Ausgabe eines DATEV-Fehlers nur die Einstellung von datev_check_on_sales_invoice geprüft wird und nicht die Einstellung von feature_datev.
# safety check datev export
if ($::instance_conf->get_datev_check_on_sales_invoice) {
my $datev = SL::DATEV->new(
dbh => $dbh,
trans_id => $form->{id},
);
$datev->generate_datev_data;
if ($datev->errors) {
die join "\n", $::locale->text('DATEV check returned errors:'), $datev->errors;
}
}
Vermutlich tritt das gleiche Problem noch an anderen Orten auf.
Die Frage ist nun, wie das Problem behoben werden soll:
1) Das Setzen von feature_datev → FALSE löst automatisch einen Trigger aus, der alle datev_check...-Spalten in defaults auf 'FALSE' setzt.
2) Bei der Ausgabe von DATEV-Fehlern wird immer auch die Einstellung in feature_datev berücksichtigt, also Fehler werden nur erzeugt, wenn feature_datev auf 'TRUE' steht.
3) weitere Vorschläge?
P.S. Provisorischer Work-Around: DATEV-Automatik in der Mandantenkonfiguration auf 'TRUE' setzen, alle DATEV-Prüfungen abstellen, DATEV-Automatik wieder auf 'FALSE' setzen.
Historie
Von Jan Büren vor mehr als 3 Jahren aktualisiert
feature_datev bestimmt nur die Behandlung von Automatik-Konten.
Ah, nein. Rolf hat das nur ungünstig benannt.
Use Datevautomatik
Besser: use DATEV-Export
Die Prüfungen würde ich davon unabhängig setzen. Wenn die Prüfungen beim Buchen einen Fehler werfen, würde ich als erstes davon ausgehen, dass die Buchung wirklich Murks ist und hier die Einstellungen prüfen.
Ansonsten, Schalter umbenennen und DATEV-Einstellungen in der Mandantenkonfiguration nicht ausblenden.