Sven Schöling [Wed, 15 May 2013 09:32:34 +0000 (11:32 +0200)]
Request::flatten sortiert jetzt Hashes nach keys.
Die Änderung war notwendig, weil in perl 5.18 die Hashrandomisierung deutlich
aggressiver ist. Flatten war vorher schon auf dem Papier nicht deterministisch,
das ist aber durch die Randomisierung von perl 5.10 bis 5.16 nie aufgefallen.
Der neue Algorithmus sorgt dafür dass die Datenstruktur
a => [
{
b => 1,
c => 2,
}
]
sowohl als
a[+].b = 1
a[].c = 2
als auch als
a[+].c = 2
a[].b = 1
zurückkommen kann, je nach Reihenfolge die keys zurückgibt.
Im Upgrade-Script charts_without_taxkey hat noch eine Dependency
gefehlt. Dies führte dazu, dass für einige Konten noch kein Steuer-
schlüssel vergeben wurde.
G. Richardson [Mon, 6 May 2013 14:12:32 +0000 (16:12 +0200)]
Verkaufsbericht filtert und sortiert jetzt nach Artikelbeschreibung laut Stammdaten
... wenn Haupt- oder Nebensortierung Artikelbeschreibung ist.
Kurzzusammenfassung:
* Überschriften und Summenzeilen zeigen parts.description
* Einzelzeilen im Artikelmodus zeigen invoice.description
Man hat in den Belegen bei Artikeln die Möglichkeit die
Artikelbeschreibungen zu ändern. Auch wenn man Artikelbeschreibungen in
mehreren Sprachen pflegt kann die Artikelbeschreibung von der
Artikelbeschreibung in den Stammdaten abweichen. Da der Verkaufsbericht
bisher nach der dynamischen Artikelbeschreibung gruppiert hat, konnte man
diese Artikel nicht alle zusammen gruppieren und deren Summen und
Durchschnittswerte zusammen sehen.
Im Artikelmodus wird aber weiterhin die dynamische Artikelbeschreibung
für jeden Artikel angezeigt, in dem diese jeweils überschrieben wird.
Schlecht ist die Änderungen für Benutzer, die generische Artikel anlegen
und immer nur die Artikelbeschreibung ändern, und diese im
Verkaufsbericht anhand der dynamischen Artikelbeschreibung unterscheiden
wollen, dies geht nun so nicht mehr. Für diesen Fall müßte man einen
Schalter einbauen.
Im template erzeugnisnummern.html vom Upgrade erzeugnisnummern.pl
wurde eine Form-Variable continued gesetzt, die auch vom Upgrade
steuerfilterung.pl benutzt wurde. Dadurch kam es zu Problemen.
Die Variable 'continued' wurde nun in steuerfilterung umbenannt.
Moritz Bunkus [Thu, 2 May 2013 12:33:51 +0000 (14:33 +0200)]
SEPA: Bei Einzügen Feld "MndtId" mit Kundennummer belegen
Anstelle von bisher Rechnugnsnummer. Merkblätter diverser Banken sagen
dazu:
> SEPA-Mandat: Die Mandatsreferenz dient in Verbindung mit der
> Gläubiger-ID der eindeutigen Identifizierung eines SEPA-Mandats. Sie
> wird vom Lastschrifteinreicher individuell für jedes SEPA-Mandat
> vergeben (z.B. Vertrags-/Kundennummer).
Für das Upgrade currencies ist es nötig, dass alle Leerzeichen am
Anfang und Ende jeder Währung entfernt werden. Dafür sorgt das
Upgrade rm_whitespaces.pl.
Währungen durch einen Eintrag mit Doppelpunkten zu speichern ist
umständlich und unsicher. Dafür wird nun eine eigene Tabelle erstellt.
Die neue Tabelle currencies erhält 2 Spalten id und curr.
Alle bisherigen Spalten, in der die Währung gespeichert wurde, zeigen
nun auf die id. Die Spalte curr ist ein Textfeld und sollte ein
Kürzel der Währung enthalten (z.B. EUR).
Die Spalte curr in der defaults enthält nun nur noch die Standard-
währung. Dieses Feld sollte IMMER gefüllt sein und kann nach
erstellen der Datenbank nicht geändert werden.
Bei Dialogbuchungen kam es in der Vergangenheit oft zu Verwechslungen
mit Vor-/Umsatzsteuer. Daher werden für jede Steuer nun auch alle
Kontoarten gespeichert, bei denen die Steuer angezeigt werden soll.
Dieser Commit enthält das DB-Update, um die Speicherung möglich zu
machen.
Bei Dialogbuchungen kam es in der Vergangenheit zu Verwechslungen
von Umsatz- und Vorsteuer. Für jedes Konto werden daher nun Steuern
nur noch angezeigt, wenn die Steuer so eingestellt ist, dass sie
für die Kontoart des ausgewählten Kontos angezeigt wird.
Moritz Bunkus [Tue, 30 Apr 2013 15:07:32 +0000 (17:07 +0200)]
CSV-Import: Neu anlegen gefixt
Wenn noch kein Objekt existierte und auch keine Nummernspalte
angegeben war, so wurde nur der allererste Eintrag neu angelegt, der
Rest als angeblich schon existierend nicht behandelt.
Moritz Bunkus [Fri, 26 Apr 2013 16:03:25 +0000 (18:03 +0200)]
Periodische Rechnungen: Checkbox für "alle drei Monate" richtig benennen
"quartalsweise" meint normalerweise die Ausführung am ersten Tag eines
jeden Quartals, sprich am 01.01., 01.04., 01.07. und 01.10. Bei
periodischen Rechnungen ist aber gemeint, dass Rechnungen im Abstand
von drei Monaten, also vierteljährlich erzeugt werden.
Damit ist es problemlos möglich, Rechnungen immer am x. eines Monats
zu erzeugen (z.B. immer am 15., indem das Startdatum auf den 15. eines
Monats gesetzt wird).
G. Richardson [Thu, 10 May 2012 09:31:33 +0000 (11:31 +0200)]
cc Feld beim Kunden reaktivieren und bcc-Feld verschoben
Das Cc-Feld in der Kundenmaske wieder aktiviert. Die Funktionalität war
noch voll vorhanden, nur das Feld aus der Maske verschwunden.
Außerdem das Bcc-Feld von dem Reiter "Ansprechpartner" in den Reiter
"Rechnungsadresse" verschoben, da das Feld nichts mit Ansprechpartnern
zu tun hat.
Diese Felder werden - wenn gefüllt - auch bei Mailversand von Belegen an
Kunden automatisch übernommen.
Der Commit bezieht sich auf meinen Kommentar in Ticket 1882.
Die Änderung macht es dem Benutzer möglich, direkt beim Update
Artikelnummern zu ändern. Weiterhin wurde noch Text ergänzt, der
dem Benutzer die Änderung erläutert.