G. Richardson [Sat, 28 Feb 2015 14:52:01 +0000 (15:52 +0100)]
Ticket #42 - Nachkommastellen in Menge bei Erzeugniskomponenten
Danke an Joachim Zach für einen Patch, ich habe bei der Gelegenheit auch
noch ein paar Codestellen kommentiert. Das Verhalten von item_selected
bzgl. parse/format_amount unterscheidet sich mittlerweile je nachdem, ob
es in Belegen oder in Erzeugnissen verwendet wird.
G. Richardson [Fri, 20 Feb 2015 15:14:55 +0000 (16:14 +0100)]
Patch für Bug 40, base_unit Umrechnung in VK-Bericht
Patch getestet in Datenbank mit unterschiedlichen Einheiten und
Preisfaktoren.
Möglichkeit zum Testen:
Summe VK-Betrag des Verkaufsberichts sollte gleich sein der Summe Betrag
von Verkauf->Berichte->Rechnungen, wenn man die Debitorenbuchungen
rausfiltert.
z.B. in SL/AR.pm ar_transactions:
my $where = "1 = 1 and a.invoice is true ";
oder dem Benutzer das Recht entziehen, Debitorenbuchungen im
Rechnungsbericht anzuzeigen.
Jan Büren [Tue, 24 Feb 2015 13:12:34 +0000 (14:12 +0100)]
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 zu
Rechnung, bzw. Lieferschein zu Rechnung. Letzterer Weg wird aktuell bei Objekten noch nicht
benutzt. Ferner einen Rückgabewert von create_links (RecordLinks) etwas verbessert (undef bei nicht
erfolgtem Anlegen).
Offen: Implementierung der Verknüpfung von DeliveryOrderItem-Objekten mit InvoiceItem-Objekten.
Diese werden aktuell nicht benutzt und betrifft auch nicht periodische Rechnungen.
Moritz Bunkus [Wed, 18 Feb 2015 11:38:39 +0000 (12:38 +0100)]
DBUpgrade: Fehlermeldungen richtig in Perls Encoding übersetzen
DBD::Pg vor Version 2.16.1 hat das UTF-8-Flag bei Fehlermeldungen nicht
gesetzt, auch wenn die Datenbankverbindung UTF-8 geflaggt war. Daher
musste bei früheren Version von DBD::Pg kivitendo die Fehlermeldung
selber ins richtige Encoding umwandeln.
Das darf bei neueren Versionen natürlich nicht mehr gemacht werden.
Bernd Bleßmann [Thu, 5 Feb 2015 14:44:12 +0000 (15:44 +0100)]
SL::DB::Helpers::Attr as_date geht jetzt auch mit 'now()'.
Ein neu-angelegtes Rose-DB-Objekt mit einer Spalte mit einem
Datums-Default-Wert 'now' liefert 'now()' für diese Methode. Z.B.:
SL::DB::Order->new->itime = 'now()'. Jetzt geht damit z.B.:
SL::DB::Order->new->itime_as_date
Bernd Bleßmann [Thu, 5 Feb 2015 10:47:32 +0000 (11:47 +0100)]
Steuerzone/Zahlungsbedingungen/Buchungskonto in Suchmaske zu Rechnungsberichten …
… aus dem Bereich "Kunde" bzw. "Lieferant" verschoben, da die Daten nicht aus
den Kunden- bzw. Lieferantenstammdaten, sondern aus den Rechnungsdaten gelesen
werden.
Moritz Bunkus [Thu, 5 Feb 2015 09:54:40 +0000 (10:54 +0100)]
CreatePeriodicInvoices: HTML-Formatierung in Langtexten berücksichtigen
Beim Ersetzen der Variablen muss das Format des Textes (HTML oder
normaler Text) berücksichtigt werden, damit Formatierungen richtig
angewandt und die Platzhalter überhaupt erst gefunden werden.
G. Richardson [Tue, 3 Feb 2015 07:34:39 +0000 (08:34 +0100)]
history_erp : Unterscheidung von id und glid
behebt #2493
Es gibt in der Datenbank zwei Sequenzen, mit der die ids von
Datenbankeinträgen gespeichert werden, und die die Historiensuche
betreffen:
glid: ar,ap,gl
id: delivery_orders parts oe customer vendor
In der history_erp gibt es allerdings nur eine Datenbankspalte für
trans_id, wo sowohl ids als auch glids gespeichert werden.
(Wahrscheinlich wurde glid irgendwann mal neu eingeführt, damit man bei
den Buchungen einen durchgängigen Buchungsnummernkreis hat, ohne dies
für die Historie zu berücksichtigen.)
Da das Historienfenster nur eine id als Parameter übergibt kann es also
vorkommen, daß z.B. in einer Artikelhistorie eine Eintrag aus einer
Buchungshistorie erscheint, wenn es eine Buchungs-glid gibt, die gleich
der Artikel-id ist.
Mit diesem Patch wird nun schon im Template festgelegt, ob es sich bei
der Historie um eine Buchung (trans_id_type = glid) oder nicht
(trans_id_type = id) handelt, und die Datenbankabfrage entsprechend
modifiziert. Dies sollte nur die Historie von einzelnen Seiten betreffen
(z.B. Artikel, Kunde, Verkaufsrechnung), nicht die Historiensuchmaschine
unter dem Menüpunkt "System".
Die Modifizierung des SQL-Statements ist allerdings noch recht unschön,
da diese eventuell angepasst werden muß, wenn sich etwas an der
Beschreibung der history_erp Zeilen ändert (wie beispielsweise in Commit 01b4e844b89 ).
Wenn die Historie mal überarbeitet wird sollte besser direkt schon
gespeichert werden, ob es sich um eine Buchung oder nicht handelt, bzw.
den Typ des Objekts, um das es gerade geht.
Und dann wäre es auch noch schön, die Historie in einen Tab zu
verlagern, statt eines Knopfs im Workflow.
Moritz Bunkus [Wed, 4 Feb 2015 13:16:56 +0000 (14:16 +0100)]
Konfigurierbares Angebotsgültigkeits-Intervall: Arbeitstagsprüfung nach Addieren
Die Funktionsweise wurde so geändert, dass zuerst der hier angegebene
Wert (oder 1, wenn kein Wert angegeben) zum aktuellen Datum addiert
wird. Danach wird auf Wochenende geprüft und auf den nächsten Werktag
justiert, sofern notwendig.
G. Richardson [Wed, 28 Jan 2015 16:41:08 +0000 (17:41 +0100)]
get_lists: salesman-case analog zu employee case
mit Commit ca18e0478035f63 ging die Verkäuferauswahl im Verkaufsbericht
kaputt, da durch den all_salesmen-Parameter der param-Wert ALL_EMPLOYEES
nicht benutzt wurde, und die Verkäufer deshalb in all_salesmen statt in
ALL_EMPLOYEES im Template standen.
Um im Verkaufsbericht auch gelöschte Verkäufer zur Auswahl anzuzeigen:
'salesmen' => { "key" => "ALL_SALESMEN", "deleted" => 1 }
Jan Büren [Wed, 28 Jan 2015 16:21:49 +0000 (17:21 +0100)]
Ticket 29 Verknüpfte Belege -> keine Verknüpfung von Rechnung nach Auftrag
Verknüpfung von Rechnung nach Angebot, sowie Auftrag nach Angebot umgesetzt.
Ferner ein einfaches delete $form->{variable_die_resettet_wird} foreach an dieser Stelle
eingebaut (ohne map).
Ferner die Verknüpfung der Belege in eine Schleife gesetzt.
Bernd Bleßmann [Tue, 27 Jan 2015 14:05:59 +0000 (15:05 +0100)]
Rechnungen: Nicht editierbare CVars nicht rendern, aber richtig speichern bzw. drucken.
Die Änderung für Rechnungen (u. Gutschriften) fehlte noch im commit 6b4a71ff376e8337b708127f9f6c63c1d70d0af3
(Nicht editierbare CVars nicht rendern, aber richtig speichern und drucken.)