Shop: Bestellungen abholen, korrekten Variablennamen für Fehlermeldung
Optionale auftragszentrische Verknüpfte Belege
Konfigurierbar in der Mandantenkonfiguration. Unabhängig vomaktuellen Belegort werden die verknüpften Belege immer vom VK-Auftragaufgebaut
BankTransaction: Kreditorenvorlagen auch nach Namen sortiert
BankTransaction: Dialogbuchungsvorlagen sortiert nach Name
spellcheck test
CsvImport: Interface für zusätzliche Angaben beim Import immer speichern
Lagerbewegungsimport: Testfehler wg. undef vermeiden
Belege verknüpfen: auch nach Belegnummer filtern können
Auftrags-Controller: Warnung bei nicht vorhandener Kundenbestellummer …
… kann in der Mandantenkonfiguration eingeschaltet werden.
Auftrags-Controller: Warnung bei fehlendem Transportkosten-Artikel …
bei VK-Angebot und -Auftrag, wenn in der Mandanten-Konfiguration angegeben.
Employee::current statt manuell an weiteren Stellen
CsvImport Lieferscheine: Zusammenfassen von Lieferpositionen
Wenn in mehreren Positionen Teilmengen einer Position eines Auftragsgeliefert werden, dann diese Zusammenfassen.
CsvImport Lieferscheine: ShippedQty-Helper für Prüfung, ob komplett geliefert
PPI: Offenbar typo in Fehlermeldungstext
kam mit "Auch escapte DTVF Namen erkennen" rein.
PPI: Auch escapte DTVF Namen erkennen
Scheinbar kann die Kopfzeile des CSV-Format noch Hochkommatas enthaltenoder ggf. wurde diese mit einer Tabellenkalkulation geöffnet.
Auftrags-Controller: Reihenfolge Histore/Wiedervolage (Menüpunkt mehr) geändert
Ist nun so, wie in den anderen Masken (alte OE, Lieferscheine und Rechnungen)
Waren: Nur gültige Preisgruppen anzeigen
S:C:PayPostingImport Bei Erfolg, importierte Buchungen anzeigen
S/C/PayPostingImport Prototyp
Verarbeitet DATEV Lohnbuchungen aus einer CSV-Datei
DeliveryPlan: Berechnung nur noch über verlinkte Positionen
Auftrags-Controller: Debug-Statment raus
Developer Recht und neue Menüeinträge für Testcontroller
ImageUpload: nur mime-type image/* akzeptieren
ImageUpload: resolve
ImageUpload: local storage erste Version
MaterialComponents: modal test page
ImageUpload: erste Version
MaterialComponents Presenter
Erstmal für die wichtigsten Elemente:
- buttons- submit- input felder- icons
Zusammen mit einem Testcontroller zum rendern
Mobile Layout: Loginscreen für mobile User
Revert "ShopConnector get_part in WooCommerce implemented"
This reverts commit 875ae0f6f2ec3de097926910f64d9e6c214e0e82.
ShopConnector get_part in WooCommerce implemented
Auftrags-Controller: neuen Artikel aus Maske heraus anlegen können
S/C/BankTransaction Vorschlagsliste auch für Sammelüberweisungen berechnen
Part Controller: Aktion save_as_new wird nicht verwendet, sondern use_as_new
Part Controller: Kosmetik: einzelnes ';' weg
Auftrag-Controller: Aufträge manuell auf nicht-/geliefert setzen können.
Erzeugnisse: Gewicht aus einzelnen Bestandteilen ermitteln und speichern.
CsvImport: Aufträge: Modul SL::TransNumber wird nicht mehr gebraucht
zu "CsvImport Aufträge: Auftragsnummer nicht mit SL::TransNumber setzen, …"
CsvImport: Aufträge: Preise/Rabatte aus Preisquellen ermitteln, …
… wenn in der CSV-Datei nicht angegeben. Und Preisquelle auch setzen.
Csv-Import-Controller: Richtiges Feld f. Zeile bei Fehlermeldung des Csv-Helper
Evtl. war hier tatsächlich das erste Feld [0] gemeint, das wäre der"raw_input", aber der ist oft leer. Da ergibt die Zeilenummer mehr Sinn.
Revert "Csv-Import-Controller: Fehlermeldung des Csv-Helper mit ausgeben."
This reverts commit 63183d06c5d1631c93068ac4cd3b373b08714c31.
Neues Kundenattribut Rechnungsversand per Post -> Deaktiviert E-Mail für Rechnung
Zeiterfassung: als gebucht markieren: Manager-Methode update_all statt Schleife
Zeiterfassung: Eingabe: geschlossene Aufträge von bestehenden Einträgen anzeigen
Zeiterfassung: Im Bericht Einträge als gebucht markieren können, …
… wenn man das Recht hat, alle zu ändern.
Zeiterfassung: Auch beim Laden entsprechende Eingabe-Felder sperren:
- wenn Auftrag ausgewählt. so ist Kunde und Projekt gesperrt- wenn Projekt ausgewählt, und Projekt einen Kunden hat, so ist Kunde gesperrt
Zeiterfassung: Eingabe: keine Angebote in Auftragsliste anzeigen
E-Mail-Versand: CC an andere kivi-Benutzer per Auswahlliste
Zeiterfassung: Summe der Dauern mit Kontroll-Zeile anzeigen
S:C:H:ReportGenerator: Interface und Impmentierung von Kontroll-Zeilen
Es wurde eine Schnittstelle geschaffen, um Kontroll-Zeilen an denReportGenerator-Helfer zu übergeben.Umgesetzt sind Kontroll-Zeilen für einen Separator und für eigene Daten.
Zeiterfassung: Bei Projekten nur Projektnummer und Beschreibung anzeigen
Projekt-Picker: Stil der Beschreibung angeben können
dem Picker kann mit "description_style" mitgegeben werden, wie dieErgebnisse angezeigt werden. Mögliche Werte: "both", "number","description" und "full" (in SL::DB::Project->full_description)definiert).
Zeiterfassung: Bericht: Filter f. Auftragsnummer, Projekt und Beschreibung
Zeiterfassung: Eingabe: Einträge f. andere Mitarbeiter erlauben, wenn berechtigt
Hier reicht es, beim init_time_recording den Mitarbeiter für neue Einträgeauf den akuellten Bearbeiter zu setzen, wenn kein anderer Mitarbeiter aus derForm/Maske kommt.Die Rechte-Prüfung wird dann ohnehin im run_before-Hook 'check_auth_edit'...
Zeiterfassung: Placeholder-String im Template ermitteln
Zeiterfassung: Dauer und Min mit Attribut Placeholder vorbelegen
Zeiterfassung: Eingabe: Dauer auf 0 setzen können
Zeiterfassung: Eingabe: Aufträge nur mit Nummer und Kunden anzeigen
Zeiterfassung: Bei Projektauswahl ggf. Kunde daraus setzen
Wenn ein Projekt ausgewählt wird und dieses einen Kunden zugeordnet hat,so wird der Kunde daraus gesetzt und das Kunden-Feld gesperrt.
Wenn kein Projekt gewählt ist (oder eines wieder abgewählt wird,...
Zeiterfassung: Eingabemaske: Dauer auch in Stunden angeben können
Zeiterfassung: Controller: falsche Methodennamen korrigiert
Zeiterfassung: Eingabemaske und Bericht: Reihenfolge erst Projekt, dann Artikel
Zeiterfassung: Auftrag im Bericht anzeigen
Zeiterfassung: Auftrag auswählen können, Kunden und ggf. Projekt daraus setzen
Auftrag hat Vorrang und setzt Kunde und Projekt. Diese Felder sind danngesperrt.Wenn kein Auftrag gewählt ist (oder einer wieder abgtewählt wird,dann ist Kunde und Projekt wieder frei.
Zeiterfassung: Datum/Dauer statt Start/Ende wählbar (Benutzereinstellung)
Zeiterfassung: Erweiterung f. Datum und Dauer: DB-Upgrade/Rose; Berichtsanzeige
Zeiterfassung: Bericht: Titel auch im Browser-Titel
Zeiterfassung: Bericht: "gebucht" anzeigen und danach filtern können
Zeiterfassung: Artikel beim Erfassen wählen können und mit auflisten
Zeiterfassung: SimpleSettings für Artikel
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
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
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
WebshopApi: Controller/ShopOrder.pm ü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