Zeiterfassung: Lieferschein new_from_time_recording: Kosmetik/Typo im POD
S:D:DeliveryOrder: List::Util notall wird nicht (mehr) benutzt
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...
Testfall year_end repariert
.. lieber gleich hartkodiert in 2019 bleiben
(cherry picked from commit 506a5a693165b30c2e4b0abb3d33e1661a36128a)
CTR Mehr Benutzerparameter aus dem POD erlauben und prüfen
- Init rounding and link_project defaults- Check for valid user param names- Add params to each source entry for DO->new_from_time_recording- some TODOS
Abhängig vom Rundungsverfahren minuten- oder viertelstundengenau abrechnen
Einträge am selben Tag nicht erneut in die Beschreibung aufnehmen
neues Modul Math::Round
CTR: POD um neue Parameter erweitert
CTR: Wirklich mit "die", die Fehler werfen. Einrückung
CTR: Lieferscheine nicht schreibschützen
Ausgelagerte Lieferscheine sind schreibgeschützt.Weder Korrekturen der Lieferposition, Rechtschreibung oderdas Hinzufügen von weiteren Metadaten ist möglich.Auslagern oder Schliessen dürfen optionale Parameter sein, der...
Kosmetik: englische Grammatik
CTR: Warnungen zu Fehlern hochgestuft - Variablenbenennung wie in CPI
CTR: Benutzereingabe in data mit Try::Tiny auffangen
Sinnvolle Fehlermeldung in einem Satz zurückgeben unddanach den kompletten Trace.
Zeiterfassung: Bericht: "gebucht" anzeigen und danach filtern können
Zeiterfassung: Hintergrund-Job zum Umwandeln in Lieferscheine
Zeiterfassung: Lieferschein new_from_time_recording
Zeiterfassung: Artikel beim Erfassen wählen können und mit auflisten
Zeiterfassung: SimpleSettings für Artikel
Zeiterfassung: Sortierung und Ordnung für Artikel
Zeiterfassung: Auswählbare Artikel: DB-Upgrade und Rose
Zeiterfassung: Keine Zeiterfassungstypen mehr
Revert "Zeiterfassung: SimpleSystemSettings für Typen"
This reverts commit d01aad90ec0e0f0800037e9753acbacccf819a0c.
Conflicts: menus/user/10-time-recording.yaml
Zeiterfassung: form: tr-Tags vergessen
Zeiterfassung: Mitarbeiter ändern können bei entspr. Recht
Zeiterfassung: Filtereinstellungen f. callbacks merken
Zeiterfassung: Recht f. Bearbeitung aller Einträge berücksichtigen
Zeiterfassung: Beim Bearbeiten fremder Einträge, Mitarbeiter behalten
Zeiterfassung: Recht berücksichtigen, Einträge von anderen (nicht) zu sehen
Zeiterfassung: neue Rechte: anzeigen bzw. bearbeiten der Einträge aller
Zeiterfassung: einfaches Recht andere Position
Zeiterfassung: Recht hierzu der Gruppe Vollzugriff gewähren
time-recording: Boolean für abgerechnete und an die LohnBu gemeldete Zeiten
Zeiterfassung: Defaultfilter: aktueller Benutzer, letzte 2 Wochen
Zeiterfassung: Nur nicht-gelöschte Mitarbeiter angezeigen
Zeiterfassung: T8-Filter heißt $T8
Zeiterfassung: Übersetzungen
Zeiterfassung: Ein Recht dafür
Zeiterfassung: Controller
Zeiterfassung: SimpleSystemSettings für Typen
Zeiterfassung: Sortierung und Ordnung für Typen
Zeiterfassung: Tabellen und Rose
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-/...
Bericht Angebote/Aufträge: internen Bemerkungen filtern und anzeigen können
Bericht Angebote/Aufträge: HTML: fehlende Ende-Tags hinzugefügt
Testfall für BT: Punkte. Copy & Paste Fehler von a695c behoben
BT: Punkte. Copy & Paste Fehler von a695c behoben
open_amount mit open_amount vergleichen
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...
Buchungsjournal: auch globale Projektnummer im Bericht mit anzeigen
Buchungsjournal: Abteilung im Bericht anzeigen können
Buchungsjournal: Zwischensumme in Suchmaske an den Schluss gesetzt
Buchungsjournal: Spalte f. Bilanz im Bericht direkt hinter Umsatzsteuer
Dann sind die Zahlen zusammen
SL::GL: POD: keine leere section; <gt> escapen
changelog f. Menü- und Rechte-Anpassung "Produktivität"
Berechtigungen für Produktiovität als eigene Kategorie …
und die bisherigen Produktivitäts-Rechte und E-Mail-Journal-Rechtedarunter anzeigen.
Menü Produktivität: Zugriffsrechte nicht am Haupteintrag fest machen …
und eigene Zugriffssregel für E-Mail-Journal.
So kann z.B. das Recht, E-Mail-Journal ansehen, getrennt von derProduktivität gesetzt werden.
Ein Hauptmenüpunkt wird nicht angezeigt, wenn keiner seiner Kinder...
Locales-Läufe
S:D:Helper:TransNumberGenerator: Warnung vermeiden.
Getriggert durch Tests (./t/wh/inventory.t). Tritt aber nur auf, wennder Nummerkreis noch leer ist.
Dialogbuchungen um Boolean imported erweitert.
Buchungen mit diesem Boolean können beim DATEV-Exportgefiltert werden. Anwendungsfall sind bspw. in DATEVerstellte Lohnbuchungen, die dann in kivi importiert werden
GLTransaction:: add_chart_booking um get_active_taxkey erweitert
Der Aufruf von add_chart_booking muss sich nicht mehrdarum kümmern welcher Steuerschlüssel gesetzt sein muss, wenner einfach nur den vorkonfigurierten Steuerschlüssel setzen will.Dementsprechend ist param{tax_id} kein Pflichtparameter mehr....
Artikelstammdaten: in Übersetzungen Zeilenumbrüche verwenden können
Das Eingabefeld für die Beschreibung im Basisdaten-Tab erlaubt dieEingabe von Zeilenumbrüchen. Daher muss das auch für die übersetzenBeschreibungen gehen.
Merge branch 'f-factur-x-und-xrechnung'
Inventur: Part-Picker such auch nach Lieferantenartikelnummer
Kontoauszug verbuchen: Verkaufsgutschriften nicht negativ bewerten
Punkte für wrong_sign höher gesetzt und beide Gutschriftentypenjetzt sauber abgegrenzt (credit_note und negative_ap_transaction)
BankTransaction: Treffer für Kreditorengutschriften erhöhen
negativ_ap_transaction sollte keine Strafpunkte mehr fürsVorzeichen erhalten. TODO: Verkaufs-Gutschriften prüfen
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...
Dialogbuchung: js-Validator einbinden. Damit werden die Datumsfelder validiert
… und auch formatiert.
changelog für Leistungsdatum
S/D/Order: new_from_multi: Leistungsdatum nur übernehmen, wenn überall gleich.
Für den Workflow, aus der Auftrags-Liste mehrere Aufträge zu einemzusammenzufasssen.
Kreditorenbuchungen: Automatisches Setzen von Fälligkeitsdatum
Test: Skonto in Kreditorenbuchungen
Kreditorenbuchungen: Zahlungsbedingungen in Belegvorlagen
Kreditorenbuchungen: Zahlungsbedingungen laden/speichern
Kreditorenbuchungen: Bemerkungenblock an Rechnungen angepasst
mailmap update
Auftrags-Controller: Auftragswahrscheinlichkeit anzeigen: Typo im as_date-Attr.
Merge branch '2020-leistungsdatum'
SL::DB::Invoice->new_from: auch Leistungsdatum (tax_point) übernehmen
Preisanfrage/Aufträge: dort, wo es ein Liefertermin gibt, diesen f. Steuer nehmen
Auftrags-Controller: bei Änderung Leistungsdatum/Liefertermin neu berechnen
Auftrags-Controller: Leistungsdatum bei Workflow berücksichtigen
display_row: ship_$row nicht formatiert ausgeben
Im ganzen Programm wird angenommen, dass `$::form->{ship_$row}`unformatiert ist, nur an dieser Stelle wird es formatiertausgegeben. Das war nicht mal ein Problem, weil es in `update` via`_update_ship()` komplett neu berechnet wird, ohne auf den aktuellen...
Order-Controller: Umwandlung: Berechnung bereits gelieferter/abgerechneter Mengen gefixt
In $::form steht der Wert für die gelieferte Menge in`ship_$row`. Dieser Wert wird überall im Programm als unformatiertangenommen, nur bisher in der Methode nicht, die berechnet, wie viel...
Order-Controller: Umwandlung: gemeinsamen Code in eigene Funktion ausgelagert
LXDebug dump_sql_result: Spaltenanordnung je nach Inhalt
Spalten, die komplett numerisch sind, werden rechtsbündig angeordnet;alle anderen linksbündig.
SEPA: In Details: Buttons »Buchen« und »Zahlungsliste« immer anzeigen
Sichtbare Buttons machen viel klarer, welche Funktionalität es an derStelle gibt, auch wenn die Buttons deaktiviert sind.
HTTP-Header: Lebenszeit für Session-ID-Cookie setzen gefixt
Der Name des Parameters lautet `-expires`, nicht `-expire`.
Außerdem den Timeout direkt aus `$::auth` lesen, um denselbenStandardwert zu nehmen, falls der Timeout nicht in der Konfigurationgesetzt ist.
Inventory: Fehlermeldung gefixt
t/wh/inventory.t: Nach Test richtig aufräumen
Inventory Helper: Fehlerhaften Aufruf mit croak abbrechen statt mit Excception
Inventory Helper: Doku Update
Inventory Helper: Allocation ausgelagert in eigene Datei
Inventory Helper: Auf Number Helper Änderungen angepasst
Inventory: mehr tests
Inventory::Allocation: transfer_object
Inventory: doku typos
Inventory: Stückbehandlung und dispotype no_stock entfernt
Inventory: bestbefore handling
Inventory: production order und recipe features entfernt