InvoiceItem, OrderItem, DeliveryOrderItem: diverse Fremdschlüssel eingeführt
Im Auftrags-/Angebotsbericht richtig nach Verkäufer sortieren.
Vorher wurde auch hier nach Bearbeiter sortiert.
Klammer um OR bei Filtern nach Projektnummer.
Fixt #2092
Bug 1946 - Rundungsberechnung bei Rabattbeträgen verbessert
Druckvariablenarrays (no)?discount_sub_nofmt für Einträge ohne Zwischensummenflag gefixt
Anzeige von Kundennummmer in Verkauf
In Verkauf-Berichte-Aufträge/Angebote/Lieferscheine/Rechnungenkann man jetzt auch die Kundennummer in den Bericht mit aufnehmen.
Unnötiges CVar->get_configs entfernt.
Fixes für das "my $var if $cond;" pattern.
Merge branch 'master' of vc.linet-services.de:public/lx-office-erp
typ customer korrekt ans template system übergeben
Leerzeichen am Ende bei curr(ency) entfernen.
In der Datenbank werden f. Währungen drei Zeichen gespeichert. EineWährung mit zwei Zeichen hat dann ein Leerzeichen am Ende und derVergleich in den Maske schlägt fehl, wenn es dort bleibt.
Listenpreis wird beim Laden von Verkaufsformularen gesetzt.
Vorher war der immer 0. Jetzt wird aus parts gesetzt. In denTabellen der Verkaufsdokumente ist er nicht drin, wird dortalso nicht gespeichert.
Warnung "no statement is executing" vermeiden
Restliche dbconnects in OE entfernt.
Kosmetik
_raw entfehrnt
Variablenwerweiterung nun _nofmt statt _num
initial raw_numbers
add subtotal_num, sellprice_num
$form->get_standard_dbh nicht von Rose geöffnetes Datenbankhandle nutzen lassen
Rose setzt Datenbankhandle auf autocommit. Die Semantik vonget_standard_dbh ist aber, dass autocommit aus ist und die Funktionenselber ein Commit machen.
Globale Variablen für Systemeinstellungen und Features nach %::lx_office_conf verschoben
Betroffen sind: $webdav $vertreter $lizenzen $show_best_before $parts_show_image $parts_image_css $parts_listing_images $eur $dbcharset $language
Globale Variablen $::userspath, $::templates, $::membersfile nach %::lx_office_conf verschoben
Felder end_date, terminated, extend_automatically_by ergänzt
Bearbeiten der Konfiguration für wiederkehrende Rechnungen implementiert
Zzgl. der Suchfunktionserweiterung bei Aufträgen
Revert von 55e9890a und 1465da30
Hintergrund. Wird eine Rechnung gebucht, bei der eine Auftragsnummberangegeben war, so werden beim erneuten Aufrufen der Rechnung durchdiesen Code gewisse sehr wichtige Felder (Zahlungsbedingungen,Steuerzone, Auftragsdatum etc) mit den Werten aus dem Auftrag...
ein connect_no_auto gegen standard_dbh ersetzt
EK-Preis editierbar gemacht und marge_total repariert
Der EK-Preis ist jetzt in Angebot/Auftrag/Rechnung editierbar.
Dies ist praktisch für Händler/Wiederverkäufer, bei denen sich der EK-Preishäufig ändert, und es sich nicht lohnt, diesen in den Stammdaten zu pflegen....
Projektbeschreibung als Variable in Vorlagen(globalprojectdescription und projectdescription)
Benutzerverwaltung im Bereich Verkauf > Ansicht nur auf eigene Verkaufsdokumente erweitert. Standardmässig bleibt alles wie vorher (Db-Upgrade-Skript was dieses Recht für alle vorhandenen Gruppen setzt) Sobald das Recht für die Gruppe nicht gesetzt wird, wird entsprechend bei den Verkaufsberichten auth>assert('sales_all_edit') auf employee_id geprüft. Bei Stammdaten->Kunden->Lieferung wird zusätzlich auf dieses Recht geprüft
Merge branch 'ir_templates'
Conflicts: SL/OP.pm
Keine Tabs in SL/* Modulen.
Machen das Leben nur schwer für Leute die zufällig nicht die Tabbreite eingestellt haben wie der Autor.
Dokumentation einheitlich in den Footer verschoben, Datei mit END abgeschlossen (beschleunigt parsen), und POD Fehler gefixt.
Änderungen zum vorherigen Commit, um die Funktionen rouster zu machen.
Kundennummer in Auftragssuche in vcnumber umbenannt um Lieferantenaufträge mit abzudecken.
Fix für Bugs 1264 und 1266.
Suche nach Verkäufer in Mahnungen und Anzeige von Kundennummer in der Auftragssuche.
und die restlichen .pm Module.
Bugfix: Auftragssuche: Bei niedrigen vclimit muss nach projectNUMMER und nicht nach id gesucht werden.
Fix für Bug 1108
Bugfix: selectall_HASHREF!
sub retrieve_simple. (ersatz für OE->retrieve)
strict Sanity
Conflicts:
SL/AM.pm SL/OE.pm
2 Felder noch on die Auftragssuche übernommen.
Beim Ausdrucken von Angeboten/Aufträgen nicht die Lieferanteninformationen der Artikel gleich nach dem Auslesen wieder überschreiben.
Debugcode entfernt.
Ausweitung der benutzerdefinierten Variablen für Waren/Dienstleistungen/Erzeugnisse auf Anzeige/Modifikation in Angeboten/Aufträgen.
Templatebasierte OE Suche übernommen.
Die Funktionen in Template.pm zum Ersetzen von Schleifenvariablen so erweitert, dass die Schleifenarrays auch in $form->{TEMPLATE_ARRAYS} gesucht werden. Weiterhin die Druckmechanismen in IS.pm, OE.pm und DN.pm so angepasst, dass sie diese Unterebene benutzen, um die Positionswerte zu speichern. Dadurch wird verhindert, dass Elemente direkt in $form sowohl als Skalar als auch als Array benutzt werden (z.B. $form->{reqdate} = ... und push @{ $form->{reqdate} }, ...).
sicherer Algorithmus.
Can't use an undefined value as a HASH reference at SL/OE.pm line 942 - @sven Meine Mandantendaten haben keine Abteilung, am besten gleich pruefen. jan
Patch für Bug 878.
Department jetzt in sämtlichen OE Masken als department_id und department verfügbar.
Whitespace
Berichte->Aufträge nach Lieferdatum auswählen
Zusätzlich zu dem Auftragsdatum kann in der Berichtsmaske für Aufträge nun auch das Lieferdatum eingegrenzt werden.
Die Warengruppe beim Ausdruck der Vorlage zur Verfügung stellen.
Spalte 'ordnumber' darf nicht NULL sein.
Bei verschachtelten Schleifen in der inneren Schleife eine andere Schleifenvariable als in der äußeren Schleife benutzen. Bei Perl 5.10 wird ansonsten unter der Bedingung "äußere Schleifenvariable mit my deklariert, innere hingegen ohne my" Speicher korrumpiert, und es trägt zum einfacheren Verständnis bei. Fix für Bug 839.
Einige Variablen der Warenstammdaten auch beim Ausdruck zur Verfügung stellen: ean, make, model.
Bei Berechnung des absoluten Rabattes den Rundungsfehler mit einbeziehen.
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.
TODO-Liste: Preisanfragen und Angebote richtig anzeigen.
Beim Ausdruck von Angeboten / Anfragen / Aufträgen / Rechnungen wurde der Rabatt ohne Nachkommastellen berechnet und dargestellt.
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.
Bei Wandlung von Angeboten/Preisanfragen in Aufträge erst beim Speichern der Aufträge das Angebot/die Preisanfrage schließen.
Die Sortierung soll standardmäßig aufsteigend erfolgen.
Sortierung in Berichten über Angebote / Aufträge / Presianfragen auch auf- und absteigbar sortierbar gemacht.
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.
Bei Aufträgen, Angeboten, Preisanfragen das Lieferdatum mit dem nächsten Werktag und nicht dem heutigen Datum vorbelegen.
Eine ausgewählte Währung nicht mit der Standardwährung überschreiben.
Wechselkurse.
Zum einen den unsaeglichen Algorithmus zum setzen von exchangerate und forex im ganzen Porgramm geaendert.Dann einen Bug mit der Angzeige der Wechselkurseingabe in oe.pl gefixt.Ausserdem Bug 666 gefixt.
Bugfix (böse klammer zuviel).
Ausserdem Department Dropdownbox ausgelagert ins template.
Lagerverwaltung implementiert.
Zwei neue Features:1. Beliebige Notizen für Kunden und Lieferanten können angelegt werden. Solche Notizen können auf Wiedervorlage gelegt werden, was durch 2. implementiert ist.2. Einkaufs- und Verkaufsbelege können auf Wiedervorlage gelegt werden. Wiedervorlagen können für beliebige Nutzer erstellt werden (Aufgabe an andere Nutzer deligieren). Anstehende Wiedervorlagen und abgelaufene Angebote werden auf der Startseite in einer Aufgabenliste angezeigt.
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....
Kosmetik.
Quoten von allen in regulären Ausdrücken verwendeten Variablen, die direkt oder indirekt von Benutzereingaben stammen können. Fix für Bug 302.
Verkauf->Berichte: Auftrag und Angebot Suche nach Salesman implementiert.
Fehlendes "return".
Einheitliche Benennung der Margen-Formular-Variablen analog zu den Namen der Spalten in der Datenbank.
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....
Kosmetik/Vereinfachung
Kosmetikmerge aus r5130
Beim Versenden von Emails wird der Text etc wieder in intnotes gespeichert. Fix für Bug 713.
Ganz böse Verwechselung mit 't' und 'f' bzw. '1' und '0', die zur Verwechslung von Angeboten und Aufträgen geführt hat. Kam aus rev 2698.
Bei boolean-Spalten lieber 't' und 'f' als 1 und 0 übergeben, weil wohl einige DBD::Pg-Versionen damit Probleme haben. Außerdem einige Integerwerte mit 0 initialisieren. Hoffentlich ein Bugfix für 703.
Erweiterung um Anzeige des Ertrages im Verkauf
Spalte "ordnumber" oder "quonumber" muss eindeutig sein.
Beim Speichern von Angeboten etc den Bearbeiter nicht aus $form->{employee} ableiten, weil die Drop-Down-Box jetzt $form->{employee_id} heißt.
Das Filtern von Angebots-/Auftrags-/Anfragenberichten nach dem Bearbeiter ermöglicht.
Bei Kundenangeboten, Kundenaufträgen, Lieferantenbestellungen und Lieferantenanfragen ein Feld "Vorgangsbezeichnung" implementiert.
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).
Doppelte Zeilen entfernt.
Nettobeträge bei taxincluded auf Druckvorschau angepasst (Bug 576)
OE.pm: Keine Daten aus $form direkt in SQL-Anfragen einsetzen und statt dessen parametrisierte Anfragen benutzen. Außerdem einen SQL-Fehler behoben, wenn mehrere Auftrage zu einem zusammengefasst werden. Behebt Bug #609.
Speichern und Anzeigen eines Verkäufers bei Verkaufsmasken.
Bei "Als Neu Speichern" nur dann eine neue Anfrage-/Auftragsnummer vergeben, wenn der Benutzer die bisherige nicht manuell verändert hat; ansonsten die veränderte übernehmen. Fix für Bug 598.
Debugcode
Fix für r1967 (und r2002) : Steueranzeige unterhalb von Rechnungen, Angeboten, etc. an die neuen Taxkeys angepasst.Der Steuersatz wird nicht mehr in der 'description' redundant gefuehrt, sondern aus der'rate' generiert. Getestet bei den EingabemaskenVerkauf: Rechnung, Gutschrift, Auftrag, Angebot...
Beim Drucken doch nicht die Arrays initialisieren. Momentan werden nämlich in $form unter dem selben Key sowohl Skalare als auch Arrays abgelegt (beispielsweise reqdate). Das Skalar fliegt durch die Initialisierung des Arrays hingegen raus.
Ja, das ist sehr sehr unsauber, stammt aber noch aus alten Tagen. Muss auch erst einmal so bleiben, bis ich eine geeignete Lösung habe, wie man das sauber trennt, ohne gleich wieder alle Variablen in den Vorlagen umzubenennen.
Die Variablen aus %myconfig beim Drucken nicht einfach so nach $form kopieren -- dafür gibt es später ja employee_* in Form::parse_template(). Zusätzlich einige weitere Kundenvariablen als customer* zur Verfügung stellen (analog zu den Lieferantenvariablen).
Beim Drucken von Einkaufs- und Verkaufsbelegen die Projektnummern aus der Datenbank holen. Liste der Arrays, die in order_details/invoice_details aufgebaut werden, zentral angelegt, sodass bei "leeren" Zeilen auch wirklich alle bestückt werden können, ohne die Liste an drei Orten bearbeiten zu müssen.
Bei Berichtsfunktion nach Projekten suchen und sich Projekte ausgeben lassen (bisher nur OE; IR und IS folgen).