Zugangskontrolle mithilfe des Eintrags "acs" in der Benutzerkonfiguration wird nicht mehr benutzt.
Bugfix: subtotal wurde nicht ans template weitergereicht.
Lokale Variablen auch als lokal deklarieren.
Die Emailadresse gibt es nicht, also auch nicht anzeigen.
Drucken von offenen Forderungen/Verbindlichkeiten: Die nachfolgende Funktion erwartet, dass die Zählung bei 1 beginnt, $row_idx startet aber bei 0.
Optionen des Scripts dokumentiert.
Bei der Auswahl von Artikeln auch wirklich den Ausgewählten weiterverarbeiten. Bei mehr als zehn angezeigten Artikeln wird ansonsten ein falscher genommen, weil der reguläre Ausdruck nicht zwangsweise bis zum Stringende gematcht hat.
Locales Quoting war fehlerhaft.
Bugfix: Pushlisten müssen mit Komma getrennt werden.
Beim Export der Kunden-/Lieferantenstammdatenberichte auch die Suchfelder mit übergeben, damit nicht die komplette Liste exportiert wird.
Bei Berechnung des absoluten Rabattes den Rundungsfehler mit einbeziehen.
Beim DATEV-Export das Jahr in der Datei angeben, das durch den ausgewählten Zeitraum gegeben ist, und nicht das aktuelle Jahr.
Notes darf beim Speichern einer Wiedervorlage gerne das bereits bestehende Datenbankhandle benutzen, damit im Fehlerfalle weder die Note noch die Wiedervorlage gespeichert werden.
Konzeptioneller Fehler. Da es mehr als ein Form-Objekt geben kann (in diesem Falle beim Wiederherstellen von $form mittels restore_form()), darf das Standard-Datenbankhandle nicht geschlossen werden, wenn ein Form-Objekt vernichtet wird, sondern erst, wenn das Programm beendet wird.
Doppeltes Escapen von Anführungszeichen vermeiden.
Auch versteckte Variablen HTML-escapen.
Attribut "name" HTML-escapen.
Nicht doppelt quoten.
Doppeltes Quoting von Anführungszeichen vermeiden.
DATEV-Export nicht beim ersten Fehler abbrechen, sondern eine Liste aller Fehler für den ausgewählten Zeitraum ausgeben und dann erst abbrechen. Das Datenbankhandle nicht schließen, das geschieht automatisch beim Programmende.
Kosmetik; mehr Variablen umbenannt
Kosmetik; Code vereinfacht
Variable $i in $trans umbenannt.
Kosmetik; Variablen lokal deklarieren.
Doppeltes HTML-Quoting vermeiden (das CGI-Modul quotet selber schon).
Kosmetik
Eine Option "@ignore: 1" für Datenbankupgradescripte, mit denen das Script von Lx-Office ignoriert wird. Kann benutzt werden, um ein Script temporär zu deaktivieren, z.B. wenn man noch am Entwickeln ist.
Beim Anlegen des allerersten Beleges eines Typs dafür sorgen, dass vendor_id bzw. customer_id auch gesetzt werden. Andernfalls funktionieren Dinge wie Ansprechpartner-Drop-Down-Boxen nicht, oder es erscheinen später SQL-Fehler.
Bei Lieferanschrift-Drop-Down auch die Straße und den Ort anzeigen.
Gelieferte Menge abholen kann nur bei schon gespeicherten Aufträgen funktionieren.
Beim XML/XUL-Menü nicht den Menüpunkt "Programm/Version" als Einstiegsseite hardcodieren, sondern die Standardseite aufrufen, die auch von den anderen Menüs aufgerufen wird. Unterschied ist, dass die TODO-Liste bisher nicht angezeigt wurde.
Typo
Typo. Fix für Bug 850.
Fix für PostgreSQL 8.3, das eine strengere Typenprüfung als frühere Versionen besitzt. Fix für Bug 854.
COALESCE ist immer 0. Deswegen wurden in der Aufgabenliste jeder Eintrag als Preisanfrage und nicht als Angebot oder Preisanfrage dargestellt. Fix für Bug 844.
form_footer in ic.pl in Template ausgelagert.
Auslagern von Hersteller/Modell-Zeilen in eigene Templates. Hersteller/Modell auch wieder für Waren aktiviert, nicht nur für Erzeugnisse. Fix für Bug 843.
Bericht über Lagerbewegungen: Wurde ein Filter nach Chargennummer verwendet, so wurde die Tabellenspalte chargenumber in der falschen Tabelle abgefragt, was zu einem SQL-Fehler geführt hat. Fix für Bug 841.
1. Tabellenaliasnamen in Queries benutzen, weil PostgreSQL ansonsten einen Fehler rauswirft.2. Wenn bei E/Ü-Rechnung ein Projekt ausgewählt ist, dann wurde vorher ein Teil des SQL-Codes nicht im eigentlichen Query untergebracht sondern in eine danach nicht mehr benutzte Variable geschrieben.
JavaScript-Menü: Der Schlüssel 'action' soll nicht als Parameter in den Link aufgenommen werden, nicht der Schlüssel, der durch den Schlüssel 'action' bestimmt wird. Dadurch wurde z.B. kein 'report=...' an die URL angehängt, wenn 'action=report' in der menu.ini stand.
Datenbankupgrade für Einführung der Lagerverwaltung: 1. SQL-sicheres Quoten der Eingaben; 2. Beim Anlegen des Lagers alle Tabellenfelder füllen, weil ansonsten später das Lager nicht verfügbar erscheint. Fix für Bug 834.
Keine Umlaute direkt eingeben, damit auch hinterher UTF-8 herauskommt.
Unterstützung von UTF-8 bei der UStVA-Konfiguration.
Falsche Reihenfolge der SQL-Parameter sorgten für Fehlermeldungen, wenn z.B. nach Betreff gesucht wurde.
Überbleibsel der Aktualisierung des DHTML-Tab-Scripts.
Ausgabe einer ordentlichen Fehlermeldung beim Datenbankupgrade, wenn das Verzeichnis users nicht beschreibbar ist.
Etwas differenziertere Beschreibung, welche Verzeichnisse überhaupt vom Webserver beschreibbar sein müssen.
Beim Anlegen eines Lieferscheins die Kunden-/Lieferantendetails auslesen (z.B. Sprache).
Beim Anlegen der Authentifizierungsdatenbank template1 als Template vorschlagen, weil hier oftmals die PL/PgSQL-Sprache angelegt wird.
Bugfix beim Anlegen der Authentifizierungsdatenbank mit UTF-8. Anzeigen von Fehlermeldungen, wenn Lx-Office nicht mit UTF-8 sondern z.B. ISO-8859 konfiguriert ist und Datenbanken auf einem PostgreSQL angelegt werden sollen, das selber UTF-8 verwendet (weil das nicht geht). Forcieren von UTF-8 als Datenbankcharset auf PostgreSQL-Installationen, die mit UTF-8 als Charset angelegt wurden.
Klarstellung zum PostgreSQL-Parameter TCP_IP, den es in v8 nicht mehr gibt.
Konsistenz: Der Button, der das Detail-Popup-Fenster für Kunden und Lieferanten öffnet, sollte überall gleich beschriftet sein (mit "D").
Kunden-/Lieferantendetails-Popup-Fenster: Schleifen für die Sprung-Links in eigenen Block ausgelagert, damit die Schleifenvariable "contact" nicht den Wert aus $form überschreibt.
Multibox: Einen weiteren Parameter ergänzt, mit dem gesteuert wird, ob überhaupt zugelassen werden soll, dass ein Textfeld anstelle einer Drop-Down-Box angezeigt wird, ohne dass man dafür explizit mit limit rumspielen muss.
Query für die Artikelstammdaten: Falsches Joinen. Wenn die UNION aus invoice/orderitems mit ar/ap/oe gejoint wird, dann muss darauf geachtet werden, dass Zeilen aus invoice nur mit ar/ap und Zeilen aus orderitems nur mit oe gejoint wird. Grund ist, dass ar.id und ap.id den Zähler glid benutzen, während oe.id den Zähler id benutzt. Daraus resultierten Verbindungen mit Zeilen aus orderitems mit Zeilen aus ar/ap, sprich es wurden Rechnungen gefunden, in denen die Artikel gar nicht auftauchten.
Unsinniges doppeltes Durchsuchen von Tabellen.
Sprache
Grammatik/Rechtschreibkorrektur
Sortieren nach Vorgangsbezeichnung ermöglichen. Fix für Bug 749.
Das Feld "transaction_description" gibt es auch in der Tabelle "delivery_orders".
Das Feld "transaction_description" sollte keine NULL-Werte enthalten, weil das das Sortieren unnötig erschwert.
Die Events auf <form> sorgen im Internet Explorer 7 dafür, dass Drop-Down-Boxen beim Loslassen des Mousebuttons sofort wieder geschlossen werden. Fix für Bug 765.
Update des DHTML-Tab-Scripts auf Version 2.2.
DHTML-Menü: Immer die Breite der <ul> vorgeben.
SQL-Fehler: Im Query die richtigen Tabellen-Aliase benutzen. Fix für Bug 812.
Spalte 'taxincluded' hat den Typ 'boolean' und nicht 'integer'. Fix für Bug 759.
Zusammenfassen der Commit-Log-Meldungen im Changelog.
Einen Hinweis hinzugefügt, dass es ein Script gibt, mit dem das Vorhandensein aller benötigter Perl-Module überprüft werden kann.
Ein Hinweis hinzugefügt, welche Perl-Module in v2.6.0 benötigt werden, die vorher noch nicht benötigt wurden.
Wir haben nun die erste Beta von Version 2.6.0.
Auswahlen von Radiobuttons auf Selectboxen umgestellt.
Das Perl-Modul PDF::API2 ist nun feste Voraussetzung.
In den Benutzereinstellungen klarer machen, dass das XUL-Menü nur mit Firefox funktioniert.
Das Javascript-Menü durch eine andere Implementation ersetzt, die auch unter dem Internet Explorer 7 funktioniert.
Einen Abschnitt über UTF-8 als Encoding in der Dokumentation hinzugefügt.
Weiteres Perl-Modul zu Installationsanleitung hinzugefügt.
Kosmetik.
Benutzerdefinierte Variablen für Projekte implementiert.
Adressenfix
Fehler bei in authuser
Methode lock gibt es nicht, begin ist richtig
Bei Druckvorschau einer Rechnung den Namen der herunterladbaren Datei nicht auf "is.pdf" belassen, sondern auf "Rechnung_(Druckvorschau).pdf" setzen.
Aufgrund einer Schwäche im Parser von locales.pl darf innerhalb eines <input type="submit">-Tags nur einmal ein <translate>...</translate> vorkommen. Ansonsten wird nur der erste zu übersetzende Begriff auch als Name einer Perl-Unterfunktion erkannt und entsprechend in die Locale-Datei geschrieben.
Berechtigungsprüfung bei den Buttons "Speichern und ..." in den Kunden-/Lieferantenstammdaten korrigiert.
Weitere Unterfunktionen tracen lassen.
Bei $form->parse_template() nur dann die ganzen Variablen employee_* überschreiben, wenn employee_id nicht gesetzt ist. In io.pl die ganzen employee_*-Variablen mit denen des ausgewählten Bearbeiters belegen und nicht mit denen des aktuellen Benutzers.
Beim Verschicken von Emails überprüfen, ob es im Vorlagenverzeichnis eine Vorlage gibt, deren Name "_email" hinter dem Formulartyp enthält und diese verwenden, sofern sie existiert (z.B. "sales_quotation_email_en.tex" für eine LaTeX-Angebotsvorlage in Englisch).
Einen Test für Postgres-Datenbankcluster hinzugefügt, ob sie anständig mit Umlauten funktionieren, wenn UTF-8 als Encoding verwendet wird.
Top100 Editor deaktiviert, da er seit mehreren Versionen nicht mehr funktioniert.Muss detailliert modernisiert werden.
top100 und addto100 funktionieren eingeschränkt und bleiben daher erhalten.
Admin User Edit Maske: Port wurde beim Verbindungstest nicht mit übergeben.
Die Signatur des Verkäufers ebenfalls als Variable <%salesman_signature%> zur Verfügung stellen.
1. Salesman-Daten wurden nicht in $form eingetragen, weil die User-Klasse nur noch einen Parameter erwartet.2. Kosmetik.
Vereinfachtes Template, und alten Code entfernt.
AJAX-Antworten nicht direkt $cgi->header() ausgeben, sondern über eine Funktion, die auch das Charset ausgibt.
JavaScript und Umlaute in UTF-8-Codierung funktioniert nicht mit der JavaScript-Funktion "encode()", deshalb "encodeURIComponent()" benutzen.
Debugcode... Stupid me!
Anführungszeichen nicht doppelt quoten.