Angebotsgüligkeitsintervall Caveat
Svens Überlegung das Intervall vor der Berechnung zu nehmen, hatte ich auch. Aber dann würde ich eherdie gesamte Routine umschreiben und die Berechnung nicht über einen SQL-Befehl machen, sondern mit Hilfevon SL/Locale.pm. Entsprechend nochmal den Hinweis in der Mandantenkonfiguration genauer gemacht.
Merge branch 'master' of github.com:kivitendo/kivitendo-erp
Changelog angepasst für neue Mandantenkonfigurationen
Erinnerung für Transport- oder Versandkostenartikel bei Angebot / Auftrag implementiertErweiterung: Mandantenkonfiguration um einen Standardartikel der auf Vorhandenseinüberprüft wird (oe). Falls nicht wird eine entsprechende Warnung ausgegeben.Verbesserungsmöglichkei 1: Artikelnummer per partpicker auswählen...
Form::round_amount: Perls Wissen über Stringifizierung nutzen
Perl weiß am besten, wann eine nicht ganz exakte Fließkommazahleigentlich eine für Menschen sinnvoll lesbare Fließkommazahl ist (alsodass mit 143.19999999999998863132 eigentlich 143.2 gemeint ist, wenn ich...
Whitespace entfernt
Konfigurierbares Angebotsgültigkeits-Intervall hinzugefügtStandardmässig ist ein Verkaufsangebot bis zum nächsten Werktag gültig.Dieses Intervall wird dann noch hinzugerechnet, bspw. nächster Werktag plus 14, 28 etc.Falls das Intervall nicht gesetzt oder wir nicht den Typ sales_quotation haben, passiert nichts....
zu gerade: Bessere Übersetzung für Delivery Order created
Beschriftung geändert: Lieferschein erstellt -> Lieferscheine(e) in kompletter Menge erstelltBetrifft Status delivered in oe, dieser wird erst gesetzt wenn die Liefermenge komplett erreichtist. Somit ist Lieferschein erstellt, eine bessere Bezeichnung für "geliefert" (da ja...
round_amount: Perls Repräsentationsalgorithmus fürs exakte Runden nutzen
Als Erläuterung paste ich schlicht den relevanten Teil des Kommentars,der nun auch in der Funktion steht:
Trying to round with more precision first only shifts the problem to rarer...
CsvImport/Parts: makemodels fix inidzieren
select_item: Belegmasken finden jetzt auch Warennummern aus makemodels
Außerdem die Präsentation von select_item angepasst, so dass ersichtlichwird woher die gefundenen Waren stammen.
CsvImport: Beim Import von makemodels die Reihenfolge richtig setzen
MakeModel: ActsAsList
ActsAsList: use Parameter zum Konfigurieren benutzen
Preisfaktoren: Bei neu anlegen auch das Inputfeld anzeigen
behebt #2494war in ba52ee60 kaputtgegangen
ParseFilter: with_objects merging bei Klassen mit Filtered Plugin
ParseFilter kennt 3 Quellen für with_objects Klauseln:
1. explizit übergebene2. aus dem Filter inferierte3. aus custom filtern gesetzte
Wenn nun ein Model das Custom Filter Plugin hat, muss bei jedem Filter...
locales.pl: Optional die Quelldatei von neuen Strings anzeigen
falls mal wieder ein String auftaucht, und man ihn einfach nicht findet
CustomerVendor: Spaltenüberschrift bei Sortierung richtig übersetzen
CustomerVendor: Picker nach Art von PartPicker
- reinit_widgets fähig- Tab und Enter atomar- unterstützt onChange und set_item:CustomerVendorPicker trigger- unterstützt fat_set_item
undefs für find_by berücksichtigen
all_parts um Namensoption des Kunden oder Lieferanten erweitertDer Name wurde im Backend IC.pm schon richtig übergeben, es scheintaber, dass dieser dann nicht mehr als Option angehakt war.Entsprechend auch eine Flash-Warnung auch ausgegeben, falls überhaupt...
hotfix für #10 Ansprechpartner auf ungültig setzen löst leeres Adressfeld beim Drucken ausbehebt (teilweise) #9 ggf. wäre es prinzipiell besser die customer_detailsauf rose umzuschreiben
SuSa - Summe per und Saldo auch bei abweichenden Geschäftsjahr berechnenFalls man eine Monats-SuSa zieht werden die Salden korrekt berechnet, allerdingswurde nicht ein abweichendes Geschäftsjahr berücksichtigt. Jetzt wirddas Startdatum wie in der Bilanz genommen, dass ist schon mal besser, allerdings...
netprice auf Anzahl von Nachkommastellen von sellprice runden
Es geht um die Anzeige der Einzelpreise von Positionen derDruckvorlagen.
Bisher wurde netprice hart auf 2 Nachkommastellen gerundet, was zuProblemen bei Subcentpreisen führte. Dies hatte den Effekt, daß z.B....
Doku zu Druckvariable netprice angepasst
if-Abfrage eindeutiger geschrieben und Variablenname klarer definiert
rp-patch
TaskServer: $::form->error und ::end_of_request() handhaben
Benutzerdef. Variablen in Belegen als Tabelle rendern ...
falsches Tabellen-Layout bei nicht editierbaren Variablen korrigiert.
Zu commit 25b855157fa65535683b458c1ca2dd0c3636b788Benutzerdef. Variablen in Belegen als Tabelle rendern ...
CsvImport: Fehler beim Speichern vom richtigem Objekt anzeigen.
Und "use English" (EVAL_ERROR) für bessere Lesbarkeit.
typos in ustva.htmlcloses #2464
Für LaTeX-Druckvorlagen (pipe) | -Symbol richtig anzeigen
Überprüfung auf makemodel bei mehreren Artikeln verbessertAktuell wird nur auf Werte beim ersten Eintrag bei makemodel überprüft.Falls es mehrere Werte und man den ersten Eintrag löschen will greiftdie Überprüfung nicht mehr. Entsprechend die Prüfung erweitert....
Pflichtenheftversionen: »PDF Downloaden« für Arbeitskopie-Eintrag gefixt
Pflichtenhefte: Tab-spezifisches Menü in gesamter Tab-Fläche erkennen
Pflichtenheftaufträge: Pauschalpos. in Ang./Auftr. erstellen können
Pauschalpositionen haben die Menge 1, als Einheit die Einheit desArtikels (und nicht »Stunden«) und als Preis den Gesamtpreis derAufwandsschätzung des dazugehörigen Abschnitts.
Pflichtenheftaufträge: beliebige Artikel auswählen können
Zusätzlich werden dann Spalten angezeigt, die die Einheit und den imAngebot/Auftrag verwendeten Positionstypen (Pauschalposition/Auwandsposition) angeben.
Pflichtenheftaufträge: Aktualisierung zusätzlicher Artikel implementiert
Pflichtenhefte: beim Erstellen von Aufträgen zus. Artikel anlegen
Pflichtenhefte: beim Kopieren, Einfügen zusätzliche Artikel berücksichtigen
Pflichtenhefte: zusätzliche Artikel zuweisen und bearbeiten können
SL::DB::Unit::compatible_units: alle Einheiten gecachet laden
Form->parse_template: notes nicht immer aus invoicenotes kopieren
Wenn ein Beleg über Rose-Model-Code zum Drucken vorbereitet wird, dannsteht in $form->{notes} bereits der richtige Wert, und denbelegspezifische Wert $form->{invoicenotes} gibt es gar nicht. Also auch...
Finanzübersicht: VerkäuferIn auch bei wiederkehrende Rechnungen beachten
Finanzcontrollingbericht: wiedk. Rechnungen vom Enddatum immer bis heute
Das konfigurierte Enddatum ist nur dann relevant, wenn diewiederkehrende Rechnung gekündigt wurde. Ansonsten wird sie automatischverlängert, sprich ein maximales Enddatum gibt es dabei nicht.
Wiederkehrende Rechnungen: Berechnung maximales Enddatum gefixt
Das konfigurierte Enddatum ist nur dann relevant, wenn diewiederkehrende Rechnung gekündigt wurde. Ansonsten wird sie automatischverlängert, sprich ein maximales Enddatum gibt es dabei nicht. Wir...
Einkaufs-/Verkaufsbelege: Spalte taxzone_id bereits beim INSERT befüllen
Ansonsten gibt es wegen der neuen NOT NULL-Restriktion einen Fehler.
Form->prepare_for_printing: output_*-Variablen als Fallback auf %myconfig-Werte setzen
Wenn für eine Sprache kein Ausgabeformat für Datum und/oder Zahlenfestgelegt ist, so muss hier der Wert der angemeldeten Benutzeringenommen werden, weil ansonsten die Werte falsch formatiert...
Wiederkehrende Rechnungen: Variable period_end_date gefixt
Das Periodenenddatum wird am Anfang der sub bereits richtig als »derletzte Tag innerhalb des Abrechnungszeitraumes« berechnet und darfhinterher daher nicht mehr auf den Monat abgeschnitten werden.
Bearb. Buchungsgruppen: Spalte taxzone_id in oe/delivery_orders konvertieren
1. Werte 0 und NULL durch neue ID für »Inland« ersetzen (oe, delivery_orders, ar, ap)
2. Spalte taxzone_id NOT NULL setzen (oe, delivery_orders, ar, ap)
3. Fremdschlüssel auf Tabelle tax_zones setzen (oe, delivery_orders)
locales: Fehlende Übersetzungen ergänzt
IBAN und BIC im Kunden/Lieferanten Detailfeld in Belegen anzeigen.
abweichende Lieferadresse für Lieferschein bei RB-Druckvorlagenanalog zu dem Commit von gerade. Hier auch die abweichende Lieferadressebeachten. erledigt #2
RB-Druckvorlagensatz: abweichende Lieferadresse für Kunden- Lieferantenauftragentsprechend shipto ergänzt
Bei Kundenauftrag > Lieferantenauftrag Zahlungs und Lieferbedingungen löschenZahlungs- und Lieferbedingungen aus dem Kundenauftrag zu übernehmen machti.d.R. keinen Sinn, da diese ja vom Lieferanten definiert werden.S.a. Ticket 1 in Redmine und fixes #1
Wechselkurs-Inputfeld bei Debitorenbuchung richtig aufrufen
Wechselkurs verschwand immer, L.input_tag korrekt aufrufen
typo in ustva
PgUpgrade: nicht während eines Upgrades commiten
Merge branch 'cvar_partsgroup_filter'
changelog-Eintrag zu neuen Features bei benutzerdefinierten Variablen.
Warengruppen-Filter f. CVars bei Waren
cherry-pick aus Kundenprojekt und Anpassungen an unstable (hauptsächlichUmstellung auf Controller)
Conflicts:
SL/CVar.pm SL/DB/CustomVariableConfig.pm bin/mozilla/amcvar.pl bin/mozilla/io.pl...
PartPicker: Tab Event atomar, visuelles Feedback
Nach dem Löschen von einer CVar wieder die Liste des entspr. Moduls anzeigen.
Steuerzone - neue Customer/Vendor-Objekte brauchen Steuerzone
Durch den not-NULL Constraint bei Kunden und Lieferanten mußbeim Anlegen eines neuen Objekts nun zwingend die Steuerzone mitübergeben werden, ähnlich wie bei der Währung.Dies wurde bei einigen automatischen Tests nachgeholt.
test.pl: --fast switch, skippt 001compile und 003safesys
Rechtschreibfehler in RB Druckvorlagen behoben
CsvImport: Bei Imports ohne cvars nicht die cvars klobbern.
PartPicker: Im Popup dem letzten Suchstring übernehmen
Spaltenzahl f. benutzerdef. Variablen in Belegen in Benutzereinstellungen ...
.. angeben können. Default ist 3.
... im Moment mit fester Spaltenzahl.
Benutzerdef. Variablen f. Waren per Voreinstellung für Belege aktivieren/deaktivieren.
Steuerzone - korrekter Name von Warenbestand in Template
convert_taxzone - Fall keine Buchungsgruppen berücksichtigen
Für den Fall, daß in dem Mandanten gar keine Buchungsgruppenkonfiguriert sind (z.B. bei einem frischen Schweizer Kontenrahmen), wirddie Umwandlung der Buchungsgruppen übersprungen.
Steuerzone - Sortierreihenfolge bei Customer/Vendor
Sortierreihenfolge im Dropdown bei den Stammdaten einhalten.Dadurch ist die Steuerzone mit der höchsten Sortierpriorität immer alsDefaults bei neuen Kunden/Lieferanten eingestellt (standardmäßigInland).
Steuerzone: in Upgrade-Datei customer/vendor angepasst
Macht man eigentlich nachträglich nicht, aber da das Update noch sofrisch ist...
Beim Umstellen von taxzone wurde vergessen, auch die Einträge derStandardsteuerzone bei den Kunden und Lieferanten anzupassen. Im Zuge...
Nachtrag Steuerzone - Tests angepasst
Typo-Fix und kleine Verbesserungen in deutscher Übersetzung.
L.radio_button_tag: id erhalten wenn sie schon vorher gesetzt ist.
Installcheck: Version von Archive::Zip korrigiert.
CsvImport - Part : Anpassung für neue Steuerzonen
statt income/expense_accno_id_0 werden jetzt bei importiertenWaren/Dienstleistungen die Konten-IDs der Standardsteuerzone verwendet.(Wobei die genau ID ja egal ist, wichtig ist, ob etwas gesetzt ist).
Buchungsgruppe anlegen/bearbeiten/anzeigen - Logik umgestellt
3 Fälle in Maske berücksichtigen:
Steuerzone in price_tax_calculator.t angepasst
Neue Methode orphaned für Buchungsgruppe
Zum Prüfen, ob eine Buchungsgruppe gelöscht oder bearbeitet werden kann.
Fehlende MetaSetup Dateien für Steuerzonenupdate
Console Shortcut für chart (analog zu part)
DB Code für Buchungsgruppe und TaxzoneChart aufgeräumt
In SL::DB::Manager::Buchungsgruppe die Methoden inventory_accno undinventory_accno_description entfernt, da hier einfachinventory_account->accno und inventory_account->description benutztwerden können.
Beim Erfassen von Steuerzonen Standardkonten verwenden
Vorauswahl von Erlös- und Aufwandskonten laut Mandantenkonfiguration.Im Gegensatz zum Anlegen von Buchungsgruppen kann bei der Steuerzonekein Bestandskonto konfiguriert werden, da dies nur von derBuchungsgruppe abhängt.
Buchungsgruppen - löschen und beim Erstellen Standardkonten benutzen
Wenn eine Buchungsgruppe noch nicht einer Waren zugeordnet ist kanndiese noch bearbeitet (Kontenzuordnung) oder gelöscht werden.
Beim neu Erstellen von Buchungsgruppen werden die Standardkonten aus der...
Steuerzone - Default eingeführt (statt id 0)
Als Defaultsteuerzone gilt nun die Steuerzone mit dem höchsten Sortcode, dernicht obsolet ist (in der Regel also id 1).
Bernd hatte noch ein paar Stellen gefunden, wo als Default 0 gesetzt wird.Außerdem Doku angepasst, taxzone_id ist nun nicht mehr im Bereich 0-3.
Nachtrag zu Steuerzonen: benutzte Klassen mit require einbinden.
Steuerzonenfeature - tags auf Version 3.1.0 anpassen
Changelog Eintrag für konfigurierbare Steuerzonen
Steuerzonen ungültig machen
jede Steuerzone kann man unter "System->Steuerzonen->auf Steuerzone klicken" individuell auf ungültig (obsolete) setzen.
ungültig heißt:
Änderung von Upgrade-Script change_taxzone_id_0
Die Tabellen ar und ap werden jetzt auch an den ID-Wechsel angepasst.
Weiterhin werden 2 Fremdschlüssel gesetzt, die durch den Wechselaufgefallen sind.
Sortieren von Steuerzonen in Belegen
Die Sortierreihenfolge von Steuerzonen in Belegen wurde bisher nochnicht in den Belegen berücksichtigt.