Einkaufspreis parsen bei Erzeugen eines Auftrags aus Angebot.
Einkaufspreis nicht formatieren bei Erzeugen eines Lieferantenauftrags aus Kundenauftrag
Ist vermutlich kaputt gegangen, als der EK editierbar in die Auftragsmaske kam undsomit dort schon formatiert drin stand.
Fixt #2333.
Seriennummer statt Charge
kleiner Fix zu 2e4e2ba959344a6db630b5b9e9c6f8b93c666fc2
Lieferscheinbericht: Suchmöglichkeit nach Seriennummer
Zeitformat einstellbar machen
DateTime::to_kivitendo_time: Formatierung eines DateTimes als Zeit
Revert "Neue Verkaufsberichtvariante mit Umsatz-Sortierung"
This reverts commit 5ef8b31028dada9eff3c317fe92c0a9b05ea41a4.
Bevor mit das jemand um die Ohren haut, das sollte eigentlich nichtcommitted werden. Kommt vielleicht in Zukunft mal rein.
Typo in Kundendaten - Cc wurde mit Bcc überschrieben
In input_tag für cc richtige Variable übergeben.
Merge branch 'master' of github.com:kivitendo/kivitendo-erp
Row level lock statt table level lock verwenden.
Betrifft #2368.
sub_module für Lieferscheine bei benutzerdef. Variablen richtig benannt.
Es heißt delivery_order_items (mit s).
CustomVariables-Helper richtigen Accessor für überladenen Cvars machen lassen.
Schreibfehler korrigiert / andere Formulierung.
Kleine Schreibfehler in der Doku verbessert.
Preisinformationen erst laden, wenn der Tab aktiv wird.
Reduziert den Request load weiter
SellPriceInformation: Layout nicht mit generieren.
Spart 10 Requests und umgeht einen interessanten Browserbug - Javascripte die aus ajax Request html eingelesen werden, werden vom Broweser mit einer zufälligen Nummer versehen um ein 304 zu vermeiden. Das hat gerade bei schwachen Leitungen zu massiv unnötigen Requests geführt.
Neue Verkaufsberichtvariante mit Umsatz-Sortierung
Es gibt einen neuen Menüeintrag "Verkaufsbericht Top", wo man nach dengleichen Kategorien wie beim normalen Verkaufsbericht gruppieren kann,aber wo man das Ergebnis nach Umsatz, Marge, Menge oder Gewicht...
Rabatt in Kunden-/Lieferanten-Bericht mit aufnehmen können.
Kosmetik: useless code removal
Einträge in employee aus User->login heraus aktualisieren
Vor der Mandanteneinführung war User->login bereits hierfürverantwortlich. Dann wurde diese Funktionalität in denLogin-Controller verschoben. Allerdings kehrt die Ausführung in exakteinem Fall nicht zum Logincontroller zurück: wenn noch...
Rechte: select_name/name_selected muss auch gehen, wenn nur das Lieferscheinrecht gesetzt ist.
Keine Datenbankhandle aufmachen und dann nicht zumachen.
Teilfix für #2349
AM.pm::get_warehouse: keinen teuren Cross Join
Ein Cross Join wird nicht benötigt, weil nur die Existenz einer Zeilein mind. einer der beiden relevanten Tabellen interessant ist. Dasauch entsprechend coden.
Fixt #2359.
Filtern nach Kunden-/Lieferantentyp bei Angeboten u. Aufträgen
Tippfehler bei den reservierten Methoden. save_ sollte natürlich save sein.
Wozu haben wir tests für sowas?
Form::parse_template: nur dann in WebDAV-Ordner kopieren, wenn Typ bekannt ist
Soll z.B. nicht für GuV oder BWA ziehen. Fixt #2352.
Form::parse_template: "Content-disposition: attachment"-Header nur ausgeben, wenn Attachmentname bekannt
Fixt #2351.
kleinen Typo gefixt.
JS-Setup: kivi.reinit_widgets() nutzen und dort Controls nur einmalig initialisieren
Partpicker: auch beim JavaScript-Menü die CSS-Klassen für die 16x16-Icons laden
Ansprechpersonensuche auf neuen CustomerVendor-Controller verlinken lassen
CustomerVendor: redirect über Controller::redirect_to
Kosmetik: Leerzeichen am Zeilenende entfernt.
ClientJS: neue Funktionen "run()", "run_once_for()"; Dokumentation
BackgroundJobs: "speichern und ausführen" für neue Jobs gefixt
SL::Controller::Base::send_file: Unterstützung zum Senden von Skalarinhalten
$file_name kann nun auch eine Skalarreferenz sein. In diesem Fallewird der referenzierte Inhalt direkt geschickt.
Wenn es ein Skalar ist, wird es wie vorher auch als Dateiname interpretiert.
Tests: In Datenbanksetup-Test $::instance_conf initialisieren
Customer-/Vendor-Models: Funktionen "is_customer"/"is_vendor" zur einfachen Unterscheidung
Template: as_list-Methode zum Forçieren vom Listenkontext
Typo fix
ClientJS: AJAX-Form-Submit mit jQuery-Form-Plugin
LXDebug::dump_object zum Dumpen von den Spalten von RDBO-Instanzen
Dumpt keine Datenbankhandle, keine Relationships
Recht für Debitoren- und Kreditorenbuchungen verbessert
auf Hinweis von Sven hin:
statt $::auth->check_right($form->{login}, $right) assert benutzen: $::auth->assert($right, 1)$form lässt sich leicht manipulieren.
Wiederkehrende Rechnungen: nicht '_email' in Vorlagendateinamen hinzufügenn
In Form::prepare_for_printing wurde '_email' immer an den Dateinamenangehängt, sofern es ein solches Template gibt (alsoz.B. 'invoice_email.tex') -- egal, wohin letztlich ausgegeben werden...
Fehlende Locales für CRM-Menü
CustomerVendor: Ändern von Wiedervorlagen erlauben
CustomerVendor: bei Wiedervorlagen FollowUpLinks erstellen
Wiedervorlagen: Links zu Kunden/Lieferanten gefixt
Merge branch 'master' of https://github.com/kivitendo/kivitendo-erp
Recht für EK-/VK-Rechnungen funktionierte nicht
Man konnte sich bisher, auch ohne das Recht zu besitzen, eine Listevon Kreditoren-/Debitorenbelegen erstellen, indem man folgenden Linkaufgerufen hat:
ar.pl?action=search (dann auf weiter)oder direkt:ar.pl?action=ar_transactions...
Neue Rechte für Anzeige der Debitoren- und Kreditorenbuchungen
Damit kann man in den Berichten für Einkaufs- und Verkaufsrechnungen dieDebitoren- und Kreditorenbuchungen herausfiltern, so daß z.B. dieEinkäufer nicht mehr Kreditorenbuchungen aus dem Fibu-Bereich sehen...
Meldungen beim Erstellen von Wiedervorlagen im Kunden/Lieferanten
Backgroundjob-History-Liste: Filterfunktion
ParseFilter: neuer Operator 'eq_ignore_empty'
Ignoriert den Filter, wenn er leer ist. Andernfalls wird mit =verglichen.
CRM-Tabellen in die Blacklist aufnehmen
Dateinamen im webdav aus utf8 decoden. Nicht NFC normalisieren, die müssen hinterher als URLs funktionieren.
Im Filtered Helper den callback richtig zusammenbauen.
behebt #2332
Kosmetik: Kopieroperationen zusammenfassen.
flatten_to_form: auch Listenpreis und Warengruppe berücksichtigen.
jqModal-Dialoge durch jQuery-UI-Dialoge ersetzen
kivi.popup_dialog: auf jQuery UI basierende Popupdialoge
ClientJS: Argumente nur dann säubern, wenn sie richtigen Typ haben
- Stringifizierung nur für Instanzen von SL::Presenter::EscapedText- Leading whitespace trimming nur für Skalare
Hintergrund ist, dass manche Funktionen komplexere Strukturen alsParameter übergeben bekommen, namentlich jstree:create_node, das ein...
Typos korrigiert
Obwohl die super zum Greppen waren.
ClientJS: Leading Whitespace von allen Argumenten tilgen, nicht nur vom ersten
ClientJS: Funktionen zum Hinzufügen und Entfernen generischer Eventhandler
ClientJS-Erzeugung: Unterstützung für <ARGn> mit "n" eine beliebige Ziffer
kivi.js: Funktion zum Auffinden von Funktionen über ihren Namen
Funktioniert sowohl mit globalen Funktionen als auch mit solchen inNamensräumen (Objekten):
var func = kivi.get_function_by_name("kivi.t8");
ClientJS: Daten bei AJAX-Submits als POST-Content schicken, nicht an die URL dran
Nicht explizit Transaktion starten
$::form->get_standard_dbh liefert ein Handle, das AutoCommits aus hat$::form->und daher eh immer explizit in einer Transaktion$::form->steckt. Vermeidet zusätzlich eine Warnung.
Ansprechperson und Lieferadresse nach Speichern von Kunden wiederöffnen
Erste Tests zum PriceTaxCalculator
$::instance_conf benötigt kein explizites init mehr
Data::Dumper-Format-Variablen in Tests setzen
Neue Kontoverbindung für FA Bad Homburg
Fixt #2315.
Initialer Focus in OE-Masken auf Kunden-/Lieferanteninput
Lagerplätze anlegen: Nummerierung mit Anzahl existierender Lagerplätze starten
...und nicht mit 1, weil ansonsten beim mehrfachen Anlegen die Nummerndoppelt und dreifach vergeben werden. Fixt #2325.
Artikelstammdatenmaske: bei "Erneuern" Fließkommazahlen exakt einmal parsen
Fixt #2341.
steuerfilterung.pl: mit "keine Steuer" zurecht kommen
steuerfilterung.pl: SQL injection verhindern
Perl-DB-Upgradescripte: nicht manuell Datenbankhandle committen
steuerfilterung.pl: Steuersätze nicht runden
Zum Einen verwendet z.B. der Schweizer Kontenrahmen Steuern mitNachkommastellen, und zum Anderen ist "tax.rate" eine Spalte vom Typ"numeric", sodass die erhaltenen Werte eh keinFließkomma-Rundungsproblem haben....
steuerfilterung.pl: nicht manuell früh committen, um Mehrfachausführung zu ermöglichen
Z.B. wenn der Benutzer den Zurück-Button benutzt oder so. Das Commitwird von kivitendo später eh ausgeführt, sofern das Script erfolgreichwar.
Doku-Update zu unterstützten Distributionsversionen
Fixt #2339.
Dokumentationsupdates
Bessere doku für SL/InstallationCheck.pm
InstallationCheck: Parameter dist_name wenn Modulname != Distributionsname
Beispiel: name = LWP und dist_name = libwww-perl
Falschen Methodennamen gefixt
Fehlende Modulabhängigkeiten für Testprozess ergänzt
Fehlende Übersetzungen ergänzt, nicht mehr benötigte entfernt
class listrow an die Verwendung von [% loop.count % 2 %] angepasst
Preisgruppenanzeige in der Warenmaske mit zeilenweise alternierender Farbe
Kein Prompt, wenn Benutzer im Adminbereich "als neu" gespeichert wird
fixt #2340
assign_attribute: reservierte Methoden ignorieren.