Limitierung nicht schon bei der Datenbankabfrage.
Leicht anderer Name -- es ist im Endeffekt ein stack backtrace, also soll er auch so benannt werden.
Mehr Debugmöglichkeiten für DBUtils.pm und allgemein für Fehlersituationen eingeführt, die über $form->error() signalisiert werden.
get_lsits um payments eweitert
Änderungen zur Unterstützung von anderen Zeichensätzen als ISO-8859-1(5) implementiert. Es ist jetzt möglich, $dbcharset in lx-erp.conf auf UTF-8 zu setzen und dann auch UTF-8 als Datenbankencoding zu benutzen.
Attachment Filenmaes werden nun von einer SL/Form.pm Objektfunktion generiert
einen sub für get_lists -> "vendor" hinzugefügt
subs für den customer und employee select angepasst; sowie get_lists
sub _get_currencies an currencies angepasst, da diese mit : getrennt in der Tabelle stehen
Erweiterung der get_lists für die currencies
Query durch LEFT JOIN vereinfacht und die Ergebnisanzahl deutlich reduziert.
Query-Vereinfachung wurde aus Versehen in r2296 committed.
Bearbeiten von Vorlagen: Es können jetzt die Vorlagen für alle konfigurierten Mahnstufen bearbeitet werden.
$locale->text('CANCELD') für Stornierungen hinzugefügt
Den zuletzt implementierten Mechanismus entfernt, um $form-Variablen zu überwachen, und dafür einen neuen Mechanismus implementiert, der auf tie basiert. Dadurch ist es möglich, immer die exakte Zeilennummer zu erfahren, in der eine Variable geändert wird.
typo
return muss nach leave_sub stattfinden, sonst wird das ignoriert
Substitute mit execute reimt sich.
Kosmetik: Formatoptionen nutzen, anstatt den Formatstring extra zusammenzusetzen.
In allen Einkaufs- und Verkaufsmasken die Drop-Down-Box für die Steuerzone bei jedem Formularaufbau neu generieren. Dadurch bleibt auch der bisher selektierte Eintrag selektiert, was er vorher nicht tat (sprang immer auf "Inland" zurück).
Beim Vergeben von neuen Angebotsnummern etc die "Breite" der Nummernkreisvorlagen berücksichtigen (also wird aus z.B. "A00000" auch wirklich "A00001" und nicht "A1").
Anpassung des Speichervorgangs der Historie. Parameter $form->{snumbers} wird erwartet.
Die Javascript-Funktion "fokus()" sollte immer definiert sein, um keine Javascript-Fehler zu produzieren. Ob sie auch was tut hängt dann davon ab, ob $form->{fokus} gesetzt ist.
Die Funktionen zum Bearbeiten von HTML-, LaTeX-Vorlagen und Stylesheets neu geschrieben.
Geladene Buchungen zeigten nach r2145 keine Steuern mehr an.Das Query zum Abfragen der Kontodaten war falsch verkuerzt worden.
In Form.pm gibt es kein $form, nur $self.
Beim Verschicken von Emails auch die Variable $form->{EMAIL_RECIPIENT} als Empfaenger benutzen, falls in $form->{email} z.B. die Emailadresse des Kunden steht. Bei der Sammelrechnung genau deswegen $form->{EMAIL_RECIPIENT} benutzen.
Die Variable hieß vorher "all_partsgroup" und sollte danach ebenso heißen.
Noch ein Fallback, falls $language wirklich nicht definiert sein sollte.
%myconfig ist ein Hash.
Bei Nummernkreisen auch Sonderzeichen erlauben (Perls eigener Algorithmus hinter "$var++;" funktioniert z.B. nicht, wenn die Variable ein Gleichheitszeichen enthält).
Umstellung der Form.pm auf die Verwendung parametrisierter Queries zur Vermeidung von SQL injection. Zusätzlich etwas Kosmetik (trailing whitespace, TABs entfernt).
Abfangen von doppelten Lieferantenadressen (beim Eintragen)
Weitere Unterfunktion zu Form::get_lists() zum Auslesen von Kunden-/Lieferantentypen.
Bugfix: SQL Fehler bei nicht vorhandenem salesman
CT.pm auf die Verwendung von parametrisierten Queries zur Vermeidung von SQL injection umgestellt. Dabei Restfunktionalität von customertax und vendortax entfernt. Mehr Datenbankhilfsfunktionen hinzugefügt.
Betr. Frontendfunktionen ar, ap, ir, is Zahlungskonto.Die Abfrage von $form->create_links verbessert (vor Inf. Regress geschützt) und aufgeräumt.Vereinheitlichung: Umstellung der Datenbankanfragen auf SL::DBUtils.
Beim Ausdruck die Variablen für den Verkäufer (salesman_*) füllen.
Speichern und Anzeigen eines Verkäufers bei Verkaufsmasken.
Speichern von Verkäufern bei Kundenstammdaten.
Teile von SL/Form.pm auf neuen stand gebracht
Eine Funktion auf Tracelevel 2 gesetzt
Rechnungs- und Gutschriftsnummern werden nun direkt innerhalb der Backend-Routinen innerhalb der gleichen Transaktion vergeben, in der auch die eigentliche Rechnung etc gespeichert wird. Damit soll besser verhindert werden, dass sich Löcher in den Nummernkreisen ergeben.
Dialogbuchen: Die Drop-Down-Boxen bei jedem Formularaufbau aus der Datenbank heraus aufbauen und nicht in $form mitschleifen. Behebt auch den Fehler, dass das Steuerkonto beim initialen Aufbau nicht richtig ausgewählt wurde.
Hilfsfunktionen für Form::get_lists() weiter ausgelagert und mit einem Unterstrich vor dem Namen als interne Funktionen gekennzeichnet.
quote_db_date verschoben nach DBUtils
Quoting Funktion für Datumsangaben in sql queries.Beherrscht:- NULL fuer nicht definierte Werte- current_date als Schlüsselwort- Standardquoting fuer tainted strings (übernommen aus DBI.pm)
Erste Version Druckqueue.Es ist nun wieder moeglich aus der Warteschlange zu drucken, und zwar auf selektierte Drucker.
Historie: Den Einfügezeitpunkt nur sekundengenau darstellen.
Tabelle für Historie wurde umbenannt.
Speichern der Historie in einer eigenen Tabelle. Auch ein Fix für Bugzilla-ID 558.
"Zahlung buchen" bei Kreditoren- und Debitorenrechnungen: Konten richtig zuordnen und das richtige Datumsfeld benutzen.
Historie eingefügt
Anzeige und Auswahl von Projektnummern bei Einkaufs- und Verkaufsbelegen nur noch per Drop-Down-Box.
Bei Projekten ein Flag "aktiv" hinzugefügt.
Drop-Down-Auswahlboxen für Ansprechpartner und Lieferadresse bei jedem Maskenaufbau aus der Datenbank aufbauen. Für den HTML-Code wird jetzt das CGI-Modul verwendet.
Versionsnummernupdate.
Leeren String auch als "nicht gesetzt" deuten.
Neues Feature: Wenn die Anzahl Dezimalstellen bei format_amount() negativ ist, dann werden mindestens (und nicht exakt) so viele Stellen angezeigt.
Die Option "Zahlenformat (Eingabe)" entfernt. Wenn sowohl . als auch , als Dezimaltrennzeichen erkannt werden sollen, dann sind viel zu viele Eingaben ohne , oder . als 1000er Trennzeichen zu mehrdeutig.
Kleiner Bug beim Reformatieren von Zahlen für die Zahlungsbedingungen.
Die Zahlungsbedingungen werden jetzt anhand der ausgewählten Sprache formatiert.
Die Zahlungskonditionen sortierbar gemacht.
Keine globalen Variablen benutzen. Außerdem die etwas hässliche if/else-Kaskadierung entfernt.
Private Variablen.
Auch bei den Variablen company, address und signature eventuell als \\n escapte Zeilenumbrüche wieder in echte Zeilenumbrüche umwandeln, damit die Template-Klasse sie richtig ausgibt.
Möglichkeit eingebaut, den Namen des Anhangs einer verschickten Mail anzugeben.
sub all_years hinzugefuegt. Gibt alle Jahreszahlen als List aus, in denen Buchungen stattgefunden haben.Sinnvoll für Datumsauswahl von Reports, es werden nur Jahre zur Auswahl gestellt,in denen tatsaechlich Buchungsdaten vorliegen
Beim Login wird jetzt ein Check durchgeführt, ob alle benötigten Perl-Module installiert sind. Wenn nicht, dann wird eine Fehlermeldung sowie eine Liste der fehlenden Module ausgegeben sowie grobe Informationen, wie man die fehlenden Module nachinstallieren kann.
Versionsnummer auf 2.4.1 erhöht.
parse_template erweitert um die Mgl. einen Dateinamen ($form->{attachment_filename}) fuerdas Attachmentfile anzugeben, der anders ist als $form->{tmpfile}
Skontobetraege wurden faelschlicherweise vom Nettobetrag berechnet
Ein oben angedocktes, auf CSS basierendes Menü hinzugefügt.
Falscher Namensraum: $form in $self umgewandelt in der Form.pm
Favicon inserted.
Die Variablen "texnumber" (früher "steuernummer"), "co_ustid" und "duns" aus der Benutzerkonfiguration in Vorlagen zur Verfügung stellen. Behebt die Bugzilla-IDs 466 und 468.
Bei den Zahlungsbedingungen einige weitere Variablen zur Verfügung stellen. Patch von Frank Belau "frank () belau ! de".
Automatisches Setzes des Faelligkeitsdatums nach Zahlungsbedingung
Einige Variablen wurden umbenannt und müssen auch an anderer Stelle behandelt werden.
Debugcode.
Funktion in Locale implementiert, um ein Datum in einem anderen Format auszugeben.
Versionsnummer auf 2.4.0 hochgesetzt.
Mehrere neue Outputtypen für die parsing engine eingebaut:xml, elsterwinston, elstertaxbirdund die Funktion zusaetzlich abgesichert gegen fehlende oderfalsche Outputformate.Ferner wird das $form->{tempfile} nur noch ueberschrieben, wennes vorher leer war. Definiert man also vor dem Aufruf von...
Version auf RC2 erhöht
Syntaxhighlighting.
Version auf RC1 erhöht
Bug 395 behoben. Sicherheitseinstellungen fuer oeffentliche Installationen
Anpassung der Routinen von Kreditoren und Debitorenbuchungen auf das neue Steuersystem
Fehler in format_amount. Wenn die uebergebene Variable leer ist, wurde ein Punktzurueckgeliefert
Hilfsfunktionen fuer die Ausgabe von HTML-gequoteten Strings.
Instanzen der Klasse Locale haben leider die package-globale Variable %self anstelle der Instanzvariablen $self benutzt, um die Uebersetzungen und Funktionslisten zu speichern. Das fuehrte dazu, dass mehrere aufeinanderfolgende Aufrufe von Locale->new() die vorher geladenen Uebersetzungen verworfen haben.
ADR entfernt (kam aus Kundenprojekt und ist nicht fuer die allgemeine Lx-Office-Variante gedacht).
Sichern von abweichenden Lieferanschiften:Kunden ohne trans_id, Lieferanten ohne 'CT', mehrfaches speichern der gleichen Anschrift
shiptodepartment_1 in die Auswahlbox mit übernommen, breite der Selectbox "shipto" und "konto" fixiert
Konflikt mit CRM
Fix fuer Bug 358:
Von Rolf Eike Beer Developer ML:
SL-Mailer.pm.diff
SQL-Ledger in der Message-Id und im Boundary-Trenner durch Lx-Office ersetzt.
SL-Form.pm.diff:
Der Trenner für die Signatur ist nicht "--", sondern "-- ". Ohne dasLeerzeichen erkennen das die "guten" Mailprogramme nicht als Signatur an. Das...
Noch haben wir keine 2.4.0.
Recommit von r1152 von skoehler: Nachtag zu r1125, neue format_amount gab keine negativen Zahlen zurueck
Recommit von r1125 von skoehler: Bugfix 356, bei Zahlenformat 1000.00 wurden nachfolgende Nullen abgeschnitten format_amount erneuert. Thx an Sven.
Form::parse_html_template: Wenn in der Vorlage Variablen benutzt werden, die es in $form nicht gibt, so werden leere Werte und vor allem leere Arrays fuer Schleifenvariablen erzeugt. Form::show_generic_error: Wenn ein weiterer Parameter "action" angegeben wird, so wird auf der Fehlerseite ein Button mit dieser beschriftung ausgegeben. Alle $form-Variablen werden ebenfalls ausgegeben (z.B. fuer eine "Zurueck"-Funktion).
bin/lynx wurde nie wirklich unterstuetzt und wird somit entfernt.
Uebernahme der kompletten Version, so wie sie Philip als "Demo-Version" gezeigt hat, in das unstable-Repo. Dabei werden auch einige Patches, die seit der 2.2.0 hier eingepflegt wurden, wieder ueberschrieben. Diese werden in den naechsten Tagen wieder eingespielt, sofern noetig. Zu den neuen Features gehoeren (ohne Anspruch auf Vollstaendigkeit) Mahnwesen, Einheiten, Template-Neucodierung, AJAX-basierende Dialoge an einigen Stellen, Buchungsgruppen etc etc.