Moritz Bunkus [Tue, 8 Jul 2008 15:17:56 +0000 (15:17 +0000)]
Beim Ausdruck wurde der Rabattbetrag nicht anständig auf ein Array gepackt, weil IS::customer_details() $form->{discount} mit dem Wert aus der Datenbank befüllt; und deswegen ist $form->{discount} kein Array.
Moritz Bunkus [Tue, 8 Jul 2008 10:48:30 +0000 (10:48 +0000)]
Beim Umwandeln von Aufträgen in Rechnungen nicht sofort den Auftrag schließen. Beim Buchen von Rechnungen die Aufträge schließen, aus denen die Rechnung erzeugt wurde (auch mit Umweg über Lieferscheine), sofern der Auftrag damit vollständig abgerechnet wurde.
Moritz Bunkus [Mon, 7 Jul 2008 15:48:09 +0000 (15:48 +0000)]
Eingangsrechnungen: Wird das Rechnungsdatum verändert, so wird per AJAX das Fälligkeitsdatum anhand der beim Lieferanten hinterlegten Zahlungsbedingungen berechnet und im Formular ersetzt.
Moritz Bunkus [Mon, 7 Jul 2008 14:25:00 +0000 (14:25 +0000)]
Die Ausgabe der Zeile "\usepackage{textcomp}" darf nur erfolgen, wenn LaTeX-Vorlagen geparset werden, nicht bei anderen Vorlagen. Da die HTMLTemplate-Klasse von der LaTeXTemplate-Klasse abgeleitet ist, muss hier also in der Basisklasse der tatsächliche Klassentyp überprüft werden.
Moritz Bunkus [Fri, 4 Jul 2008 13:14:40 +0000 (13:14 +0000)]
Im Emaildialog wurden die Druckoptionen nicht angezeigt, weil das Template-Modul mit Variablennamen nicht zurechtkommt, die mit einem Unterstrich beginnen.
Moritz Bunkus [Tue, 1 Jul 2008 12:25:50 +0000 (12:25 +0000)]
Beim Umwandeln von Angeboten/Preisanfragen in Aufträge die IDs in record_links speichern. Beim Umwandeln von Aufträgen und Lieferscheinen in Rechnungen die IDs in record_links speichern.
Moritz Bunkus [Tue, 1 Jul 2008 10:14:17 +0000 (10:14 +0000)]
1. Variable umbenannt, in der die IDs aus OE zwischengespeichert werden, aus denen ein Lieferschein erzeugt wurde.
2. Erweiterung von "RecordLinks->create_links()" um einen Modus, um die IDs aus einem String zu erhalten.
3. Bug: Bei Umwandlung von Auftrag in Lieferschein Variable "delivered" leeren, weil ansonsten evtl der noch nicht gespeicherte Liferschein bereits als ausgelagert gilt.
Moritz Bunkus [Thu, 26 Jun 2008 09:55:38 +0000 (09:55 +0000)]
Fixes für die Situation, in der $dbcharset anders ist als das Charset der für den Benutzer ausgewählten Sprache: Die Datei "special_chars" in das $dbcharset konvertiert werden. Beim umgekehrten Auflösen der durch Button-Drücke ausgelösten Aktionen in Funktionsnamen muss von $dbcharset, das vom Browser kommt, in das Charset der vom Benutzer ausgewählten Sprache konvertiert werden, damit die Auflösung funktioniert.
Moritz Bunkus [Thu, 26 Jun 2008 09:53:20 +0000 (09:53 +0000)]
HTML-Templates vor und nicht nach der Verarbeitung durch die Template-Klasse mit iconv in das $db_charset konvertieren. Andernfalls würden Daten, die bereits im $db_charset vorliegen, erneut konvertiert und damit falsch codiert sein.
Moritz Bunkus [Wed, 25 Jun 2008 16:09:06 +0000 (16:09 +0000)]
Lagerbericht: Bei der Auswahl der Keys aus $form, die für die Auswahl der aus den Tabellen auszulesenden Spalten verwantwortlich sind, strenger sein. Der Key muss mit "l_" beginnen. Wird "l_" auch in der Mitte zugelassen, so schlägt dies fehl, wenn per ReportGenerator exportiert wird. Grund ist, dass diese Variablen auch nochmal mit dem Präfix "report_generator_hidden_*" in $form vorhanden sind. Dadurch würden Spalten selektiert, die es in der Datenbank nicht gibt.
Moritz Bunkus [Wed, 25 Jun 2008 16:01:47 +0000 (16:01 +0000)]
Form::format_amount_units() darf auch ohne die Parameter amount und part_unit aufgerufen werden. Kein amount wird einfach als 0 gewertet, und wenn part_unit fehlt, so wird schlicht ein leerer String zurückgegeben. Macht Ausgaben wie den Lagerinhalt inkl. leerer Lagerplätze aus wh.pl einfacher.
Moritz Bunkus [Wed, 25 Jun 2008 15:50:24 +0000 (15:50 +0000)]
Wenn UTF-8 als Datenbankcharset verwendet wird, so muss der ReportGenerator die an PDF::API2 übergebenen Strings als UTF-8 markieren (mit Perls Encode-Modul).
Moritz Bunkus [Wed, 25 Jun 2008 14:34:42 +0000 (14:34 +0000)]
Zwei Probleme, die behoben werden:
1. Bei UTF-8-Installationen dürfen keine ISO-8859-1-codierte Umlaute enthalten sein.
2. Die Funktion "do_query()" wird von vielen Upgradescripten neu definiert und hat dann eine andere Signatur als die "DBUtils::do_query()". Das führte dazu, dass warehouse.pl nur dann funktionierte, wenn nicht gleichzeitig eines derjenigen Upgradescripte ausgeführt wurde, das do_query() neu definiert. Fix ist, do_query() in warehouse.pl wie in den anderen Perl-Datenbankupgradescripten zu definieren und zu verwenden.
Moritz Bunkus [Wed, 25 Jun 2008 13:57:21 +0000 (13:57 +0000)]
Administration: Wenn eine neue Authentifizierungsdatenbank angelegt wird und keine Benutzermigration erfolgt (sprich eine frische Installation von 2.6.0 oder neuer), so wird eine Standardgruppe namens "Vollzugriff" angelegt, die volle Rechte auf alle Funktionen erhält.
Moritz Bunkus [Wed, 25 Jun 2008 13:25:25 +0000 (13:25 +0000)]
Beim Neuanlegen von Datenbanken darf die Datenbank schon existieren. Damit kann die Authentifizierungsdatenbank auch für die Instanzendaten benutzt werden. Fix für Bug 828.
Moritz Bunkus [Fri, 20 Jun 2008 10:16:13 +0000 (10:16 +0000)]
------------------------------------------------------------------------
r7136 | mbunkus | 2008-06-20 11:16:19 +0200 (Fri, 20 Jun 2008) | 1 line
Lieferscheine: Ein Button eingefügt, mit dem man Lieferscheine als geschlossen markieren kann, ohne sie in Rechnungen umwandeln zu müssen.
------------------------------------------------------------------------
Moritz Bunkus [Fri, 20 Jun 2008 10:12:17 +0000 (10:12 +0000)]
------------------------------------------------------------------------
r7135 | mbunkus | 2008-06-20 10:56:08 +0200 (Fri, 20 Jun 2008) | 1 line
Wenn eine Rechnung aus einem oder mehreren Lieferscheinen erstellt wird, so wird beim Buchen der Rechnung automatisch alle Lieferscheine als geschlossen markiert, aus denen die Rechnung erstellt wurde.
------------------------------------------------------------------------
Moritz Bunkus [Fri, 20 Jun 2008 09:43:21 +0000 (09:43 +0000)]
------------------------------------------------------------------------
r7132 | mbunkus | 2008-06-20 10:12:27 +0200 (Fri, 20 Jun 2008) | 1 line
Lieferscheine: Die Entscheidung, ob ein Lieferschein bearbeitet werden darf, wird vom Flag "delivered" abhängig gemacht, nicht von "closed".
------------------------------------------------------------------------
Moritz Bunkus [Wed, 18 Jun 2008 06:42:28 +0000 (06:42 +0000)]
Beim Speichern von Lieferscheinen wird überprüft, ob der dazugehörige Auftrag nun komplett geliefert wurde. Wenn ja, so wird der Auftrag sowohl als geliefert als auch als geschlossen markiert.
Moritz Bunkus [Tue, 17 Jun 2008 15:12:43 +0000 (15:12 +0000)]
Parameter-Check-Funktionen Common::check_params() und Common::check_params_x() erweitert, um auch "oder"-Bedigungen zuzulassen, indem die Liste der erwarteten Parameter als Array-Referenz übergeben werden.
Moritz Bunkus [Thu, 12 Jun 2008 18:17:47 +0000 (18:17 +0000)]
Den Preisfaktor nicht vor dem Runden des Einzelpreises einbeziehen, sonst kommen stark verfaelschte Ergebnisse heraus. Berechnung von Zeilensumme und Rabatt in io.pl mit OE.pm abgeglichen.
Moritz Bunkus [Tue, 10 Jun 2008 14:44:19 +0000 (14:44 +0000)]
Bug in Auflistung von Lieferscheinen: Gibt es mehrere Aufträge mit der gleichen Auftragsnummer, und wenn so eine Nummer bei einem Lieferschein eingetragen war, so wurden diese Lieferscheine gleich mehrfach aufgeführt. Die Links zu den Aufträgen führten dann zusätzlich möglicherweise zu den falschen Aufträgen (von Verkauf in Einkauf und umgekehrt). Falsche Form-Typen führen zu falschen Datenbankabfragen ("customer" vs "vendor"), sodass die Datenbankabfrage im Einkauf tatsächlich die Verkaufslieferscheine lieferte.
Moritz Bunkus [Tue, 20 May 2008 09:17:21 +0000 (09:17 +0000)]
Lange Wörter sind nur solche mit mehr als 60 Buchstaben, nicht 20 wie in der Standardeinstellung. Ansonsten werden bei vielen Wörtern / Emailadressen unschöne Leerzeichen erzeugt.
Moritz Bunkus [Mon, 5 May 2008 12:14:26 +0000 (12:14 +0000)]
Anlegen von Waren und Dienstleistungen aus Vorgängen heraus: Wird gleich eine Langbeschreibung eingegeben, so wird diese nun in das Bemerkungsfeld des neuanzulegenden Artikels übernommen.