Auftrags-Controller: Artikel-Mehrfachauswahl auf die des PartPickers umgestellt
PartPicker: Mehrfachauswahl: Option um Anzeige-Begrenzung zu setzen
Diese war vorher fest auf 100 eingestellt. 100 bleibt die Voreinstellung.
POD fix: Rose Syntax im Beispiel
Vergleichsoperatoren werden als Hash-Ref angegeben.
Revert "POD fix: Rose Syntax"
ilike gibt es doch.
This reverts commit 95f21f71c1c5c2f6cf6a281a0174d8f247be1135.
Standardlagerplätze in Part sortiert anzeigen
Projekt-Picker: exact match auf GetModels umgestellt
Projekt-Picker-Lupe: Copy/paste und Anpassungen vom Chart-Picker
BankTransaction: Filter nach Konteninhaber-Namen
Kunden/Lieferanten: UStId/Steuernr. eindeutig: Prüfung im Controller
Quick-Suche: `auth` == undef oder leerer String gefixt
Laut Doku in `SL/Controller/TopQuickSearch/Base.pm` bedeuten undefoder leerer String als Rückgabewert der Sub `auth`, dass dieses Modulfür alle Benutzer*innen zur Verfügung steht, unabhängig von deren...
Kundenstammdaten: beim Anlegen Verkäufer*in setzen wenn kein »edit all«-Recht
Personen, die nur »edit«-Rechte, nicht aber »edit all«-Rechte haben,dürfen nur noch eigene Kunden bearbeiten. Daher ist es sinnvoll, dassbeim Neuanlegen das Feld »Verkäufer*in« bereits auf die aktuelle...
Kunden-/Lieferantenstammdaten: Berechtigungsmodell gefixt
Neues Modell sieht wie folgt aus:
1. Alle Personen haben Leserechte auf alle Kunden- & Lieferantenstammdaten. Das betrifft nicht nur die Stammdatenmasken, sondern auch die AJAJ-Autovervollständigung (Kunden-/...
POD fix: Rose Syntax
Zeitvergleich braucht { . ilike gibt es nicht in Rose:like_operator => 'like', # only applicable to Postgres, defaulted to undef, i.e. render_as_table() uses 'ilike' for Postgres by default
S:C:H:ReportGenerator: Spalteninformationen einzeln zuweisen.
Hintergrund: Das "fat-comma (=>)" interpretiert seine rechte Seite imListenkontext, was dazu führen kann, dass der Hash, der aufgebaut werdensoll, durcheinander gerät, wenn z.B. $def->{sub} eine Liste zurückliefert...
Merge branch 'f-factur-x-und-xrechnung'
Kontoauszug verbuchen: Vorschlagsliste verbessern
- Kommentar stimmt nicht mit dem Code überein.- Die Prüfung verhindert das Banktransaktionen mit einer Summe größer der Rechnungssumme als Vorschlag zugewiesen werden. Das war wichtig, weil der Payment-Helper zu Beginn immer die komplette Bankbewegung auf...
Order-Controller: Umwandlung: gemeinsamen Code in eigene Funktion ausgelagert
Factur-X/ZUGFeRD-Import: Falsche Nutzung von t8() für Fehlermeldung korrigiert
Factur-X/ZUGFeRD: in »Factur-X/ZUGFeRD« umbenannt
Mit ZUGFeRD-Standard Version 2.1.1 ist der offizielle Name desEU-Standards schlicht Factur-X. ZUGFeRD ist nur noch der toleriertealte Name.
In der Oberfläche ist nun überall von »Factur-X/ZUGFeRD« die Rede....
CSV-Import Waren: bestehende Makemodels als Array, nicht als Array-Ref
makdemodels verhält sich als makemodels_sorted: Die von Rose erzeugte Methodeberücksichtig offenbar den Kontext - makemodels_sorted gibt immer ein array-ref
[$part->makemodels_sorted] ergibt [ [] ]...
CsvImport: dateformat Unterstützung
default ist auf dem dateformat des Benutzers
Massenerstellen von RG aus LS: geschlossene LS nicht (erneut) verarbeiten
Geschlossene Lieferscheine werden nicht zum Umwandeln in der Liste angezeigt,das war auch bisher so. Aber weenn man nach dem Erzeuigen der Rechnungen vonder Folgeseite den Browser-Zurück-Knopf drückt, konnten aus den selben...
Massenerstellen von Rechnungen aus LS: sumbit direkt von der Aktion machen
Das submit, das die Umwandlung der Rechnungen startet, kann direkt über dieActionBar angegeben werden. Damit fällt die js-Funktion ganz weg.
Massenerstellen von Rechnungen aus LS: Aktion nur einmal ausführen
Dafür den Action-Parameter only_once verwenden.Damit das aber klappt, muss die Prüfung, ob etwas angehakt ist, auch als checkan die Action gehängt werden. Denn sonst wird der Knopf abgeschaltet, auch wenn...
Neuer Auftragscontroller: veralteten TODO-Eintrag gelöscht
Neuer Auftragscontroller: Drucker-ID an Template-Auswahlmechanismus durchreichen
Der Auswahlmechanismus kann bei der Suche nach der zu verwendendenVorlage das beim Drucker hinterlegte Vorlagenkürzelberücksichtigen. Dafür muss er aber auch gesagt bekommen, welcher...
Pflichtenhefte: Gültigkeitsdatum in Angeboten auch ohne Zahlungsbedingungen setzen
Neuer Angebots-/Auftragscontroller: Unterstützung für Artikelübersetzungen 3
Die longdescription wird jetzt doch als Hidden im Formular mitübertragen. Dadurch werden gewisse Randfälle und Diskrepanzen zwischenForm-Inhalt und Datenbank-Inhalt vermieden. Nur hiermit ist es jetzt...
Neuer Angebots-/Auftragscontroller: Unterstützung für Artikelübersetzungen 2
Bei Funktion »Artikeldaten aus Stammdaten holen«.
Funktioniert noch nicht für die Langbeschreibung, weil die Funktiondas von der Architektur her bisher gar nicht unterstützt.
Neuer Angebots-/Auftragscontroller: Unterstützung für Artikelübersetzungen 1
Bisher nur beim Hinzfügen von Artikeln.
Neuer Angebots-/Auftragscontroller: Sprach-Drop-Down aus Print-Optionen in Hauptbeleg verschoben
Employee-Controller: beim Gelöscht-Setzen Verknüpfung in Auth-DB lösen
Beim Anlegen von Benutzer*inen in der Auth-DB werden sie nichtzwangsweise auch in der Mandanten-DB angelegt, z.B. wenn die in demMoment noch nicht existiert. Daher werden bei jedem Login in einem...
MT940-Import: Implementation eines eigenen Parsers anstelle von AQBanking
Inventur-Modul: DateTime-Methode heißt subtract, nicht substract
Warenimport: Auch für object_to_save priceupdate berechnen
Ansonsten wird in neuer Preis angelegt, aber in der Basis-Maskestimmt die Information "Erneuert am" dann nicht. Das istetwas irreführend.
CSV-Import Waren: Fehlermeldungen verbessern bei nicht vorhandenen Warengruppen
Auftrags-Controller: Wiedervorlage: kein Fehler anzeigen , wenn kein Recht, …
… sondern nur die Action nicht anzeigen.
Sonst kann man gar keine Angebote/Aufträge erstellen/öffnen, wenn man das"productivity"-Recht nicht hat.
Dank an Sven.
Auftrags-Controller: Wiedervorlage
Hier werden die vorhandenen Funktionenn und das Template verwendet, wobeidie Eingabemaske in einem eigenen Browser-Fenster gerendert wird.
Todo: Umstellung auf Dialog für alle Masken (evtl. ein eigenerFollowUp-Controller und Methoden dafür in SL::DB::FollowUp)...
S:C:CustomerVendorTurnover: Sortierung der Belege absteigend nach Datum
S:C:CustomerVendorTurnover: unnütze Zeile weg
E-Mail Betreff auch mit Kundenbestellnummer vorbelegen.
Auftrags-Controller: Beleg neu Laden nach Mail
Damit sind auch die verknüpften Belege, in denen die Mail verlinkt ist,aktualisiert.
Auftrags-Controller: Beleg-Id für Mailer setzen, damit verknüpft wird
Das sit nur nötig, wenn vor dem Mailen nicht gespeichert wurde. Daswurde zwar gerade erzwungen, aber falls es wieder rausgenommen wird,funktioniert die Verknüpfung auch.
Order-Controller E-Mail nur nach Speichern möglich
Hotfix um einen wirklich gesicherte $::form zu haben
Auftrags-Controller: Speichern und E-Mail-Dialog über vorhandene Funktion
Die js-Funktion email() tut praktisch das gleiche wie save(). Dann kannauch diese benutzt werden.Damit auch klar ist, dass vor dem Aufruf des E-Mail-Dialogs gespeichertwird, ist die action im Controller umbenannt worden.
Auftrags-Controller: Vor dem Aufruf des E-Mail-Dialogs speichern
Das geschieht zwar auch beim Verschicken der Mail wenn man den Dialog bestätigt,aber beim Speichern wird die Belegnummer generiert, die sonst beiungespeicherten Belegen im Dialog selbst (für den Betreff) nicht zur Verfügung...
cusordnumber in email auch für neuen controller
Auftrags-Controller: Workflow VK->EK: Lieferadresse für direkte Lieferung
Falls beim Workflow Kundenauftrag->Lieferantenauftrag eine Lieferadresseausgewählt oder eine indiv. Lieferadresse eingetragen ist, wir gefragt,ob diese Lieferadresse als (indiv.) Lieferadresse in den Lieferantenauftrag...
Auftrags-Controller: "Speichern und ..." nicht ausgrauen, wenn nicht gespeichert…
…, da vorher ohnehin gespeichert wird.
Kunden-/Lieferantenstamm: Anzeige WebDAV-Reiter
Auftrags-Controller: individuelle Lieferadresse
Behebt #365 (redmine)
Vorgangsbezeichnung erzwingen auch im Order-Controller
Kosmetik Zeilenumbruch
Auftrags-Controller: Wechselkurs: Preis beim Hinzufügen eines Artikels umrechnen
Auftrags-Controller: Wechselkurs pro Beleg …
- Wechselkurs wird pro Beleg gespeichert- Wechselkurs ist immer änderbar- vorausgefüllt aus "alter" Tages-Wechselkurstabelle
Bezieht sich auch auf #135Refs #135
Auftrags-Controller: Wechselkurs: Kosmetik / POD update
Auftrags-Controller: Währung in make_order setzen
Auftrags-Controller: Währung bei Kunden-/Lieferantenwechsel setzen
Auftragsschnellerfassung: Korrekturen für Währung/Wechselkurs
- Feld auf disabled setzen wenn nicht gebraucht- _as_null_number damit undef nicht zu 0 wird- Übersetzte Fehlermeldungen
ticket #9491
(cherry picked from commit c581e4685a217bdd5b73380b1f808037a473dd9f)...
exchangerate bei Order erst nach transdate und currency_id setzen
(cherry picked from commit 7d76676faf4c3a4d71fc5df449365374a9997995)(cherry pick von odyn)
Auftragsschnellerfassung: Währung und Wechselkurs definierbar
impl. #9491
(cherry picked from commit 6cdc5a4a33df4530ce4e141151e83138320e27a2)(cherry pick von odyn)
Auftrags-Controller: Sprache f. Überstzung im E-Mail-Dialog verwenden
CSV-Import Debitorenbuchungen: Lieferdatum bei Steuerermittlung berücksichtigen
CSV-Import Debitorenbuchungen: Feld für Kontonummer heißt accno, nicht chart
Auftrags-Controller: Steuerwerte pro Steuer, nicht pro Steuerkonto ausweisen
CsvImport für Lieferscheine
CsvImport: Report-Begrenzung: "Alles" anzeigen als Voreinstellung.
CsvImport: Filter/Begrenzung für Status-Bericht wieder ermöglichen.
CsvImport: Anzahl der Fehler beim Ergebnis anzeigen
Typos und spellcheck für occurred
Abteilungen bei Ansprechpersonen: Freitext-Feld und/oder Auswahlliste
Die Abteilung wird entweder nur mit einer Auswahlliste angezeigt oder mitFreitext-Feld und Auswahlliste. Das ist annähernd das alte Verhalten - imFreitext-Feld eingegebener Text wird auch in contact_departments gespeichert....
Abteilungen bei Ansprechpersonen: SimpleSettings-Controller zum Editieren
Titel von Ansprechpersonen: Freitext-Feld und/oder Auswahlliste
Der Titel wird entweder nur mit einer Auswahlliste angezeigt oder mitFreitext-Feld und Auswahlliste. Das ist annähernd das alte Verhalten - imFreitext-Feld eingegebener Text wird auch in contact_titles gespeichert....
Titel von Ansprechpersonen: SimpleSettings-Controller zum Editieren
Anreden: Kunden-/Lieferantenstamm: Freitext-Feld und/oder Auswahlliste
Die Anrede wird entweder nur mit einer Auswahlliste angezeigt oder mitFreitext-Feld und Auswahlliste. Das ist annähernd das alte Verhalten - imFreitext-Feld eingegebener Text wird auch in greetings gespeichert....
Anreden: SimpleSettings-Controller zum Editieren
Project löschen - Rücksprung zu Übersicht repariert
Die action heißt list, nicht search
Auftrags-Controller: Einfüge-Position eines neuen Artiklens angeben können
Testfall für #266 - Rückgabewert für Routine setzen
Fixt #266 Kontenabgleich mit Bank transaktionssicher
ZUGFeRD-Import: UStID-Nr auch finden, wenn sie nicht normalisiert sind
Sowohl die UStID-Nummern in der ZUGFeRD.xml als auch die Nummern derLieferanten in der Datenbank werden nun zum Vergleichennormalisiert. Damit wird auch ein Lieferant gefunden, dessen UStID-Nr...
Mandantenkonfiguration: UStID-Nummern beim Speichern validieren
ZUGFeRD: ZUGFeRD-Controller der minimal ZUGFeRD PDF parst
Simples Upload Formular für ein PDF. Falls das PDF gültigeZUGFeRD Daten hat und ein Lieferant mit UST-ID in kivi gefunden wird,werden die Formulardaten in der ersten gefunden Kreditorenbelegvorlage...
ZUGFeRD: Zahlungsinfos ergänzt: Kontonummer, Typ=Einzug/Überweisung
PDF-Erzeugung: alles in temporärem Unterverzeichnis von users erledigen
Das vermeidet Kollisionen, wenn Dateien mit festem Namen wie`pdfa.xmp` für PDF/A erzeugt werden müssen.
Typo in comments
Massendruck: Option "beidseitig" auch beim Drucken aus Rechnungsberichten
Inventur: beim Zählen/Korrigieren auch Artikel ohne MHD berücksichtigen, …
…, wenn MHD in der Mandantenkonfiguration eingeschaltet ist.
S:C:Inventory: Kosmetik/Kommentar: emacs happy
Login: Callback setzen und berücksichtigen, wenn abgemeldet
Wenn ein Ziel innerhalb des Programms aufgerufen wird (z.B. aus einemLink, den man zugschickt bekommt) und man nicht eingeloggt ist, sowird man zu dem Ziel weitergeleitet, nachdem man sich eingeloggt hat.
LoginScreen: Request beenden, wenn Benutzer nicht authentifiziert wird
False Positive bei Überprüfung von Lieferant und Lieferaten-Rechnungsnummer verhindern
Falls eine Buchung noch am selben Tag verändert wird,kommt es fälschlicherweise zu der Aussage, dass schon eineRechnung mit dieser Rechnungsnummer zum Lieferanten erfasst worden sei....
Massenerstellen von Rechnungen aus LS: Filtern nach Kundentyp
Reconciliation: Veto, kein invoice_amount nachträglich setzen.
auch nicht für Vorschläge
Auth: fehlerhafte JSON-Requests mit JSON und richtigem HTTP-Response-Code beantworten
Auftrags-Controller: Prüfung beim Holen der Kunden-/Lieferanten-Art.-Nr, …
… ob Option eingeschaltet ist und ob Kunde/Lieferant schon gewähltwurde. Sonst gibt es einen Fehler beim Workflow von VK in EK und umgekehrt.
Part: typo
(cherry picked from commit 8ce71088e51f6bce25c8406ff65f72fad3c15d1a)
CSV-Import Debitorenbuchungen: maximale Betragsabweichung (Einstellungen) parsen
S:C:Letter: Vergessene Presenter-Umstellung für ein select_tag
Auftrags-Controller: Positions-Update: auch Artikelnummern updaten