Sammelcommit Bankerweiterung und Skonto
authorG. Richardson <information@kivitendo-premium.de>
Tue, 28 Apr 2015 15:08:59 +0000 (17:08 +0200)
committerG. Richardson <information@kivitendo-premium.de>
Tue, 5 May 2015 07:53:41 +0000 (09:53 +0200)
commit15f58ff3dfd79651a95535b53f864ea0e8cb6620
tree615bba2b288044bd1153765569d81cd039730f49
parent6a3494478a287c2820e3f68a09bef700af1f57e0
Sammelcommit Bankerweiterung und Skonto

Überarbeitung der Bankerweiterung vom Stand Niclas, und Einführung von
Bezahlung mit Skonto (alter payment Branch). Mehr Details siehe
changelog.

* changelog

* Ungültige Bankkonten ausblenden
* Punktesystem in Hash %points ausgelagert
* format_amount beim Erstellen von Kreditorenbuchungen behoben

* Debug-Modus in manchen Templates für zusätzliche Tabellenfelder, muß im Template angeschaltet werden: [% SET debug=1 %]

Rechnung zuweisen:
* Filterdatum bei Rechnungszuweisung repariert
* bank_transactions vor reconciliation_starting_date ignorieren
* Rechnungen mit offenem Betrag < 1 Cent ignorieren
* Reihenfolge der Bankfelder in Tabelle angepasst

Bankbuchungen
* Sortierreihenfolge ist standardmäßig Neueste zuerst

* aqbanking Binary in configuration hinterlegen

acc_tran in acc_trans umbenannt in MetaSetup/ReconciliationLink

Kontenabgleich - EB- und SB-Buchungen ignorieren

Payment Helper mit Skontomodus und Skontoautomatik

neuer DB Helper zum Bezahlen von Rechnungsobjekten: pay_invoice

Drei Bezahlarten:
* ohne Skonto
* mit Skonto laut Zahlungsbedingungen
* Differenz als Skonto

Neue Helpermethoden rund um Rechnungen für Einkauf und Verkauf.

Für das automatische Verbuchen von Skonto muß für jeden Steuertyp ein
Skontoautomatikkonto für Verkauf oder Einkauf konfiguriert (bei Steuerschlüssel
0 und 1 beides).

Skontomodi und pay_invoice für SEPA umgesetzt

Beim Auswählen von Rechnungen für den SEPA-Lauf kann nun auch Skonto
berücksichtigt werden.

Berichte Bankbewegungen - Export repariert

Bankkonten - Validierung beim Speichern temporär ausgeschaltet

CsvImport bank transactions - show name of bank in preview

Csv-Import Bank transaction - join remote names

like for purpose, join remote_name and remote_name_1 into one field

Punktesystem in Hash pflegen, und die Regeln, die matchen,
protokollieren, wird aber noch nirgends angezeigt.

Zahlungsauswahl bei el. Kontoauszug

im Tooltip auch Skonto-Information anzeigen
beim Auswählen Dropdown mit Bezahltyp anzeigen

pay_invoice aus Helper nutzt transdate_to_kivitendo

Bericht Bankbuchungen - Name des Bankkontos in eigener Spalte anzeigen

Übersetzung für Kontenabgleich - Bank und Buchung vertauscht

Kontenabgleich - bei Vorschlägen Rechnungsnummer verlinken

Kontenabgleich - "nicht abgeglichen" als Default

Vorschläge Kontenabgleich - Beschriftung und Template Default

Bankerweiterung CSV Import - Standardeinstellungen

Bankerweiterung - in Tooltip Skonto nur bei Bedarf anzeigen

BankAccounts Upgrade - bestehende Konten auf obsolete false setzen

displayable_name für BankAccount
kann im Bankkonto select_tag als title_key statt label_sub verwendet
werden.

SEPA - Umstellung auf Bankkonten-Controller

Bankerweiterung - BankAccount Dropdowns mit displayable_name
statt label_subs

Bankerweiterung - Übersetzung korrigiert

bank_accounts mit obsolete NOT NULL und DEFAULT FALSE intialisieren

SEPA payment - noch offene SEPA-Überweisungen mit berücksichtigen

