FIX: TypeData Invoice
ZUGFeRD: Kreditorenbuchung direkt aus ZUGFeRD-XML erstellen
fix: mehr SL::DB zirkuläre includes
Model::Record: Nutzte record_type für Erstellung aus Workflow
RecordLink: converted_from_* Felder in allen convert_to und new_from korrekt setzen.
Das hier benutzt jetzt das neue Reclamation Format. Statt
converted_from_oe_id
wird jetzt
converted_from_record_id converted_from_record_type_ref = SL::DB::Order...
RecordLink: post save hook für alle Hauptbelege
"return" statt "next", um subroutine zu verlassen
Wiederkehrende Abrechnung Positionen: erstellen wiederkehrender Rechnungen
Reclamation: Test for workflow invoice_to_reclamation
Workflow: (sales/purchase) invoice → reclamation
Neue Belegmethode netamount_base_currency
Um in bestimmten Berichten, die auf mehrere Belege zugreifen (z.B. Finanzübersicht),...
Kosmetik ;
Payment-Helper Skonto verbuchen mit Steuerkorrektur
tax_and_amount_by_tax_id ausgelagert für ar und ap in SalesPurchaseInvoice.pay_invoice mit skonto erwartet die banktransaction.idInvoice und PurchaseInvoice bindet den SPI Helper einAlte Methode skonto_charts noch im Payment-Helper drin....
Anzahlungs-Rg.: eigener Typ for Schlussrechnung (final_invoice (F))
Anzahlungs-Rg.: Typ in Bericht anzeigen
invoice_type: Gutschriften bleiben Gutschriften auch wenn die storniert wurden
Andernfalls liefert invoice_type den Typ 'Rechnung' was definitiv falsch ist.
Zusätzliche Rechnungsadressen: in Verkaufsbelegmasken auswählbar
SL::DB::Invoice->new_from: auch Leistungsdatum (tax_point) übernehmen
Leistungsdatum: wiederkehrende Rechnungen
Einkauf/Verkauf: Feld »Leistungsdatum« für Steuerberechnung
SL::DB::Invoice new_from - param transdate übergeben
Insbesondere bei Tests nützlich, um das Defaultverhalten zuüberschreiben.
PTC: Rückgabehash taxes in taxes_by_chart_id umbenannt
Damit ist klarer, was zu erwarten ist
ZUGFeRD: Rechnungen mit ZUGFeRD-Daten erzeugen
PDF-Erzeugung: Support fürs Erzeugen von PDF/A-konformen PDFs
Es gibt einen Rose-DB-Helfer `S:D:H:PDF_A`, der die erforderlicheStruktur für `SL::Template::LaTeX` (via`$form->{TEMPLATE_DRIVER_OPTIONS}->{pdf_a}`) erzeugt. Der Helfer istfür die üblichen Belegklassen (`S:D:{Order,DeliveryOrder,Invoice}`)...
S:D:Invoice: _post_add_acctrans: Keine Tranaktionen mit Summe == 0 speichern.
Das liefert einen Fehler beim DATEV-Export. Zudem filtert die Buchungsroutineder Rechnungsmaske diese Buchungen aus raus.
Bezieht sich auch auf #414Refs #414
add_{ap|ar}_amount_row berücksichtigen gldate
Ansonsten konnte gldate in ar/ap und acc_trans abweichen, wenn gldateexplizit gesetzt war und nicht dem aktuellen Tag entsprach.
S:D:Invoice->new_from: Auftragsdatum aus Auftrag bei Erzeugen aus Lieferschein
SL::DB::Invoice(closed) POD korrigiert s.a. #368
Ggf. die Routine ganz entfernen oder zumindestens fürGutschriften wie in 368 beschrieben patchen
Kundenstatistik: erster commit ohne Webtemplates
Presenter: Neue Struktur in Belegen umgesetzt
oneline_summary mit Rechnungsbeträgen
Bei Belegen wird der Bruttobetrag angezeigt.
Bei Dialogbuchungen wird die Summe aller Haben-Buchungen als Betragangezeigt.
Oneline summary for GLTransaction/Invoice/PurchaseInvoice
to be used e.g. in Fibu Quicksearch
SL::DB::(Purchase)Invoice: neue Funktion »mark_as_paid«
Sie macht nichts weiter, als »paid« auf »amount« zu setzen.
Revert "Verkauf/Rechnungen/Massenerstellung: Zahlungsbedigungen werden nicht übernommen"
This reverts commit 90e59318411f63c95a7e803b4383d75ec72427a8.
Verkauf/Rechnungen/Massenerstellung: Zahlungsbedigungen werden nicht übernommen
Falls im Lieferschein keine Zahlungsbedingungen gesetzt sind,wird die des Kunden für die Rechnung eingesetzt
»with_transaction« anstelle von »do_transaction« verwenden
Es sollte so selten wie möglich »do_transaction« verwndet werden, damitman sich immer angewöhnt, »with_transaction« zu nutzen.
Hintergründe und Unterschiede zwischen den beiden Funktionen sind in der...
POD für Methode closed in SL/DB/Invoice
Die derzeitige Umsetzung ist mMn falsch bei Überzahlungen, die solltenauch offen sein.
SL::DB::Invoice.pm post Methode benutzt Standardforderungskonto
statt einfach das erste AR-Konto, wenn es in der Mandantenkonfigurationgesetzt ist, und kein Forderungskonto übergeben wurde.
Invoice - add_ar_amount_row - bessere 'die' Fehlermeldung
added roundings for periodic invoices
Revert "added roundings for periodic invoices"
This reverts commit 64b3d19a8012187c3c01717b91d59df2b2753ee3.
Typos in POD
Verkauf/Rechnungen/Massenerstellung: keine Zahlungsbedingungen
Falls im Lieferschein keine Zahlungsbedingungen gesetzt sind, (normalerweise nicht)wird die des Kunden für die Rechnung eingesetzt
SL::DB::Object: clone_and_reset unter Umgehung von itime, mtime
SL::DB::Invoice->new_from: individuelle Lieferadressen richtig behandeln
Individuelle Lieferadressen werden nur von shipto.trans_id zu ar.idverlinkt, nicht aber in ar.shipto_id. Die Implementation ist analog zuSL::DB::DeliveryOrder->new_from.
Payment Helper setzt $self->transactions zurück
Als es noch eine Methode transactions in SL::DB::Helper::Payment gabwurden die acc_trans-Einträge bei Zugriff per $self->transactions jedesMal aus der Datenbank ausgelesen:(SL::DB::Manager::AccTransaction->get_all(query => [ trans_id => $self->id ]);...
Neue Methoden um Debitorenbuchungen zu erstellen
Vorbereitung für Debitorenbuchungsimport, neue Methoden für SL::DB::InvoiceObjekte:
add_ar_amount_row - Erlösbuchungen hinzufügen, mit Steuerschlüsselcreate_ar_row - acc-trans für Forderung hinzufügenvalidate_acc_trans - Prüfen ob alle acc_trans-Einträge aufgehen...
Typos und in SL/DB/Invoice.pm
post in SL::DB::Invoice funktioniert nur für Verkaufsrechnungen
Abbruch, wenn post bei einer Debitorenbuchung aufgerufen wird.
Rechnungen: In Kopf anzeigen, in welchen SEPA-Exporten der Beleg enthalten ist
Doku: POD für Invoice.pm erweitert
- Invoice anstatt Delivery Order bei new_from- Beispiel-Code für Benutzung von new_from mit parameter attributes- TODO angelegt, Controller sollten einige Datenfelder mit Hilfe von Backend-Funktionen prüfen können - in diesem Fall transdate
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
SL::DB::{Invoice,DeliveryOrder}->new_from: manuelles Filtern von Items via coderef
Zahlungsbedingungen bei Lieferscheinen; veraltete Spalte »terms« entfernt
Merge branch 'bankerweiterung_und_skonto'
Conflicts: doc/changelog locale/de/all
Sammelcommit Bankerweiterung und Skonto
Überarbeitung der Bankerweiterung vom Stand Niclas, und Einführung vonBezahlung mit Skonto (alter payment Branch). Mehr Details siehechangelog.
Bankerweiterung - Zwischenstand, erster Entwurf
Erstellung von Tabelle bank_transactions
Import von Bankbewegungen (in Tabelle bank_transactions)
Menu-Eintrag war noch nicht commitet
Controller für die Bank-Transaktionen
Dialog hin- und her
Achtung: noch mit Debug-Statements!...
Beleg-Rose-Objekte: items_sorted für nicht gespeicherte Items gefixt
Die bisherigen items_sorted-Routinen verlangen, dass die Positionsspaltegesetzt ist. Das ist bei noch nicht gespeicherten Belegen oder beigerade hinzugefügten Positionen aber noch nicht der Fall....
Einkauf/Verkauf: Bemerkungsfeld mit HTML-Editor ausgestattet
Verknüpfung von Einzelpositionen auch bei periodisch erzeugten Rechnungen (Auftrag -> Rechnung)Für InvoiceItem in Invoice ein converted_from_*_id hinzugefügt wie bei der Verknüpfung von Auftrag zuRechnung, bzw. Lieferschein zu Rechnung. Letzterer Weg wird aktuell bei Objekten noch nicht...
Invoice, DeliveryOrder-DB: bei Erstellen aus anderen Belegen Preisquellen beibehalten
ar/ap/gl - neues Relationship "transactions"
Objekt-Verknüpfung ar/ap/gl zu acc_trans-Objekten: one-to-many
Hat man ein ar/ap/gl Objekt kann man sich jetzt alle acc_trans-Einträgedazu holen.
Die acc_trans-Objekte werden nach acc_trans_id sortiert zurückgegeben....
Item-Positionen für Rechnungen in DB: items_sorted sortiert nach postition …
PriceRule: customervendor accessor in Rechnungen
PriceRule: reqdate für Invoice und PurchaseInvoice
SL/DB/Invoice->abbreviation prüft jetzt invoice_type
SL::DB::{Invoice,DeliveryOrder}: Items mit neg. qty beim Wandeln optional weglassen
RecordLinks: credit_notes verlinken, und Typ von Rechnungen anzeigen
FiBu Schellsuche in Headerzeile
neues Ajax Autocompletefeld im Header für Benutzer mit FiBu-Rechten,welches Rechnungsnummern und Kunden-/Lieferantennamen durchsucht. Durchdie Auswahl im Dropdown gelangt man direkt zu dem Beleg.
SL::DB::(Delivery)Order,(Purchase)Invoice: Aliase »add_items«
Die Relationships für die Positionen heißen in allen Klassenunterschiedlich. Daher gibt es schon seit Längerem den Alias »items« inallen Klassen.
Das Hinzufügen von Positionen hingegen erforderte bisher, dass man den...
SL::DB::Invoice: Verknüpfung auf die Buchungsobjekte
RDBO Invoice->new_from: Fälligkeitsdatum und Zahlungsbedingungen gefixt
1. Konvertierung von Order-Objekten: Hier wurde das Fälligkeitsdatum zwar richtig übernommen, nicht aber die Zahlungsbedingungen.
2. Konvertierung von DeliveryOrder-Objekten: Lieferscheine haben gar...
RDBO {Invoice,DeliveryOrder}->new_from Attribute nachträglich zuweisen
Macht man die Vermischung ->new(%args, %attributes), so ist dieReihenfolge, wann welche aus %args und welche aus %attributes genommenwerden, aufgrund von Perls beliebiger Hash-Reihenfolge nicht...
SL::DB::Invoice->new_from: Positionsfelder ordnumber, donumber aus Quellbelegen setzen
SL::DB::Invoice->new_from: neue Option skip_items_zero_qty
…für Konsistenz mit DeliveryOrder->new_from.
SL::DB::{DeliveryOrder,Invoice}->new_from: Option items für Übergabe der zu verwendenden Positionen
Gründe dafür können sein:
- eigene Sortierung- gewisse Positionen herauslassen- weitere Positionen hinzufügen
SL::DB::Invoice->new_from: %params nicht mehr direkt an new übergeben, sondern nur $params{attributes}
Gründe: Konsistenz mit DeliveryOrder, und Erweiterbarkeit durchSteuerungsoptionen.
SL::DB::{DeliveryOrder,Invoice}->new_from: custom_variables der Items mit clonen
Behebt #2365 auf eine etwas angenehmere Weise als5bd7e74db1f425a8bbc43357e949efcc1d4eb135.
Revert "Überlagerte benutzerdefinierte Variablen werden in wiederkehrende Rechnungen nicht übernommen"
This reverts commit 5bd7e74db1f425a8bbc43357e949efcc1d4eb135.
SL::DB::Invoice: Umwandlung aus Lieferschein gefixt
Rose-Models Einkauf/Verkauf: Relationships für angepasste Lieferadressen
Überlagerte benutzerdefinierte Variablen werden in wiederkehrende Rechnungen nicht übernommencloses #2365
Lieferbedingungen analog zu Zahlungsbedingungen eingeführt.
Sie können angelegt werden, beim Benutzer voreingestellt werdenund in allen Ein- und Verkaufsmasken gesetzt werden.
SL::DB::Invoice: invnumber in before_save-Hook erzeugen
kein use SL::DB::Object aus SL::DB::Object
itmes_sorted liefert immer eine Array-Referenz ...
um unvorhersehbare Dinge durch wantarray zu vermeiden.
Artikel-Reihenfolge beibehalten beim Erzeugen und autom. Drucken wiederkehrender Rechnungen.
neue Methode items_sorted für Order, DeliveryOrder, Invoice, PurchaseInvoice
Anpassung Rose-Funktionen auf Umstellung currencies
Relationships 'sepa_export_items' in Invoice & PurchaseInvoice
Verknüpfte Belege Einkauf/Verkauf/Projekte: Listen nach Datum sortieren
Rose-Fremdschlüssel richtig benennen: wiederkehrende Rechnungen fixen
chart.link in der acc_trans
Enthält noch einige Ergänzungen zu commitd1408ca13458a782cbde2b768cdd7abdbdcb9348. Es werden jetzt auchperiodisch erzeugte Rechnungen berücksichtigt und SEPA-Überweisungenfunktionieren wieder.
Weiterhin werden noch einige Syntax-Fehler behoben.
tax_id in acc_trans
Dieser Commit enthält das Update-Script um eine neue Spalte Namens'tax_id' in die Tabelle 'acc_trans' einzufügen. Diese Spalte hatConstrait NOT NULL und einen Fremdschlüssel auf die id von tax.
Das Pflichtfeld wird jetzt immer geschrieben bei:...
Invoice-Model: Verknüpfung zu Stornorechnungen "storno_invoices"
Rechnungen, die $self storniert haben -- sprich User war in $self undhat dort auf "Storno" gedrückt.
Rose: Fremdschlüsselbenennung fixen
Die von Rose erzeugten Fremdschlüsselaccessoren heißen wie dieSpaltennamen, also z.B. in Perl 'trans' zu Spalte 'trans_id'. Das istunintuitiv und muss an vielen Stellen (z.B. bei den manager_args,with_objects etc.) auch als 'trans' angegeben werden....
Funktion 'is_sales' in SL::DB::{Invoice,PurchaseInvoice}
Gleiche Funktionen für ähnliche Objekttypen
Rose: 'with_args' nach Foreign-Key-Einführung gefixt
Die Beziehung heißt nun 'parts' und nicht mehr 'part'. 'part' ist nurein Alias.