Trigger check_inventory entfernt
Wird in dieser Form schon seit der 2.4 nicht mehr benötigt (kein Auslagern über oe).
Brieffunktion erste Version
Verkaufsbriefe können jetzt auch mit LaTeX erstellt werden.Ferner gibt es eine Briefentwurfs-Funktion, die aussieht wie drafts, aberzumindestens auf einer eigenen Tabelle beruht. Zusätzlich wurden zwei neue Rechtegesetzt
Auslagern in VK-Rechnung: Neue Datenbank-Felder, Rose u. Mandantenkonfiguration
Spalte »nicht gelieferte Menge« in Aufträgen optional anzeigen
Pflichtenhefte: bendef. Var. beim Löschen des Pflichtenheftes via Trigger löschen
Wiederkehrende Rechnungen: Auftragswerts-Periodizität setzen können
Noch keine Anpassung der eigentlichen Berechnung. Wohl aberDokumentation von SL::DB::PeriodicInvoicesConfig.
Einkauf/Verkauf: Bemerkungsfeld mit HTML-Editor ausgestattet
Datenbankupgradescript für Release 3.2.0
Bessere Erklärung für Upgrade-Skript bei DB-Anomalien
Ausgelagerte Lieferscheine wurden wahrscheinlich, hart gelöscht
Schreibfehler in Kommentar verbessert (jetzt aber).
Schreibfehler in Kommentar verbessert.
Schreibfehler in Kommentar korrigiert.
Item-Positionen für Rechnungen in DB: DB-Upgrade-Skript; Rose
Positionen der Artikelzeilen für Rechnungen in der Datenbank speichern.
deliver_order_items_id mit inventory verknüpft
Falls Lieferscheine Warenbewegungen auslösen, sind jetzt auch die einzelnen Position "rückverfolgbar" und nicht nur der Beleg. Entsprechende Fremdschlüssel gesetzt
Merge branch 'master' of github.com:kivitendo/kivitendo-erp
Abhängigkeit in DB-Skript ergänzt
Upgradeskript-Abhängigkeiten geändert
unit_foreign_key_for_line_items muss nach oe_do_delete_via_trigger ausgeführtwerden, sonst werden die Fremdschlüssel wieder gelöscht.
typo in kommentar
Angebots-Position mit Auftragsposition verknüpft (orderitems -> orderitems)
Angebot -> Workflow Auftrag
- from_table -> to_table (tabelleneintrag) i.O. - delete trigger i.O. - mittlere position löschen (vor speichern) i.O....
Item-Positionen in DB: DB-Upgrade-Skript; Rose
Positionen der Artikelzeilen für Angebote/Aufträge und Lieferscheine mitin der Datenbank speichern.
PriceRule: Preisregeln können jetzt auch Rabatte
ausserdem Doku
PriceRule: Löschen von Preisregeln
PriceRule: Erste Version
PriceSource: Rabattbehandlung
PriceSource: Konfiguration
PriceSource: db upgrade erst nach 3.1.0 einspielen
PriceSource: pricegroup migration
PriceSource: Erste Version
- Preisgruppen und Stammdaten sind implementiert- Persistenz in allen Belegen funktioniert- Rudimentäre Visualisierung funktioniert- Klassen sind alle da
- Doku fehlt- Verkauf/Einkaufweiche fehlt- best_price ungetestet- Preisgruppen hängen noch nicht von Verkäufer ab...
Benutzerdefinierte Variablen via Trigger löschen Bugfix 2
Die Triggerfunktion selber sollte aus Performancegründen nicht »DELETE …WHERE … IN (SELECT…)« nutzen, da dies bei PostgreSQL sehr langsam ist.
CVars-Lösch-Queries deutlich effizienter gestaltet
PostgreSQL kann Queries à la »DELETE … WHERE … IN (SELECT…)« nicht gutoptimieren und erzeugt dafür exponentielle Laufzeit. Viel schneller ist,eine Vorselektierung mit normalen JOINs zu nutzen und nachher beim...
Redundante Trigger zum Aufräumen nach Löschen von Kunden/Lieferanten entfernen.
Diese Trigger sind nicht nur doppelt, sondern auch falsch, da sie "module" in"shipto" nicht berücksichtigen, was dazu führen kann, das in Belegen individuellvergebene Lieferadressen gelöscht werden, wenn ein Kunde oder Lieferant gelöscht...
Redundante Upgrade-Skripte zum Löschen von CVars via Trigger entfernt.
Nicht gelöscht, sondern "geleert" und ein weiteres Skript zum Löschender Trigger und Funktionen.
Upgrade-Scripte zum Löschen von CVars via Trigger beschleunigt.
In den queries, die vor dem Installieren der Trigger die DB aufräumen,"NOT IN" durch "NOT EXISTS" ersetzt.
Hintergrund-Info ist hier zu finden:http://explainextended.com/2009/09/16/not-in-vs-not-exists-vs-left-join-is-null-postgresql/...
Gloable BCC Adresse
Benutzerdefinierte Variablen via Trigger löschen Bugfix
Die ID-Spalte heißt in der contacts-Tabelle cp_id und nicht id.
Pflichtenhefte vordef Textblöcke: Verwaltung Flags »benutzbar für…«
Erweiterung Lieferplan Belege wirklich ausgelagert und Warenverkaufswert (default: aus)
Erweiterung Mandantenkonfiguration im Bereich Lager zum Einschalten vona) WarenverkaufswertFalls aktiviert erscheint eine neue Spalte im Lieferplan, die den Wert der...
Transportkosten-Erinnerungs-Artikel auf ID anstatt partnumber umgestellt
Ggf. kann partnumber nicht eindeutig sein. Ferner find ich den partpickerals Auswahlelement viel cooler und anwenderfreundlicher als ein reinesTextfeld.
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...
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....
Pflichtenhefte: zusätzliche Artikel zuweisen und bearbeiten können
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)
PgUpgrade: nicht während eines Upgrades commiten
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...
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: 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...
Steuerzonenfeature - tags auf Version 3.1.0 anpassen
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.
id ungleich Null setzen in tax_zones
In der Tabelle tax_zones gibt es sehr häufig noch Einträge mit id=0.Dadurch kommt es bei der Anzeige, und auch beim Bearbeiten diesesEintrags zu fehlern. Dieser Commit vergibt verändert den Wert derid, s.d. die id einen von 0 verschiedenen Wert hat.
Steuerzonen und Buchungsgruppen bearbeiten
Nachdem man Steuerzonen und Buchungsgruppen auf Datenbankebenebearbeiten kann, ist jetzt auch eine Bearbeitung an der Ober-fläche möglich.
Alter Code, der für die Anzeige/Bearbeitung/Erstellung vonBuchungsgruppen entwickelt wurde hat nicht mehr funktioniert...
Auf Datenbankebene Steuerzonen konfigurierbar gemacht
Damit können jetzt mehr als die 4 Standardsteuerzonen eingerichtetwerden. Die bisherigen Steuerzonen wurden aus der Tabellebuchungsgruppen in die neue Tabelle taxzone_charts ausgelagert.
Konzeption siehe Ticket #2295...
Mandantenkonfiguration erweitert:Dienstleistungen NICHT automatisch AuslagernStandardmässig werden Dienstleistungen wie Waren und Erzeungnisse behandelt undso auch beim Standard-Auslager-Verfahren. Entsprechend die Mandantenkonfiguration (defaults)angepasst.
Hintergrundjob zum Löschen abgelaufener Sessions
DB-Trigger, um sicher zu stellen, dass ein Lagerplatz auch zum Lager gehört.
Betrifft #2485.
Spaltentyp Text anstelle von varchar() in diversen Tabellen Teil 3
Spaltentyp Text anstelle von varchar() in diversen Tabellen Teil 2
Tabelle »shipto«
Verkaufsbelege: optional nur Projekte des Kunden anbieten
Auch dieses Feature kann über die Mandantenkonfiguration eingeschaltetwerden.
Angebote: neue Felder Auftragswahrscheinlichkeit, Voraus. Abrechnungsdatum
Einkaufs-/Verkaufsprozesse: optionale Einschränkungen für gewisse Aktionen
Über die Mandantenkonfiguration kann verboten werden, dass gewisseAktionen in den Einkaufs- und Verkaufsprozesse durchgeführtwerden. Diese sind:
- Direkte umwandlung von Verkaufsangeboten und -aufträgen in...
Einkauf/Verkauf: Eingabe der Vorgangsbezeichnung optional erzwingen
Wird über eine Option in der Mandantenkonfiguration eingeschaltet.
Spaltentyp Text anstelle von varchar() in diversen Tabellen
CVars: Einträge beim Löschen dazugehöriger Belege automatisch löschen
Lange Datenbankfelder bei bestimmten Lieferantenfeldern
Analog zu Commit 72ad92fd die Feldlänge bei bestimmten Datenbankfeldererhöht (vorher varchar, jetzt text)account_number bank_code ustid name contact
Pflichtenheft-HTML-DB-Upgrade: keine falsche Op beim String-Sortieren
Bankkonten einen Namen geben
Damit kann man seinen Bankkonten einfache Namen geben, wie z.B."Tagegeld", damit man bei der Auswahl nicht immer genau auf dieKontonummer achten muß.
Bei der Bankkontenauswahl in Dropdowns ist die Beschriftung jetzt imFormat:...
Merge branch 'pflichtenhefte'
Conflicts: js/locale/de.js
Wiederkehrende Rechnung: Option "erste Rechnung erzeugen am"
Bisher nur die Masken; noch nicht im Backgroundjob implementiert
Pflichtenhefte: type_id darf nicht NULL sein
Datenbankupgradeabhängigkeiten bzgl. project_status gefixt
Tabelle »project_status« in »project_statuses« umbenennen
Im Englischen ist der Plural von »status« nun einmal»statuses«. Außerdem heißen die Tabellen in Legacy-Bob-Code ebenfalls»project_statuses«.
Projekte: Status zum Pflichtfeld gemacht
Projektstatustabelle mit Standardeinträgen bestücken
Datenbankupgrade für Spalten, die nun HTML enthalten können/sollen
Pflichtenhefte: Nummerierungsformate zu Typen verschoben & bearbeitbar gemacht
Pflichtenhefte: PL/PgSQL-Funktion erst droppen, dann anlegen, wenn Parameter umbenannt werden
Ältere PostgreSQL-Versionen konnten auch mit einem 'CREATE OR REPLACEFUNCTION...' noch Funktionsparameter umbenennen. Das können neuerenicht mehr. Daher zuerst droppen und dann anlegen.
Pflichtenhefte: Unterstützung für an Textblöcke angehängte Bilder
Pflichtenheftversionen: Datenbankstruktur zu Pflichtenheften geändert
requirement_specs.version_id wurde durchrequirement_spec_versions.requirement_spec_id undrequirement_spec_versions.working_copy_id ersetzt.
Pflichtenhefte: Falscher Spaltenname
Pflichtenheftzeitschätzung: DB-Update-Trigger-Fix 2
Pflichtenhefte: Druckvorlagendateinamen bei Pflicthenhefttypen festlegen können
Pflichtenhefte: ein Index für requierment_spec_items.item_type
Pflichtenhefte: Lösch-Trigger fixen
Wenn ein Pflichtenheft gelöscht wird, darf der Trigger zum Updaten derZeitschätzung nicht in das zu löschende Pflichtenheft schreiben --aufgrund eines unlustigen Bugs in PostgreSQL. Analog zu denItems. Also verhindern, dass etwas getan wird, wenn das Pflichtenheft...
SQL-Upgrade-Abhängigkeiten gefixt
Pflichtenheft-Angebot/Auftrag: DB-Schema & Models
Defaultwerte für itime-Spalten fixen
time_estimation in Sections richtig aktualisieren & in Pflichtenheften einführen
Standardstundensatz in Tabelle defaults speichern, nicht in Konfigurationsdatei
Unterstützung für andere Datenbankencodings als Unicode/UTF-8 entfernt – Teil 2
requirement_specs_print_templates.pl: Anpassung auf Mandantenumstellung
Pflichtenheftabschnittsvorlagen erzeugen, bearbeiten, löschen
Projekte: Attribute aus Bob
Pflichtenhefttrigger: rekursives Löschen darf kein UPDATE auf zu löschende Elemente ausführen
Weil PostgreSQL das momentan nicht kann. Hat man einen BEFOREDELETE-Trigger, der (auch über Umwege) ein UPDATE auf diejenige Zeilemacht, die im BEFORE DELETE gelöscht werden soll, so kommt PostgreSQL...
Pflichtenhefte: PDFs zu Arbeitskopie und Versionen erzeugen
Pflichtenhefttextblöcke (DB): Spalte "is_flagged"
Pflichtenhefte: Datenbankschema und Rose-DB-Models
Merge branch 'von-opendynamic'
Conflicts: SL/DB/MetaSetup/InvoiceItem.pm
Datenbankupgradescript für Release 3.1.0
Lieferscheine -> Rechnungen wandeln: Lieferscheinnummer in jeder Rechnungsposition speichern
Dies geschieht analog zu invoice.ordnumber als invoice.donumber. InDruckvorlagen steht sie als Variable donumber_do zur Verfügung (auchdies angelehnt an invoice.ordnumber, die als ordnumber_oe zur...
Fremschlüssel für »unit« in Tabellen orderitems, delivery_order_items, invoice