Zeiterfassung: Parameter f. Konvertierung in params übergeben
Zeiterfassung: Fehlermeldungen: Leerzeichen; keine Angabe der Codestelle
Zeiterfassung: richtige Parameter f. Hintergrund-Job prüfen …
und- Hash mit validen Parametern umbenannt- exists statt trueish- "die" statt "croak"
Zeiterfassung: Bericht: Titel auch im Browser-Titel
Zeiterfassung: Lieferschein new_from_time_recording: auch base_qty setzen
Zeiterfassung: Lieferschein new_from_time_recording: undef-Warnung vermeiden
Zeiterfassung: Lieferschein new_from_time_recording: Kosmetik/Typo im POD
S:D:DeliveryOrder: List::Util notall wird nicht (mehr) benutzt
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...
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: 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
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: Ein Recht dafür
Zeiterfassung: Controller
Zeiterfassung: SimpleSystemSettings für Typen
Zeiterfassung: Sortierung und Ordnung für Typen
Zeiterfassung: Tabellen und Rose
POD für ClientJs aktualisiert
Order: Warnung/Fehler bei Liefertermin auch bei kombinierten Export-Aktionen
Order-Controller: Neue Action preview_pdf (Druckvorschau für PDFs)
Artikel-BDVs unter Basisdaten anzeigen, falls konfiguriert
Die benutzerdefinierten Variablen für Artikel können konfigurierbar im Tab Basisdatenangezeigt werden
locales Lauf "de" überwiegend Shopübersetzungen
Dateianhänge aus Projekten auch in E-Mail anzeigen
In Anlehnung an odyn fa2f21bb7d9247782f5eIm E-Mail-Dialog werden hochgeladene Dateianhänge aus einemglobalen Projekt angeboten und sind vorausgewählt.
Projekte: Dateianhänge auch für Projekte
Cherry-pick aus odyn (Upgrade Skript entsprechend geändert)implemntiert EGW #6889
ReportGenerator: Get PDF as binary (no print, no http-redirect)
Shoconnector Syntaxfehler behoben
SHOPOrders Status setzten bei Rechnungen korrigiert
ShopApi: statussetzen bei Rechnung schreiben Syntaxfehler behoben
ShopConnector: set OrderStatus in Shop
WebshopApi: Controller/ShopOrder.pm überarbeitet
WebshopApi: ShopConnector überarbeitet
CSV-Import CustomerVendor: Warnungen wegen nicht initialisierter Variable vermeiden
CSV-Importe: Warnungen wegen nicht initialisierter Variable vermeiden
CsvImport: Mulitplex: handle_cvars-Routine verlassen, wenn Objekt keine CVars kann
CsvImport: Bei Imports ohne CVars deren Standard setzen, wenn vorhanden.
CsvImport: Parts: CVars von handle_cvars behandeln lassen.
Dabei aber beachten, dass das bei einen Import, wo nur die Preise aktualisiertwerden sollen, nicht geschieht.
CSV-Import: CustomerVender benutzerdefinierte Variable aktualisieren
handle_cvars erst aufrufen, wenn das zu speichernde Objekt bekannt ist. Dasbetrifft den Fall, wenn vorhandene Objekte aktualisiert werden sollen.
behebt #237 (redmine)
CsvImport: handle_cvars: CVars für das zu speichernde Objekt setzen.
Revert "CSV-Import: CustomerVender benutzerdefinierte Variable aktualisieren"
This reverts commit a8628c6af6ab8303fe67d874adbee0211bd86c1e.
Hier wird das eigentliche Problem nur umgangen.Zudem, wie im commit schon erwähnt, sollte handle_cvars nur einmal aufgerufen...
CsvImport: CustomerVendor: Nummer vom Helper des Objekts vergeben lassen.
Vorher wurde hier SL::TransNumber verwendet - das ist kein Problem, aber diees den Helper gibt, ist das hier einfacher.
Zudem wurde vorher auch eine neue Nummer für die zu aktualisierenden Objekte...
CsvImport: Im Report die Werte des gespeicherten Objekts speichern.
Bei den Workern, die Objekte aktualisieren können, kann statt dem objectdas object_to_save gespeichert werden. Die Werte dieses Objekts sollten imReport angezeigt werden, auch wenn die eigentlich gleich sein müssten....
Dateimanagement: größere Vorschaubilder: Versionen berücksichtigen
zu 52f5223a1dcf, mehr als einen Filter im SQL-Statement erlauben
Mahnungsbericht: Anzeige f. Dokumente/Mails abschaltbar
Mahnungsbericht: E-Mails f. Mahnungen anzeigen
Verknüpfung zum E-Mail-Journal für Mahnungen.
Mahnungen: Rechnungsnummer der Mahnrechung im PDF-Dateinamen statt dunning_id
Der Dateiname wird auch als Name des Anhangs bei Mailversand verwendet und dannsieht es besser aus, wenn der Name auch mit der Rechnunsgnummer übereinstimmt.
Mahnungen: Status-Bericht nach Mahnlauf mit evtl. Fehlermeldungen.
Das Erzeugen der Mahnungen erfolgt je nach ausgewählten Rechnungen in mehrerenSchritten (Zusammenfassen je Kunde und Mahnlevel oder auch einzeln für jedeRechnung).Hierbei können in einem Schritt durchaus Mahnungen für einen Kunden oder einen...
Mahnungen: PDF an Drucker schicken: Druckbefehl erst prüfen, dann verwenden
Einfachen Presenter f. Webdav-Objekte
SL::Presenter::FileObject: link_tag verwenden
S:P:Dunning: Link führt nicht mehr zum Drucken, sondern zum Mahnungsbericht, …
… gefiltert für diese Mahnung. Hier kann man die Details sehen und auch drucken.
S:P:Dunning: Link mit link_tag erzeugen
S:P:Dunning: unbenutzten Parameter "type" entfernt
Mahnbericht: Nach Mahnungsnummer filtern können und diese Anzeigen
Mahnungsbericht: zweite Sortierung (fast) immer nach Mahnungslauf …
… bzw. dunning_id. Damit bleib das Zusammenfassen mehrer Rechnungen einesLaufes beim Sortieren erhalten, falls möglich.
Mahnungen: DMS/WebDAV: erzeugte Dokumente nach Mahnlauf ablegen.
Und zwar außerhalb der Transaktion und nur wenn diese erfolgreich war,sonst können bei eine abgebrochenen Transaktion abgelegte Dokumentevorhanden sein, ohne das eine Mahnung oder Mahnrechnung in der DB existiert.
Mahnungen: DMS/WebDAV: erzeugte Dokumente zum Mahnlauf ablegen …
und nicht zur gemahnten Rechnung.
Dateimanagement: Mahnung: Mahnrechnung bekommt Typ dunning_invoice statt dunning
Hintergrund: Es soll umgestellt werden, dass bei einem Mahnlauf erzeugteDokumente zur Mahnenden Rechnung gespeichert werden. Sattdessen sollen diesezum Mahnlauf gespeichert werden. Dazu wird dann der object_type "dunning"...
SL::Auth: Typo in Methodennamen korrigiert: create_unique_sesion_value …
-> create_unique_session_value
MT940: Zeichensatz der Datei bei Import auswählen können
MT940: Multi-Line-Varianten von Tag 86 unterstützen
Presenter: SL::Presenter::FileObject in ALL laden
Mahnungen: beim erneuten Drucken ggf. auch originale Rechnung mit drucken, …
… sofern diese beim Mahnlauf mit gedruckt wurde.
Mahnungen: merken, ob die originale Rechnung gedruckt wurde: DB+Rose
SL::DN: print_original_invoices in print_original_invoice umbenannt, …
… da nur eine Rechnung gedruckt wird.
SL::DN: überflüssigen Parameter dbh für print_original_invoices entfernt
Mahnungen: alle erzeugten Dokumente zu jeder gemahnten Rechnung ins WebDAV
Mahnungen: DMS: orig. Rechnung als eigenen Typ
Mahnungen: alle erzeugten Dokumente zu jeder gemahnten Rechnung im DMS ablegen
Dazu die Dateien nicht mehr in SL::Form::parse_template speichern lassen,sondern in SL::DN selber für jede gemahnt Rechnung ablegen.
Mahnungen: PDF d. Rechnung über Mahngebühren im DMS speichern
Die Id der zugehörigen Rechnung ist in $invoice_id,nicht in $form->{invoice_id}.
Mahnung per Mail: auch Rechnung über Mahngebühren anhängen
Der Mailer erwartet den Pfad für das Attachment mit dem key "path",nicht "filename".Zudem übersetzten Anhang-Namen verwenden.
Mailer: unbenutzen Code entfernt
Dateimanagement: Download-Aktion: Version richtig interpretieren
Dateimanagement: Fileystem-Backend: aussagekräftigere Fehlermeldung
File-Helper: unbenutzten Parameter file_number entfernt
Mahnungsbericht: Erzeugte Dokumente anzeigen
einfacher Presenter für SL::File::Object