Die Funktion Form::parse_html_template2() in Form::parse_html_template() umbenannt (letztere wurde in Revision 2923 entfernt).
Umstellung weiterer HTML-Vorlagen aus templates/webpages/generic von HTML::Template auf Template.
Umstellung einiger Vorlagen aus templates/webpages/generic von HTML::Template auf Template. Die Vorlagen calculate_alu* werden gar nicht benutzt und deswegen entfernt.
Diese Patch ist ein Merge der Revisionen2866, 5349, 5365, 5370, 5408, 5413, 5470, 5473, 5475, 5519, 5520, 5521, 5524, 5526, 5591, 5618, 5622, 5814, 5881, 5882 und 5961in das Unstable.
Hintergrund ist die Auslagerung der OE-Masken, das heisst aller Masken, die fuer Auftraege, Angebote und teilweise Rechnungen zustaendig sind....
Anzeige von LP und EK in Lieferantenbestellungen
Quoten von allen in regulären Ausdrücken verwendeten Variablen, die direkt oder indirekt von Benutzereingaben stammen können. Fix für Bug 302.
Bei der Umstellung der Funktionsparameter auf Nicht-Referenzen eine Stelle vergessen.
Die Argumente für print_options() als Hash und nicht als Hash-Referenz übergeben. Weitere Optionen zum Verstecken bestimmter Drop-Down-Boxen eingebaut.
Einheitliche Benennung der Margen-Formular-Variablen analog zu den Namen der Spalten in der Datenbank.
Artikelauswahl in Einkaufs- und Verkaufsmasken: bei mehreren gefundenen Artikeln den Preisfaktor berücksichtigen und den Verkaufs-/Einkaufspreis dadurch teilen.
Preisfatkoren implementiert.
Bugfix Rabattberechnung: Berechnung so umgestellt, dass der Rabatt von der Zeilensumme genommen wird und nicht vom Einzelpreis (Rundung). Fix für Bug 325.Bugfix Zwischensummen: Bei Belegen aus OE.pm (Angebote, Aufträge, Anfragen) wurde die Variable <%runningnumber%> innerhalb eines Zwischensummenblocks nicht "1.1, 1.2, 1.3" etc hochgezählt, sondern normal "1, 2, 3" etc....
Einige Browser (Opera) mögen es nicht, wenn "checked" bei Checkboxen in Anführungszeichen steht.
Sprache wurde nicht korrekt ausgewaehlt
1. Wenn ein Artikel bei Einkauf/Verkauf nicht gefunden und die Maske "Dieser Artikel ist nicht in der Datenbank" angezeigt wird, so werden die eingegebene Artikelnummer, Beschreibung, Einheit und Verkaufspreis wieder in die "Ware erfassen"-Maske übernommen. Fix für Bug 721....
Beim Versenden per Email eine anständige Überschrift anzeigen und nicht "email oe".
Konsistenz zwischen Email-Betreff-Zeilen und den Namen der Anhänge.
Beim Versenden von Emails wird der Text etc wieder in intnotes gespeichert. Fix für Bug 713.
HTML-Formatierung berichtig.
Beim "Erneuern" beim Erfassen von Dienstleistungen auch über "check_form" gehen, damit die Preisgruppen und Zahlungskonditionen richtig ausgefüllt werden. Fix für Bug 685.
Die Margen nur bei Verkaufsmasken anzeigen, und auch nur in Zeilen, in denen schon ein Artikel ausgewählt wurde.
Bei Gutschriften muss der Ertrag negativ sein.
Kosmetik.
Erweiterung um Anzeige des Ertrages im Verkauf
Der letzte Einkauspreis wurde nicht geladen und daher auch keine MArgenberechnung
Weitere Feinheiten zum Patch "Verkaeufer und Bearbeiter wurden beim Umwandeln nicht uebernommen"
Beim Verschicken von Belegen per Email darf das Vorlagenkürzel eines eventuell eingestellten Druckers nicht an den Dateinamen der Vorlage angehängt werden.
Mahnwesen:1. Neues Feature: Automatisches Erzeugen von Debitorenrechnungen über die Mahngebühren und -zinsen. Diese werden ebenfalls als PDFs ausgegeben.2. Neues Feature: Beim Bericht über aktive Mahnungen ermöglichen, dass mehrere Mahnungen und die eventuell dazu erstellen Debitorenrechnungen auf einmal ausgedruckt werden können....
Und noch mehr Optionen.
Mehr Optionen für print_options(), um bestimmte Einträge zu deaktivieren.
$options ist eine Hashreferenz, kein Hash.
Bei print_options() die Parameterübergabe umgestellt, sodass der Aufrufer das Verhalten etwas genauer beeinflussen kann.
Noch ein Schreibfehler.
Schreibfehler in Variable.
Weitere potenzielle Zahlen im Ausgabeformat umformatieren. Fix für Bug 596.
$form->parse_template() sowie Template.pm benutzen $form->{OUT} und $form->{tmpfile} direkt in Systemkommandos. Deswegen muss sichergestellt sein, dass diese Variablen nur mit geprüften Werten gefüllt werden.
Filehandles lokal deklarieren. Kosmetik. In Mailer.pm open() nur mit festgelegtem Argument aufrufen.
Attachment Filenmaes werden nun von einer SL/Form.pm Objektfunktion generiert
Variablennamen etwas verständlicher gemacht. Zusätzlich einen Bug behoben, der dafür sorgte, dass die nicht zu versteckenden Felder nicht aussortiert wurden: $hash{@array}=... ist falsch, richtig muss es @hash{@array}=... heißen.
zurücksetzen der variable
$form->{rowcount} muß in validate_itmes auf 0 überprüfen, da vorherige Überprüfungen der Zeilen schon die nicht ausgefüllte abschneiden.
edit_e_mail auf templates umgestellt
$form->{path} entfernt und hardcodiert auf bin/mozilla gesetzt.Vorlagen sind nicht betroffen, aber locales.pl schon.
$form->{snumber} durch $form->{snumbers} ersetzt, da dies eigentlich so vorgesehen war. :/
history_search auf Buchungsnummern etcpp angepasst, so dass man auch gelöschte Daten in der Historie suchen kann.
Anpassungen innerhalb der Variablenübergabe:$form->{snumbers} muß beim speichern der history gesetzt werden (z.B. $form->{snumbers} = qq|invnumber_| . $form->{invnumber}; )
Eine Funktion zum "sicheren" Aufrufen von Unterfunktionen eingebaut, damit &{ $form->{nextsub} }(); nicht ungeprüft aufgerufen werden muss.
Anpassung an check_right_number_format und check_right_date_format aus der common.js
$form->{printers} ist ein Array, und kein Hash. Außerdem die Drucker-Drop-Down-Box nur dann anzeigen, wenn Drucker angelegt wurden.
Nach dem Auslagern der Druckoptionen in eigene HTML-Vorlagen wurden nach dem Drucken eines Beleges die Druckoptionen nicht wieder angezeigt. Grund ist, dass die Funktion print_options() meist in der Form "&print_options;" aufgerufen wird. Wenn die Klammern nicht angegeben werden, dann übergibt Perl aber die Argumente, die der aufrufenden Funktion übergeben wurden, weiter an die aufgerufene Funktion. print_options() benutzt die Parameter aber, um festzulegen, ob die Druckoptionen gleich mit print() ausgegeben oder nur mit "return" an die aufrufende Funktion zurückgegeben werden.
Schreibfehler.
Gequotete Werte auch in Anführungszeichen ausgeben.
Fehler Widergutmachung (cgi parameter usw)
Mehr Umformatierungen.
Bessere Einrückung. Kleinen Fehler beseitigt, der letztens durch Umstellung auf $cgi->hidden() reingekommen ist (selected_unit_* muss als unit_old_* übergeben werden).
Bei der Drop-Down-Box für die Drucker wieder den Druckernamen anzeigen.
Beim Verschicken von Einkaufs- und Verkaufsbelegen per Email nur dann speichern, wenn der Beleg noch gar nicht gespeichert war. Dann auch auf geparste/nicht geparste Zahlen achten. Fix für Bug 619.
Bei Einkaufs- und Verkaufsmasken ermöglichen, dass kein Ansprechpartner ausgewählt wird.
syntax in hidden tags w3c conform gestalltet (bug 272)
Bugfix: Erzeugnisse muessen ihre Einheiten aus dimensions suchen.
Printer_id kann 0 sein
template arrays noch leermachen
io.pl print_options auf templateing umgeschireben.
Soweit ich weiss ist das eine der ersten frontend Funktionen aus SQL Ledger die auf templating umgeschrieben wurde.Funktionalitaet wurde eins zu eins erhalten, die einzige gewollte Aenderung betrifft die Moeglichkeit...
Beim Ausdruck die Variablen für den Verkäufer (salesman_*) füllen.
is.pl->post entwirrt.emails speichern/buchen nun rechnungen/auftraege vor dem aufrufen der maske
Eine Variable $qty_readonly gibt es ansonsten nicht.
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.
Loeschen von Drafts flexibler.Die Checkbos bestimmt ob ein Draft geloescht wird, nicht mehr automatisch beim laden.
Historie eingefügt
Anzeige und Auswahl von Projektnummern bei Einkaufs- und Verkaufsbelegen nur noch per Drop-Down-Box.
Mehr Codeteile entfernt, die zur Vorbereitung von Mehrlagerfähigkeit in SQL-Ledger gedient haben und nie benutzt wurden.
Große Codeteile entfernt, die zur Vorbereitung von Mehrlagerfähigkeit in SQL-Ledger gedient haben und nie benutzt wurden.
Bugfixes und Code-Reorganisierung beim "Webdav"-Feature. Beim Anlegen von Verzeichnissen werden auch eventuell fehlende Elternverzeichnisse angelegt. Bei jedem Neuaufbau der Maske wird die Liste der vorhandenen Dateien aktualisiert, nicht nur beim Speichern & Laden.
Mehr quoten.
Emailversand: Anhangnamen auch bei Gutschriften vorbelegen.
Debugmeldungen...
Bei der Ausgabe der oldprojectnumber_$i den aktuellen Wert benutzen, damit der Rest des Programmes den nicht manuell setzen muss.
Beim Drucken von Proforma-Rechnungen aus der Rechnungsmaske heraus muss die Variable $form->{"invdate"} und nicht $form->{"transdate"} benutzt werden. Fix für Bug 525.
Beim Umwandeln aus einer Rechnung in einen Auftrag etc die $locale neu anlegen und die neu benötigten Übersetzungen laden. Fix für Bug 535.
Uebersetzung Date missing eingefuegt. (Vgl. auch Bug 525: hiermit NICHT geloest)
Wenn ein Artikel über die Artikelauswahl ausgewählt wird, so müssen auch die Bemerkungen abgeholt werden.
Debugcode entfernt.
Benutzereinstellungen: Neue Optionen für den Standardausgabekanal und den Standarddrucker hinzugefügt.
Beim "Erneuern" den vorher eingestellten Drucker auch weiterhin eingestellt lassen.
Möglichkeit eingebaut, beim Versenden von Emails den Namen für den Dateianhang selber festzulegen. Er ist mit "Vorgangstyp_Vorgangsnummer.ext" vorbelegt, also z.B. "Rechnung_15.pdf". Attribute in HTML-Tags und Werte gequotet.
Bei Lieferantenbestellungen die Spalte "Lagereingang" nennen, nicht "Lagerausgang".
Bei der Formularausgabe einige weitere Werte quoten.
Wenn eine Funktion ohne Klammern aufgerufen wird, so werden die der aktuellen Funktion übergebenen Parameter an die Unterfunktion weitergereicht. Das führt hier aber dazu, dass bei den Kunden-/Lieferantendetails Argumente übergeben werden, die als Liste der "gewollten Variablen" interpretiert werden. Also werden customer_details() / vendor_details() falsch aufgerufen, ergo es fehlen Daten.
Bugfix für einen meiner letzten Commits: Beim Anklicken von "Lieferadresse" blieb die linke Seite (Rechnungsadresse) leer.
Einkaufs-/Verkausfmasken: Wenn man auf "Liefeadresse" drückt, dann werden jetzt nur noch die Lieferadressdaten vom Kunden/Lieferanten aus der Datenbank geholt. Damit werden die bisher eingegebenen Bemerkungen in der Maske nicht mehr überschrieben, und die internen Bemerkungen werden nicht mehr in die normalen Bemerkungen kopiert. Fix für Bug 507.
Das Verhalten der Checkbox "Formulardetails anzeigen/verstecken" kann in den Benutzereinstellungen vorbelegt werden.
Text für die Checkbox als <label> ausgeben, damit man auch auf den Text klicken kann.
In den Einkaufs- und Verkaufsmasken eine Checkbox "Details anzeigen" eingefügt, mit der die jeweils zweite Positionszeile angezeigt bzw. versteckt werden kann.
Email-Funktion: Wenn bei den Kundendaten keine Emailadresse angegeben, dafür aber ein Ansprechpartner ausgewählt ist, dann wird die Emailadresse des Ansprechpartners automatisch eingetragen.
Umwandeln in Angebot und Auftrag: prepare_order erwartet, dass die Zahlen bereits geparst sind.
Das Vorlagenformat, das beim Aufrufen der Masken vorausgewählt ist, kann jetzt in den Benutzereinstellungen festgelegt werden.
Automatisches Setzes des Faelligkeitsdatums nach Zahlungsbedingung
Bei der Auswahl von Artikeln wird die Einheit mit angezeigt
Einige Variablen wurden umbenannt und müssen auch an anderer Stelle behandelt werden.