G. Richardson [Mon, 3 Apr 2017 06:36:07 +0000 (08:36 +0200)]
BWA mit Kontennachweis
Unterhalb der BWA gibt es einen Knopf "Kontenliste zeigen", wo eine nach
Kontennummer sortierte Liste aller Konten, mit dazugehörigem Betrag und
der Kategorie, aufgeklappt wird.
G. Richardson [Mon, 3 Apr 2017 06:35:53 +0000 (08:35 +0200)]
RP.pm income_statement: EÜR/GuV mit Kontennachweis
* Am Ende des Berichts kann man sich eine Liste aller Konten aus dem
Bericht anzeigen, mit Betrag und der Kategorie, in dem das Konto vorkommt.
Die Liste ist nach Kontonummer sortiert.
* Mit Klick auf eine Kategorie werden die dazugehörigen Konten
angezeigt, indem sie unterhalb der Überschrift mit einer etwas
kleineren Schrift innerhalb der Tabelle "aufgeklappt" werden.
* Am Kopf der Seite kann man mit dem Knopf "Konten zeigen" alle Konten
auf einmal aufklappen.
* Der Knopf "Knöpfe verstecken" dient dazu, die Knöpfe auszublenden,
damit man die Seite ausdrucken kann. Mit Klick auf die Überschrift
"Einnahmenüberschußrechnung" werden alle Knöpfe wieder eingeblendet.
* die Namen der Kategorien werden jetzt aus der Datenbank ausgelesen und
stehen nicht mehr hartkodiert im Template. Außerdem wurde das Template
vereinfacht, indem die Summen der Kategorien nicht mehr in einzelnen
Form-Variablen "eur1", "eur2", ... gespeichert werden, sondern alle
Summe in einem zentralen Hash stehen, und per FOREACH-Schleife im
Template ausgelesen werden können.
G. Richardson [Mon, 3 Apr 2017 06:53:33 +0000 (08:53 +0200)]
RP.pm get_accounts_g zusätzlich nach Konto gruppieren
Dadurch erhält man die Salden der Einzelkonten in der Abfrage, und kann
diese in der EÜR und BWA als Kontenliste/Kontennachweis mit ausgeben.
Das Ergebnis aus der Abfrage für die Konten wird hierfür zusätzlich in
$form->{charts} gespeichert.
Für die Kontenliste wird an dieser Stelle auch die Kontenbeschreibung
mit abgefragt.
G. Richardson [Mon, 3 Apr 2017 06:30:20 +0000 (08:30 +0200)]
Kategorien für EÜR/GuV und BWA in Datenbank speichern
Vorbereitung für Kontennachweis in EÜR/BWA, wo die Kategorienamen im
Template nicht hartkodiert sein sollen.
Die Berichte sollen komplett überarbeitet werden, daher werden die
Kategorienamen temporär in einer View gespeichert, nicht in einer
Tabelle, dann braucht man auch keinen Rose-Code anlegen.
Falls Import Einstellungen "existierende Einträge Übernehmen" eingestellt ist,
werden nun die CVARs übernommen.
Details:
die Methode handle_cvars wird nochmals aufgerufen, nachdem "object_to_save" gesetzt wurde
und anschließen die cvars aus dem "object" in "object_to_save" übernommen.
Hinweis:
Eine sauberere Lösung wäre die Methode handle_cvars nur einmal aufzurufen.
Das wäre aber ein Redesign.
G. Richardson [Sun, 12 Feb 2017 12:16:25 +0000 (13:16 +0100)]
SL/DATEV.pm für KNE-Export überarbeitet / Zwischendaten eingeführt
_get_transactions war bisher eine interne Funktion von SL::DATEV, die vor dem
DATEV-Export aufgerufen wurde, und die Daten aus der Datenbank ausgelesen und
transformiert hat. In diesem Schritt wurde auch auf DATEV-Fehler geprüft, daher
war diese Funktion prinzipiell schon ausreichend für die DATEV-Checks beim
Buchen, und es muß nicht noch extra eine Datei-Export gestartet werden.
Im ersten Schritt wurde diese Funktion also umbenannt nach generate_datev_data.
Beim Erstellen des KNE-Formats aus den Daten wurde bisher direkt beim
Bearbeiten der Daten die KNE-Datei durch viele add_blocks aufgebaut. Jetzt
werden erst in einem Zwischenschritt alle Daten in einem "neutralen" Array von
Hashes gesammelt, so daß sie von dort in einem Rutsch nach KNE oder z.B. nach
CSV exportiert werden können.
Die so generierten Daten (generate_datev_lines) eignen sich auch gut für Tests.
In diversen Kundenerweiterungen werden auch gerne die zu exportierenden Daten
nochmal modifiziert, z.B. Ersetzen des Sammelkontos durch ein Personenkonto,
dies geschieht am Besten auch bei den neutralen Daten.
Weiterhin gab es beim KNE-Export noch Reste von Code, der die Buchungsdaten auf
mehrere Exportdateien "ED0001, ED0002, ..." verteilen konnte. Aktuell hat das
aber nicht funktioniert, und es wird immer alles nach ED0001 geschrieben, von
daher wurde hier auch Code entfernt. Das Postversendeformat (KNE) von DATEV
wird allerdings sowieso bald eingestellt werden (ab 2018).
G. Richardson [Fri, 10 Feb 2017 12:09:06 +0000 (13:09 +0100)]
DATEV KNE Export Refactoring
Anstatt die Werte aus der DB direkt zu transformieren und per add_block
direkt die KNE-Datei zu bauen werden jetzt alle Daten in einem Array aus
Hashrefs gesammelt und unformatiert zwischengespeichert.
Aus diesem Zwischenstand wird dann erst in einem Rutsch die KNE-Datei
generiert. An dieser Stelle könnte man aber auch direkt die Daten als
CSV abgreifen.
Moritz Bunkus [Fri, 24 Mar 2017 15:04:02 +0000 (16:04 +0100)]
»System« → »Vorlagen« → »Stilvorlage« entfernt
Die Funktion funktioniert seit der Aufteilung der Stylesheets in
mehrere Unterdateien schlicht nicht mehr. Da sich bisher niemand
beschwert hat, wird die Funktion wohl auch nicht benötigt.
Wenn nur ein Konto ohne Wert vorhanden ist, gehen wir davon aus,
dass der Anwender einen anderen Kunden/Lieferanten buchen möchten und
hier das zuletzt bebuchte Konto als Default möchte
Bernd Bleßmann [Sun, 19 Mar 2017 16:46:17 +0000 (17:46 +0100)]
CsvImport: Kunden/Lieferanten auch nach GLN suchen können.
Für die Imports, die die Angabe eines Kunden oder Lieferanten brauchen und
check_vc verwenden (Aufträge, Ansprchpersonen, Lieferanschriften,
Debitorenbuchungen), kann neben Id, Nummer oder Name auch die GLN verwendet
werden.
Jan Büren [Thu, 23 Mar 2017 13:37:07 +0000 (14:37 +0100)]
Test: Lieferantengutschrift verbuchen, auch die Gegenseite Banktransaktion prüfen
Die Zahlung wurde korrekt gebucht, allerdings erwartet kivitendo jetzt auch
Änderungen in der bank_transactions invoice_amount, in anderen Testfällen
(test1) wird diese auch überprüft.
Im dem Script werden drei Fremdschlüssel für Spalten angelegt, die im
nachfolgenden Script »parts_remove_unneeded_fields.sql« gleich gedroppt
werden. Damit ist das Script überflüssig und sogar schädlich, falls
jemand noch Datenbankinhalt hat, bei dem die Spalten IDs enthalten, zu
denen es in den Zieltabellen keine Zeilen mehr gibt.
Moritz Bunkus [Fri, 17 Mar 2017 10:09:32 +0000 (11:09 +0100)]
Kreditorenbuchungen: Storno von bezahlten Rechnungen verhindern
Das Action-Bar-Setup nutzt den Wert $::form->{totalpaid} als Indikator
dafür, ob bereits Zahlungen verbucht wurden. Ist das der Fall, so darf
die Rechnung nicht storniert werden können.
Daher muss dieser Wert berechnet werden, bevor das Action-Bar-Setup
durchgeführt wird.
Der Standardbutton ist derjenige, der bei Druck auf Return/Enter
ausgelöst wird.
Aktuell ist die Hervorhebung über fette Schrift geregelt. Eine andere
Möglichkeit wäre, die Border von 1px auf 2px zu erhöhen, was das
Aussehen analoger zu klassischen GUIs machen würde.
Jan Büren [Sat, 4 Mar 2017 09:47:18 +0000 (10:47 +0100)]
ustva html Template: geierlein-pfad Variable korrigiert
Die Prüfung weiter oben ist korrekt, der eigentliche Variablenname
aber dann für das Programm falsch. Scheinbar war dieser bei OD
hartkodiert und das Feature wurde nicht vor dem Commit im Standard
geprüft.
Bernd Bleßmann [Tue, 21 Feb 2017 10:53:37 +0000 (11:53 +0100)]
CsvImportReport: Manager-Methode destroy löscht nicht aus aktiver Sitzung
Vorher wurden alle Reports bis auf den letzten aus der aktiven Sitzung gelöscht.
Da aber mit den Reports auch das Profile gelöscht wird und im Profil der
zufällige Dateiname der temporären Csv-Datei enthalten ist und dieser nach einem
Test-Import für weitere Test-Importe oder den eigentlichen Import benötigt wird,
darf dieser Report nicht gelöscht werden.