Jan Büren [Mon, 2 Aug 2021 07:55:45 +0000 (09:55 +0200)]
Falls der WF Auftrag -> Lieferschein genutzt wird, min. 1 Position übernehmen
Damit auch wirklich der Geliefert Status pro Position korrekt
gesetzt werden kann, muss mindestens eine Position aus dem Original-Auftrag
im Workflow vorhanden sein.
Texte Mandantenkonfig f. Option "Dokumente hinzufügen" geändert, …
… damit deutlich wird, dass bei Dialog-, Kreditoren- und Ek-Rg-Buchung
in den Dokumenten-Tab gesprungen und bei Debitorenbuchung in
der Maske geblieben wird. Debitorenbuchung hat keinen Dokumenten-Tab.
Ek-Rg: verschiedene Buchungs-Aktionen je nach Mandantenkonfig
- DMS aus: Verhalten wie zuvor
- DMS an und "Dokumente für Dialogbuchung hinzufügen" eingestellt:
"Buchen" bucht und führt im selben Beleg zum DMS-Tab.
- DMS an und "Dokumente für Dialogbuchung hinzufügen" ausgestellt:
"Buchen" (Haupt-Aktion) bucht und führt zum selben Beleg (wie vorher).
Es gibt eine zweite Aktion "Buchen und Dokument hochladen". Diese bucht und
führt im selben Beleg zum DMS-Tab.
Kreditorenbuchung: verschiedene Buchungs-Aktionen je nach Mandantenkonfig
- DMS aus: Verhalten wie zuvor
- DMS an und "Dokumente für Dialogbuchung hinzufügen" eingestellt:
"Buchen" (Haupt-Aktion) bucht und führt im selben Beleg zum DMS-Tab.
Es gibt eine zweite Aktion "Buchen und neue Buchung". Diese bucht und
führt zu einer leeren Buchungsmaske
- DMS an und "Dokumente für Dialogbuchung hinzufügen" ausgestellt:
"Buchen" (Haupt-Aktion) bucht und führt zu einer leeren Buchungsmaske.
Es gibt eine zweite Aktion "Buchen und Dokument hochladen". Diese bucht und
führt im selben Beleg zum DMS-Tab
Dialogbuchung: verschiedene Buchungs-Aktionen je nach Mandantenkonfig
- DMS aus
nur "Buchen" bucht und führt zu einer leeren Buchungsmaske
- DMS an und "Dokumente für Dialogbuchung hinzufügen" eingestellt:
"Buchen" (Haupt-Aktion) bucht und führt im selben Beleg zum DMS-Tab.
Es gibt eine zweite Aktion "Buchen und neue Buchung". Diese bucht und
führt zu einer leeren Buchungsmaske
- DMS an und "Dokumente für Dialogbuchung hinzufügen" ausgestellt:
"Buchen" (Haupt-Aktion) bucht und führt zu einer leeren Buchungsmaske.
Es gibt eine zweite Aktion "Buchen und Dokument hochladen". Diese bucht und
führt im selben Beleg zum DMS-Tab
Debitorebuchung: Redirects nach Buchen aufgeräumt …
- kein redirect nach redirect_header. redirect schickt ruft auch
redirect_header auf, prüft aber, ob schon ein header geschickt wurde
und bricht dann ab.
- Verbesserte Info-Ausgabe mit Rechnungsnummer.
Kreditorenbuchung: Redirects nach Buchen aufgeräumt …
- kein redirect nach redirect_header. redirect schickt ruft auch
redirect_header auf, prüft aber, ob schon ein header geschickt wurde
und bricht dann ab.
- Verbesserte Info-Ausgabe mit Rechnungsnummer.
Hinweis: callback und redirect mit Fragment geht (noch) nicht, da bei
redirect die callback-Parameter recht simple geparsed werden, um diese
in der Session zu hinterlegen. Das berücksichtigt das Fragment nicht.
- nicht in der transaction-subroutine, sondern in der Aktion, wo auch das
redirect für den "Normal-Fall" schon war. Damit sind die Redirects an
einer Stelle.
- kein redirect nach redirect_header. redirect schickt ruft auch
redirect_header auf, prüft aber, ob schon ein header geschickt wurde
und bricht dann ab.
- Einheitliche Info-Ausgabe.
Hinweis: callback und redirect mit Fragment geht (noch) nicht, da bei
redirect die callback-Parameter recht simple geparsed werden, um diese
in der Session zu hinterlegen. Das berücksichtigt das Fragment nicht.
Sven Schöling [Fri, 14 May 2021 11:47:46 +0000 (13:47 +0200)]
Layout: Javascript Menü refactoring
Das Javascript Menü war noch in einem Zustand aus der Anfangszeit von
SL::Layout. Diese Änderungen teilen das in ein Main Layout (Javascript)
und ein sub layout für das DHTMLMenu.
Das DHTMLMenu Layout ist außerdem ein wenig optimiert. Es benutzt jetzt
nicht mehr ein template sondern baut das DOM direkt zusammen (spart im
hot path einen template aufruf und ist um faktor 5 schneller), und
ausserdem werden die -f checks auf die icon Dateien jetzt mit
SL::System::ResourceCache gecacht, so dass nicht für jeden Request ein
paar Duzend stat() gemacht werden müssen.