Beim SEPA-Einzug und der SEPA-Überweisung wurden beim offenen Betrag die
noch nicht geschlossenen SEPA Aufträge mit berücksichtigt. Dies wird
jetzt auch bei der Skonto-Erweiterung berücksichtigt.
Dies ist v.A. dann wichtig, wenn man eine Rechnung in mehreren Schritten
per SEPA-Überweisung bezahlen möchte, oder vielleicht von mehreren
Bankkonten aus.
Beim SEPA-Einzug kommt der Fall wohl eher nicht vor.

Skontoerweiterung - Übersetzungen nachgepflegt

Bankerweiterung - Zahlungsverkehr Menü überarbeitet

CSV-Import der Bankbuchungen nach Menü "Zahlungsverkehr" verschoben
Reihenfolge geändert, entspricht der üblichen Abarbeitungsfolge:
Import -> Verbuchen -> Abgleich

SEPA Export - kein "Differenz als Skonto" vorschlagen

bei SEPA Export soll immer Geld fließen, wenn noch ein Betrag offen ist,
der nicht bezahlt werden soll, muß dies außerhalb des SEPA-Exports
verbucht werden.
Nur die Optionen "ohne Skonto" ohne "mit Skonto nach ZB" machen Sinn.

BankTransaction - diverse Änderungen

* Punktesystem erweitert
* Kontonummer und IBAN vergleichen
* zutreffende Punkt-Regeln in Template im Debug-Modus anzeigen, als
Mouseover Tooltip in der Punktespalte

Kontenabgleich verbessert

* bei schon verknüpften Belegen kleine Abweichungen
(Rundungsungenauigkeiten im Subcent-Bereich) tolerieren
* Sowohl auf IBAN als auf Kontonummer prüfen
* Kontenabgleichsstartdatum bei Gesamtsumme verwenden

Bankerweiterung: Bei Rechnung zuweisen Skontosumme anzeigen

Kontoauszug verbuchen: add_invoices um Parameter skonto erweitert

Wenn Zahlbetrag mit Skontobetrag übereinstimmt dann Dropdown mit
"mit Skonto nach ZB" vorausgewählt übergeben.
Kann an der Stelle im Template aber noch nicht prüfen, ob
Zahlungseingangsdatum innerhalb Skontofrist liegt.

Kontoauszug verbuchen - Payment Dropdown konditional

nur anzeigen, wenn überhaupt Skonto in Frage kommt

Es wird aber immer noch nicht auf Datum überprüft

bank_transactions: itime hinzugefügt

wird aber noch nirgends verwendet

Kontenabgleich - Gesamtsaldobeschriftungen waren vertauscht

BankTransaction-Controller: Paginaten beim CSV-/PDF-Export ausschalten
Analog zu Commit 06837707

Kontenabgleich - reconciliate nach reconcile umbenannt

Bankauszug verbuchen - leeren Konteninhaber nicht matchen

BankTransaction - Idee für Negativpunkt für Überzahlung

Kontoauszug verbuchen - korrekter Titel

Kontoauszug verbuchen - offenen Betrag berücksichtigen und anzeigen
und auf leere Regex-Ausdrücke prüfen

Payment Helper - Fließkommadifferenzen berücksichtigen

in pay_invoice für die Fälle "Differenz als Skonto" und "mit Skonto nach
ZB".

Moved BankTransaction matching from Controller to DB

There is now a new function in SL::DB::BankTransaction called
get_agreement_with_invoice that takes a Invoice or PurchaseInvoice
object as an argument and calculates the agreement.

Kontoauszug verbuchen - bei Zuweisung Zahlungsart berücksichtigen

Übernimmt man einen Vorschlag, wird nun per AJAX geprüft, ob die
Kombination aus $bt und $invoice mit Skonto verbucht wird oder nicht.
Es wird ein Optionsliste für eine select als HTML-Blog zurückgeliefert
und unter "Zugewiesene Rechnungen" eingefügt.

Wenn der Zahlungsbetrag genau dem Rechnungsbetrag abzgl. Skonto
entspricht, und die Zahlung innerhalb der Skontofrist erfolgt ist, wird
"mit Skonto nach ZB" vorausgewählt". Ist die Skontofrist vorbei wird
"ohne Skonto" vorausgewählt, dadurch bleibt der Skontobetrag offen,
sofern man nicht manuell auf "mit Skonto nach ZB" umstellt.

Gibt es für die Rechnung keine Skontooption so wird auch keine Dropdown
angezeigt.

Kontoauszug verbuchen - Übersetzung für "Add invoices" korrigiert

