BankAccount.pm - require für Chart Abfrage
Locale - richtigen Filehandle für Menüübersetzungen benutzen
Überarbeitung Speichern von Buchungsgruppen
analog zum Verhalten von Steuerzonen: beim Speichern bessere Prüfung undgegebenenfalls Fehlermeldungen und Rollback, wenn Speichern fehlschlägt.Verhindert, daß "unfertige" Buchungsgruppen gespeichert werden, wo die...
TaxzoneChart displayable_name und refactoring
displayable_name für die Kontenbeschreibung benutzen.
Statt eigener Methoden in TaxzoneChart die Foreign Key Verknüpfungen vonRose nutzen.
Steuerzonen überarbeitet - Prüfung und Löschen
Nicht benutzte Steuerzonen können jetzt gelöscht werden, sowie derenKontenzuordnungen geändert werden (wie bei Buchungsgruppen). SieheFeature #70.
Schlägt die Speicherung neuer Steuerzonen fehl, weil z.B. die...
Lieferwertbericht - unnötige Konfigurationsparameter entfernt (Ergänzung)
Vergessene Dateien zum Commit von gerade
Undefined chart bei taxkey 0 und 1
Nicht nur bei Taxkey 0 gibt es keine chart_id, auch bei taxkey 1.Abfrage nun umgestellt.
Bugfix: Kommentarhandling in Inifile
Das ist aber immernoch Schrott, weil die Latex order # enthält, undtrotzdem rausgegrillt wird.
Merge branch 'master' of github.com:kivitendo/kivitendo-erp
Layout: Inlinejavascripte mit ; trennen
Rechte: In die Datenbank verlagert
Admin: Standardgruppe erst anlegen, wenn keine dbupgrade mehr
Rechte: SL::Auth::all_rights() > $::auth>all_rights
DBUpgrade: Pfad überladbar machen
DBUpgrade: lxdebug Statements entfernt
So kann es aus scripts/ aufgerufen werden.
DBUpgrade: locales parsen
Locale: zusätzliche Locales parsen
Menu: Rechtschreibung
Menu: Caching und access korrekt clearen
Menu: YAML::XS benutzen wenn vorhanden
Menu: Fehlermeldungen Update
Menüstruktur auf YAML geändert
Layout/empty: empty.json und emty.html ermöglichen
Dispatcher: FCGI Finish -> 10ms schneller im Browser
Menu: Bei einzelner erp.ini nicht alles umkopieren.
Layout: Icons in Javascript Menü gefixt
Menu: HTML Menü parsing n+1 beseitigt
Inifile: alten Schrott beseitigt
Layout: MenuLeft auf neue Maps angepasst
Bei Kontenabgleich Differenz der ausgewählten Zeilen richtig berechnen
Bei round_amount muß man immer die nötige Anzahl der Stellen alsParameter mitgeben, ansonsten wird auf 0 Stellen gerundet.
behebt #66
Sammelaufträge - fehlerhaftes Verhalten
Standardmäßig wird der Sammelauftrag, zusammen mit den Positionen, perRecordLinks verlinkt. Eine Ausnahme besteht wenn der Sammelauftrag ausgenau einem Auftrag entstanden ist, in dem Fall wird angenommen, daß"als neu speichern" gemeint ist, und es gibt keine Verlinkung....
Belegpositionen nicht mehr mit ordnumber, transdate, cusordnumber speichern
stattdessen für das Drucktemplate der Rechnung ordnumber_oe, transdate_oe undcusordnumber_oe aus Recordlinks auslesen, und auch entsprechendeDruckvariablen für Angebot und Lieferschein bereitstellen....
Einheitliche displayable_name Methode für ar/ap/oe/do Objekte
Bestehend aus Dokumentenname und Dokumentennummer, z.B.Rechnung 12Gutschrift 20Verkaufslieferschein 15b
Einheitliche Methode record_number für ar/ap/oe/do Objekte
entspricht jeweils invnumber/ordnumber/donumber
Methode displayable_type auch für Lieferscheine
record Aliase für Items
damit man von DeliveryOrderItem, OrderItem und InvoiceItem direkt aufdas entsprechende ar/ap/do/oe Objekte verweisen kann.
Beispiel in console:
die erste Position aus der ersten Rechnung: my $item = SL::DB::Manager::Invoice->get_first()->items->[0];...
Items in Belegen können durch LinkedRecords angesprochen werden
wzToolTip durch jQuery ToolTipster ersetzt
wzToolTip hat ein uraltes, ist in der Benutzung ausgesprochenunkomfortabel und unflexibel und muss zwingend in jedem benutzendenTemplate manuell nach dem <body>-Tag eingebunden werden. Dadurch kannes z.B. nicht im Layout mit ausgegeben werden.
SL::DB::CustomVariable->value für Typ Nummer auch wirklich Nummer zurückgeben
Da die Spalte number_value in der DB vom Typ numeric() ist, wird das vonRose als String eingelesen. Das bedeutet, dass ->number_value z.B. derWert '0.00000' liefert, was im Booleschen Kontext trueish ist – nicht...
Standard-Druckvorlagen entfernt
Da die Standard-Druckvorlagen nicht mehr weiter gepflegt werden, enstprechend für dennächsten Release als Auswahloption entfernt.
GetModels: Optional die action setzen.
GetModels Filtered: gelaunderten Filter nicht mehr in Controller schreiben
Statt dessen kann der gelaunderte Filter über das Filtered-Pluginabgefragt werden, z.B. im Controller:
$self->models->filtered->laundered
oder im Template:
SELF.models.filtered.laundered
GetModels Filtered: manuelles Setzen von launder_to entfernt
Dies ist ein Zwischenschritt. Das Ziel ist, den gelaunderten Filter nurnoch im Filtered-Plugin selber zu speichern und ihn von dort abzuholen.
Da launder_to bisher noch nirgends benutzt wird, sondern immer nur der...
GetModels Filtered: gelaunderten Filter im Plugin zur Verfügung stellen
ParseFilter: Komplexe Methoden ermöglichen, die auch den Key ändern
ParseFilter: re-factor das Parsen von Filter- und Methodennamen
ParseFilter: re-factoring des Anwendens von Filtern und Methoden
GetModels: Disablen von Plugins auch für undef
Die Dokumentation sagt Folgendes zum Deaktivieren von Plugins:
Configuration for plugins. If the option for any plugin is omitted,it defaults to enabled and is configured by default. Giving afalsish value as first argument will disable the plugin....
AttrDuration: Implementation für Spalten, die Dauer in Minuten speichern
DBConnect-Cache: undefined-Warnungen vermeiden
Treten z.B. beim Aufsetzen der Testdatenbank auf.
Bankerweiterung - bei Rechnung zuweisen Verkaufsrechnungen anzeigen
Das Feature war kaputt, offene Verkaufsrechnungen wurden nicht angezeigt.
Skonto - korrekte Variablenprüfung payment_term
für den Fall, daß kein payment_term bei den ausgewählten Rechnungen gesetzt ist.
Revert "Banktransactions - beim Speichern der Rechnung Zahlungsart prüfen"
This reverts commit 8809a4d1a4b4d3e5b3de31af94c0679dabfacc28.
Das funktioniert so nicht.
ClientJS: Ziel-Argument bestimmter Funktionen vorne trimmen
jQuery kann aus HTML-Strings DOM-Objekte bauen:$("<p>stuff</p>"). Beginnt der HTML-String mit Leerzeichen, so croaktjQuery daran. Daher bei den betroffenen Funktionen, die immer auf einemso gebauten DOM-Objekt hantieren, das Ziel-Argument um führende...
ClientJS: cosmetics (alignment/indentation)
ClientJS: Kommentar korrigiert
history für Zahlungen ar/ap/is/ir und Zahlungsein- und ausgang
Die Spalte "addition" in history_erp hat jetzt einheitlich den Eintrag"PAYMENT POSTED", übersetzt als "Zahlung gebucht".
Bei Verkaufsrechnungen, Kreditor- und Debitorenbuchung wird jetzt zum...
Typos in Doku
SL::DB::{Invoice,DeliveryOrder}->new_from: manuelles Filtern von Items via coderef
DB-Handle Caches: DATESTYLE korrekt setzen
Payment - falsche geschweifte Klammer bei Skonto Zahlungsvorschlag
Zahlungsbedingungen: Flag »Fälligkeitsdatum automatisch berechnen«
Bankbewegungsimport - detailliertere Fehlermeldungen
bei Fehlern oder nicht zuordbaren lokalen Bankdaten
Banktransactions - beim Speichern der Rechnung Zahlungsart prüfen
ob es einem gültigen payment type entspricht.
Außerdem korrekte Variablenprüfung, für den Fall, daß kein payment_termgesetzt ist.
Zahlungsbedingungen bei Lieferscheinen; veraltete Spalte »terms« entfernt
Kosmetik: Ausrichtung
$&, $' und $` grösstenteils entfernt.
Dispatcher: Client DB Handles cachen.
Spart etwa ein Drittel an Requestoverhead, von 27ms auf 17ms.
Banktransactions Import - bessere Fehlermeldung wenn BLZ nicht stimmt
Beim Import wird sowohl Kontonummer oder IBAN als auch die BLZ geprüft.Für den Fall, daß ein Konto anhand der importierten Kontonummer gefundenwurde, die importierte BLZ aber nicht mit der dazu gespeicherten BLZ...
Indirekte Objektnotation fixen
SL::DB::Helper::TransNumberGenerator: alle beteiligten Spalten aufführen
SL::DB::Helper::TransNumberGenerator: Belegnummern einmal direkt auslesen
Es werden alle vorhandenen Belegnummern benötigt. Diese wurden bisher soausgelesen, dass die Belege vom Rose-Manager via ->get_all komplettgeladen wurden und dann jeweils die Belegnummernspalte davon genommen...
SL::DB::Helper::TransNumberGenerator: Tabellen und Zeilen locken
Die Tabelle, aus der die Liste der bereits benutzten Belegnummernausgelesen wird, muss exklusiv gelockt werden, um zu verhindern, dassdanach zwischen dem Auslesen und der Vergabe der neuen Belegnummer eine...
SL::TransNumber: Belegtabelle vor Auslesen locken
HTML::Util: "nbsp" als HTML-Entity durch " " (space) ersetzen.
"nbsp" wird hier zu space, obwohl U+00A0 (non-breaking space) richtig wäre.non-breaking space kann allerdings zu schwer zu findenden Fehlern zum Beispielbeim CSV-Export führen, wenn ein Benutzer dieses nicht sichtbare Zeichen dann...
ClientJS: Values nicht trimmen
Wenn numerische Werte (also IVs und NVs) per Regex getrimmt werden,wird dabei das POK Flag gesetzt, das anzeigt, dass der Scalar auch einvalider String ist.
JSON kann dann nicht mehr unterscheiden welcher Typ der Scalar ist, und...
ConventionManager: foreign_key Benennung
Der Standard Conventionmanager von Rose versucht irgendwelchesingular/plural Magic um aus dem key einen guten Namen zu kriegen.
Das klappt antürlich mal wieder nicht.
Wir haben aber einen besseren Mechanismus dafür,...
Mappings: Direktzugriff auf package names Methode
Locale: Bei parase_date_string undef sofort undef zurückgeben.
parse_amount: Bei amount undef sofort 0 zurückgeben.
RDBO Update: Tax
RDBO Update: Letter
Rechnungen: amount, netamount, paid NOT NULL DEFAULT 0
BankTransactions: typo in deref
Typos
Ausdruck Erzeugnisse mit Stückliste und Lieferantenartikelnummer repariert.
Betraf wohl auch andere Felder zu Artikeln, die vor der Aufbereitung desTEMPLATE_ARRAYS aus der DB gelesen wurden. Diese werden jetzt richtig inTEMPLATE_ARRAYS einsortiert.
Um auch die Einträge für Erzeugnis-Teile und Warengruppen (beim Gruppieren...
prepare_parts_for_printing: weight nicht hier in TEMPLATE_ARRAYS eintragen, …
… da das auch schon in OE|DO->order_details und IS->invoice_detailsgemacht wird. Und durch das doppelte push stimmt die Reihenfolge dannnicht mehr.
Listenpreis in Belegen u. Ausdruck richtig formatieren und nicht mehr parsen.
listprice wird in den Belegen nur angezeigt. Man kann ihn nicht eingeben undauch nicht speichern. Deshalb wird er jetzt nur zur Ausgabe formatiert(io.pl:display_row, OE.pm:order_details, IS.pm:invoice_details), aber nicht...
Typos und Kommentare angepasst
Berichte->Aufträge/Lieferantenaufträge: Zahlungsbedingungen anzeigen
Form::parse_amount: Parsen als Oktalzahlen verhindern
Ticket 53 - Bearbeiter von Storno-Beleg falsch
Für Dialogbuchen: der Mitarbeiter, der auf den Storno-Knopf gedrückthat, erscheint jetzt auch als der Mitarbeiter in der Stornobuchung.
Merge branch 'bankerweiterung_und_skonto'
Conflicts: locale/de/all
Keine Weiche für mt940 in SL/Controller/CsvImport.pm mehr
Stattdessen ein eigener Controller BankImport, der die Daten über einenneuen Helper in SL/Helper/MT940.pm (wo aqbanking-cli aufgerufen wird)nach CSV konvertiert.
mt940 ist nun kein eigener Importtyp vom CSV-Import mehr. Stattdessen...
CSV Import Defaults in die Worker ausgelagert
Neben den Standard-Defaults, die für alle gelten (charset, numberformat,...)
Bankerweiterung: bei Zahlungsartauswahl auf Skonto prüfen
Bankerweiterung: Typo, find_by correct aufrufen
POSIX: Autoexport aller Funktionen vermeiden.
use POSIX; exportiert den kompletten Funktionsumfang in das package. Dasalleine ist schon nicht schön, allerdings ändert sich die Liste derexportierten Funktionen je nach POSIX Version.
POSIX 1.47 bringt nun mathematische Funktionen, unter anderem round und...