CsvImport/Base: single-dbh
Achtung: der hier schreibt ein for {} continue um in deutlichkomplexeres Offset Handling. Muss extra getestet werden.
CustomVariableConfig: single-dbh
CsvImport: mehr single-dbh
CsvImport: single-dbh
Auftrags-Controller: lastcost nur vom Artikel nehmen, wenn die Position neu ist
Ansonsten werden die EKs von schon in der DB gespeicherten Aufträgen immer mitdenen des Artikels überschrieben.
siehe auch commit 370d43e2028e8a450055048f1354da48163d3954"Order Controller - lastcost von Positionen mit speichern"...
CSV-Import Artikel: Einige Erweiterungen
CSV-Import von Artikel hat nun für existierende Artikel folgende Optionen:
1. Eigenschaften von existierenden Einträgen aktualisieren 2. Eigenschaften von existierenden Artikeln aktualisieren / Nicht vorhandene überspringen...
Geierlein: alter Elsterexport überarbeitet
Generierung der Params in ODGeierlein
Neuer Controller für AJAX RequestVerallgemeinern (Teile aus ustva.pl nach SL/USTVA.pm
elster_format angepasst
Die Formate der Steuernummern für Baden-Württemberg und Rheinland-Pfalz...
Merge branch 'f-use-with_transaction-instead-of-do_transaction'
»with_transaction« anstelle von »do_transaction« verwenden
Es sollte so selten wie möglich »do_transaction« verwndet werden, damitman sich immer angewöhnt, »with_transaction« zu nutzen.
Hintergründe und Unterschiede zwischen den beiden Funktionen sind in der...
Auftragscontroller: nach Löschen Redirect zum Anlegen, nicht zum Bearbeiten
Pflichtenheft: Zugriff auf nicht vorhandenes »visible_item« verhindern
Sind im Baum gerade Textblöcke ausgewählt, so liefert die Funktion»visible_item« undef zurück, weil aktuell kein Item (= Abschnitt oderFunktionsblock) sichtbar ist.
Wird in so einem Moment ein Abschnitt oder Funktionsblock per Drag &...
Bankauszug: nur Warnung wegen Überzahlung bei tatsächlicher Überzahlung
Bankeinzug: bei Überzahlung eine Warnung ausgeben
Eine Überzahlung ist oftmals OK oder unvermeidbar, sollte aber von derBenutzerIn begutachtet werden.
Bankauszug: Unterzahlung mehrerer Rechnungen verhindern
Wenn mehrere Rechnungen ausgewählt werden, so verteilt der Algorithmusschlicht den Betrag der Überweisungen auf die Rechnungen in derReihenfolge, in der die Rechnungen ausgewählt wurden. Dabei wird so...
Bankauszug: Transaktionsrichtung mit Belegrichtung abgleichen
Erhält man eine Zahlung, so darf man diese nur mit Belegen verbuchenkönnen, die Zahlungen in Empfangsrichtung bedingen: Verkaufsrechnungenund Gutschriften im Einkauf.
Analog gilt das auch für ausgehende Zahlungen. Hier passen nur...
Bankauszug verbuchen: etwas Dokumentation ergänzen
Bankauszug verbuchen: Warnungen/Fehler anzeigen; pro Zeile eine DB-Transaktion
Das Verbuchen von Bankauszügen wird nun in Datenbanktransaktionengekapselt. Damit die BenutzerIn bei einem Fehler nicht alles erneuteinstellen muss, wird eine Datenbanktransaktion pro...
CsvImport: deutlich anzeigen, ob Vorschau oder echter Import
CsvImport: Kosmetik (Anordnung)
Letter: is_sales nicht in init_letter clobbern
Briefe: Sprache im Druck
Order Controller - lastcost von Positionen mit speichern
ansonsten ist die Margenberechnung im Verkaufsbericht falsch (lastcostist immer 0). Siehe Ticket #201
Briefe: Lieferantenbriefe
BUG-FIX: LOCK TABLE parts in CVS-Import Artikel
Problematik, dass alles andere mit Rose gemacht wird,die Teilenummern holen, jedoch nicht.
Siehe auch Redmine #190
nicht benutzte Spalte parts.alternate entfernen
Kunde: Datenbanktabelle "klass" nach "pricegroup_id" migriert
und einen Fremdschlüssel gesetzt.
S:C:BankTransaction: Kosmetik für bessere Lesbarkeit (Einrückung, Anordnung…)
Kontoauszug verbuchen - Beschriftung verbessert.
Übernommene Vorschläge zeigen die Rechnungsnummer und den offenen Betragder Rechnung an, die Beschriftung lautet nun auch "offener Betrag".
Controller BankTransaction - Einrückungen und Kommentare
Refactoring und Einrückungen in BankTransaction.pm
TopQuickSearch: Und Verlinkung auch wieder hergestellt
TopQuickSearch: typisierte Suche gefixt
TopQuickSearch: Alle Artikelsuchen haben nur Erzeugnisse gefunden
...hat keiner gemerkt...
Drafts: load kann jetzt zusätzliche Argumente aus form übernehmen
Kontoauszug verbuchen: Fehlermeldung und falscher Betrag
Werden mehrere Rechnungen mit einer Banküberweisung bezahlt,bekommt letzte Rechnung immer den Rest des Betrages,auch wenn sie überbucht wird.
fix Redmine #192
Eine Rückbuchung von ganz bezahlten Rechnungen kann über diesen Weg nicht gemacht werden
Kundenstammdaten: Lieferadresse speichern, wenn beliebiges Feld gesetzt
Vorher wurde nur gespeichert, wenn der Name gesetzt war. Das istallerdings inkonsistent mit dem Verhalten von vor der Umstellung derMaske auf das Controller-Modell. Weiterhin gibt es bei der...
Kontoauszug verbuchen - SEPA-Zahlungen berücksichtigen und schließen 2
auch bei Verbuchen per "Vorschlag" die SEPA-Zahlungen schließen.
Typos in Doku
Neues Recht "Verknüpfte Belege"
Hintergrund ist, daß es derzeit z.B. möglich ist, daß Benutzer die nurRechte haben um Angebote zu sehen, über die verknüpften Belege eineÜbersicht über alle anderen Belege aus dem Workflow, bis hin zurRechnung zu sehen. Zumindest eine Zusammenfassung (Datum, Beträge), ohne...
CsvImport: Aufträge: Einheiten behandeln
PartPicker: in Testseite auch einen vorausgefüllten Picker anzeigen
"Kontoauszug verbuchen - SEPA-Zahlungen berücksichtigen und schließen
Erstellt man SEPA-Überweisungen für das Bankprogramm, verbucht dieZahlungsausgänge aber per "Kontoauszug verbuchen", wird derursprüngliche SEPA-Prozess unterbrochen. Dort war vorgesehen, daß man...
BankTransaction: Filter aus letztem Commit auch nicht vorbelegen
BankTransactions: Lieferantenfilter nicht benutzen, wenn...
kein fremder Konteninhaber existiert. Ansonsten wird da einfach nacheinem zufälligen Vendor gefiltert der kein Konto hat.
Finanzübersicht: Neue Spalte »Kosten« analog zu BWA-Kosten
Kontoauszug verbuchen -> Buchung erstellen -> Lieferanten-Filter verbessern
Falls in dem Datenmodell Drafts.pm, Dialogbuchungen vorhanden sind,stürzt die Filterfunktion einfach ohne Rückmeldung ab und macht nichts weiter.Sinnvollerweise nur Ergebnisse filtern, die auch eine vendor_id im Draft haben.
CsvImport::BankTransaction: currency als info spalte anzeigen
CsvImport::Base: benutzte header korrekt setzen
CsvImport: leere Mappings schon beim Einlesen überspringen
CsvImport Mapping: header mit helper parsen
sonst gibt es wieder die gleichen Probleme mit UTF-BOM
preferences to client-features managed
featured form-objects visible/unvisible
CsvImport: Spaltenzuordnung für non multiplexed
Refactoring: BankTransaction
minimalen aufgeräumt. Alte Copy&Paste doppelte Checksan der Stelle entfernt, die ich gelesen und verstanden habe.
BankTransactions GUI Hotfix Verbesserung
Wenn man über die Liste aller Rechnung jetzt auch denzu verbuchenden Betrag als Hilfestellung angezeigt bekommt, muss dieserentsprechend konsequent auch bei dem einfachen AJAX-Anklickenangezeigt werden.
Bankauszug verbuchen invoice_amount vor pay-invoice
Die Reihenfolge der Verarbeitung des Bankausszugs ist jetztwichtig. Vorher wurde einfach der Betrag der gesamten Rechnungabgezogen, jetzt ist es nur noch der offene Betrag, der nachder Zahlungsverbuchung dann auf 0 ist. Deshalb vorher ...
Feature Kontoauszug verbuchen - nur maximal offene Beträge
amount_open -> open_amount - richtige Helper-Funktion aufrufen
Keine Rechnungen mit Bankauszug verbuchen überbezahlen
Order: Doku: weniger Bugs. Typo.
Order: Mehr Bugs
Order: mehr fehlende Sachen in Doku ergänzt
Order: POD aufgeräumt, reformatiert, Bugs notiert.
Order: Überflüssige Includes entfernt
Auftrags-Controller: Doku und Kommentare
CsvImport: Aufträge: Fallback Lieferbedingungen auf die vom Kunden/Lieferanten.
Setzt die Lieferbedingungen auf die des Kunden oder Lieferanten des Auftrags,falls in der CSV-Datei keine Lieferbedingungen angegeben sind.
FlattenToForm: Zahlungsbedingungen des Kunden/Lieferanten nicht kopieren
Es haben die ZB des Beleges zu gelten, nicht die desKunden/Lieferanten. Die Variable »payment_terms« wird zwar später wiederanhand von »payment_id« überschrieben (in »OE::order_details« und dann...
Zahlungsbedingungen: Unterscheidung zwischen Angeboten/Aufträgen und Rechnungen
Dies führt ein neues Attribut »payment_terms.description_long_invoice«und dazugehörige Übersetzungen in »generic_translation« ein.
Die Druckvariable »payment_terms« wird nun in Abhängigkeit vom...
Verkaufspreisinformationen: Preisentwicklung der Stammdaten anzeigen
Verkaufspreisinformationen: Typfilter in der Überschrift anzeigen
Dadurch wird auf einen Blick etwas klarer, was die Tabelle anzeigt.
Verkaufspreisinformationen: »Seite:« nicht anzeigen, wenn es nur eine gibt
In dem Fall ist $self->{pages}{cur} 0 oder undef und nicht 1.
ProjectPicker: Die (Un)-Gültigkeits-Spalte/Methode heißt valid, nicht obsolete.
Der Fehler führte dazu, dass bei Eindeutigen Eingaben im Picker dennoch keinErgebnis ausgewählt wurde, sondern der ajax-Call einen Fehler meldete, der dannunterging.
ProjectPicker: SL::DB::Manager::Project hat (noch) keinen type_filter.
Es gibt zwar einen project_type, aber der ist als Filter noch nichtimplementiert.
Dieser Fehler führte dazu, dass bei eindeutigen Eingaben im Picker dennochkein Projekt ausgewählt wurde. Der ajax-Call lieferte einen Fehler zurück,...
Drafts: gl auch eingebunden
Projektliste: Kundenname bei PDF-/CSV-Export richtig ausgeben
Der Controller-Helfer für den ReportGenerator muss aus Objekten Wertemachen können. Wie das geschieht, wird über die Spaltendefinitionfestgelegt. Für Nicht-HTML-Anzeige wird entweder eine zur Verfügung...
Übersetzung für Buchungsgruppe -> Booking group
Nicht-übersetzte Deutsche Begriffe entfernt und übersetzt
Shopartikel, Steuersatz, Abteilung, Preisgruppe (gab es auch alsPreisklasse).
Drafts: Ausgelagert in Controller
Kontoauszug verbuchen, Startdatum der Verbuchung greater/equal
Wie bei fromdate und auch sonst überall im Programm, entsprechenddas Startdatum der Kontoverbuchung noch als gültigen Wert mitnehmen.
Dispatcher: end_of_request() sub aus main namespace verbannt
Brieffunktion: Umstellung Druck auf Template Toolkit
Damit wird auch alter Backendcode wie IS->get_customer() nicht mehrbenötigt.
Brieffunktion: Löschen von Entwürfen gefixt
Brieffunktion: unbenutzte Tabellenspalten entfernt, vc_id → customer_id umbenannt
Brieffunktion: WebDAV-Verzeichnisinhalt anzeigen
Brieffunktion: Versand per E-Mail implementiert
Brieffunktion: Nutzung von SL::Webdav zur Speicherung im Webdav
Common::copy_file_to_webdav_folder ist alter Code, der bei neuem Codenicht mehr benutzt werden sollte.
Brieffunktion: Drucken auf Drucker gefixt
1. Drucker wurden nicht geladen. Daher gab's die Option zum Drucken direkt auf einen Drucker nicht.
2. Temporäre Druckedateien wurden anschließend nicht gelöscht.
3. Der anschließende Redirect nutzte falsche Variablen und hat daher de...
SL::DB::Printer: »Dokument an Drucker schicken« zentralisiert
Die neue Funktion print_document übernimmt das Spawnen des externenProzesses und schickt das Dokument an den Drucker. Das Dokument kannentweder direkt als Inhalt oder als zu sendender Dateiname übergeben...
Brieffunktion: Löschen von Briefen gefixt
Brieffunktion: beim Drucken im WebDAV speichern
(I)LIKE-Argumente immer mit Funktion SL::DBUtils::like erstellen
5.10 compat: mehr yada-yada ops
(nach ... acken ist nicht trivial)
perl5.10 compat: ellipsis (yada-ayada) ist da syntax error
SL::Controller->send_file: trueish zurückgeben
send_file meldet Fehler (z.B. »kann Datei nicht öffnen«) durchcroak(). Im Erfolgsfall sollte die Funktion aber regulär einen wahrenWert zurückgeben, um ordentlich in eval{} benutzt werden zu können.
CVars: Lieferadressen-CVars in Stammdaten bearbeiten
CVars: Konfigurationen für Lieferadressen anlegen können
CustomerVendor: CVar-Aufbereitungs- und -Speicher-Code in eigene Subs ausgelagert
Reapply "country_mode entfernt."
Mit mit neuem Autor neu.
Revert "country_mode entfernt."
Originalcommit: b05b5075ac0f3cbb0823c2f513cdbcacfb17bede.
ParseFilter: neuer Filter "trim"
Ausserdem autotrim bei substr, head und tail Filtern