BankTransaction - Offene Subcent-Rechnungen rausfiltern
damit diese nicht mehr zum Zuweisen zur Verfügung stehen.

Payment Helper - Export get_payment_select_options_for_bank_transaction

EXPORT_OK angepasst und alle Methoden in SL::DB::Invoice und
SL::DB::PurchaseInvoice importieren

Doku von SL/DB/Helper/Payment.pm angepasst

Kontauszug verbuchen - max agreement refactored

Nicht mehr von einer hohen Zahl in einer Schleife herunterzählen,
sondern den Wert der höchsten Matches per map und max raussuchen und
direkt danach die Vorschläge greppen.

Kontoauszug verbuchen - Refactoring von Rechnung zuweisen (html)

* das HTML wird jetzt nicht mehr per javascript, sondern in
SL/DB/Helper/Payment.pm mit Hilfe des Presenters (für die Tags)
als HTML Blob zusammengebaut

* der Rückgabewert von get_payment_select_options_for_bank_transaction
ist jetzt ein Array, mit dem direkt das select_tag erstellt werden kann.

* Die Daten werden jetzt an to_json als to_json( { 'html' => $html } ...
übergeben, und im AJAX code als data.html ausgelesen.

Reconciliation auf record umgestellt

Reconciliation - ajax as POST bei Vorschlägen, weil url zu lang werden
kann
61 files changed:
SL/AM.pm
SL/Controller/BankAccount.pm
SL/Controller/BankTransaction.pm
SL/Controller/CsvImport.pm
SL/Controller/CsvImport/BankTransaction.pm
SL/Controller/CsvImport/Base.pm
SL/Controller/Reconciliation.pm
SL/DB/BankAccount.pm
SL/DB/BankTransaction.pm
SL/DB/CsvImportProfile.pm
SL/DB/Helper/Paginated.pm
SL/DB/Helper/Payment.pm [new file with mode: 0644]
SL/DB/Invoice.pm
SL/DB/Manager/AccTransaction.pm [new file with mode: 0644]
SL/DB/Manager/BankAccount.pm [new file with mode: 0644]
SL/DB/MetaSetup/BankAccount.pm
SL/DB/MetaSetup/BankTransaction.pm
SL/DB/MetaSetup/ReconciliationLink.pm
SL/DB/MetaSetup/SepaExportItem.pm
SL/DB/MetaSetup/Tax.pm
SL/DB/Part.pm
SL/DB/PurchaseInvoice.pm
SL/Presenter/Invoice.pm
SL/SEPA.pm
bin/mozilla/sepa.pl
config/kivitendo.conf.default
doc/changelog
js/locale/de.js
locale/de/all
locale/en/all
menus/erp.ini
sql/Pg-upgrade2/automatic_reconciliation.sql
sql/Pg-upgrade2/bank_accounts_unique_chart_constraint.sql
sql/Pg-upgrade2/bank_transactions.sql
sql/Pg-upgrade2/bankaccounts_sortkey_and_obsolete.sql
sql/Pg-upgrade2/sepa_items_payment_type.sql [new file with mode: 0644]
sql/Pg-upgrade2/tax_skonto_automatic.sql [new file with mode: 0644]
t/db_helper/payment.t [new file with mode: 0644]
templates/webpages/am/edit_tax.html
templates/webpages/am/list_tax.html
templates/webpages/bank_transactions/_filter.html
templates/webpages/bank_transactions/add_list.html
templates/webpages/bank_transactions/assign_invoice.html
templates/webpages/bank_transactions/create_invoice.html
templates/webpages/bank_transactions/list.html
templates/webpages/bank_transactions/search.html
templates/webpages/bank_transactions/tabs/all.html
templates/webpages/bank_transactions/tabs/automatic.html
templates/webpages/csv_import/_form_banktransactions.html [new file with mode: 0644]
templates/webpages/csv_import/_form_mt940.html
templates/webpages/csv_import/form.html
templates/webpages/reconciliation/_linked_transactions.html
templates/webpages/reconciliation/assigning_table.html
templates/webpages/reconciliation/form.html
templates/webpages/reconciliation/proposals.html
templates/webpages/reconciliation/search.html
templates/webpages/reconciliation/tabs/automatic.html
templates/webpages/reconciliation/tabs/overview.html
templates/webpages/sepa/bank_transfer_add.html
templates/webpages/sepa/bank_transfer_create.html
templates/webpages/sepa/bank_transfer_edit.html