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...
Merge branch 'master' of github.com:kivitendo/kivitendo-erp
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.
Neuer Bericht: LieferwertberichtErweiterung DeliveryPlan.pm um Modusweiche Lieferplan oder LieferwertberichtImplementierungstand Lieferwertbericht: - Alle offenen Verkaufsaufträge werden berücksichtigt - Beim CSV-Export wird die Einheit als Extra-Spalte exportiert und die...
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«.
Pflichtenhefte: eigenes Recht einführen
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
Benutzerdefinierte Variablen: Indizes für Tabelle custom_variables_validity
SQL-Upgradeskript für Bilanz Startatum vergessen
Neues Feld Firmensignatur in Mandantenkonfiguration
Seit der Umstellung auf die Mandantenfähigkeit gab es für einen Benutzernur eine einheitliche E-Mail Signatur in allen Mandanten. Dadurch konnteman keine firmenindividuellen Signaturen einsetzen. Ab jetzt kann man...
Kleinere DB-Details (Fremdschlüssel und verwaiste Tabelle) - audittrails wird nicht mehr benutzt
Revert "Kleinere DB-Details (Fremdschlüssel und verwaiste Tabelle)"
This reverts commit d0118dc6303e04507a77f3dde2c2bf0565ecb388.
Kleinere DB-Details (Fremdschlüssel und verwaiste Tabelle) - audittrails wird nicht mehr benutzt - Fremdschlüssel für employee id für auch für salesman in customer / vendor
Validierung eingegebener Kunden- und Lieferantennamen konfigurierbar gemachtFerner Konfigurationsvorbereitung für die Umsetzung von Ticket 2011 (Validierung von part.notes und part.descriptions)
Übersetzungen von Steuern löschen, wenn Steuer gelöscht wird.
Via Trigger. Außerdem löscht das Update-Skript alle verweisten Übersetzungender Steuern.
Übersetzungen von Lieferbedingungen löschen, wenn Lieferbed. gelöscht wird.
Via Trigger. Außerdem löscht das Update-Skript alle verweisten Übersetzungender Lieferbedingungen.
Übersetzungen von Zahlungsbedingungen löschen, wenn Zahlungsbed. gelöscht wird.
Via Trigger. Außerdem löscht das Update-Skript alle verweisten Übersetzungender Zahlungsbedingungen.
Behebt #2390.
Bugfix für 2275 Verkäuferinformationen im Druck kommen aus der Authdatenbankcloses #2275Hat leider einen kleinen "Rattenschwanz":a) Beim Löschen des Benutzer wird nur deleted auf true gesetzt, jetzt werden auchalle weiteren benutzereditierbaren Metadaten gespeichert, dafür ->...
typo: Lieferplan Recht richtig setzen
Feld ar.datepaid bei durch SEPA-Zahlungen nachträglich richtig setzen
Behebt #1925.
Österreichischen Kontenrahmen gelöscht
Wirft beim Erstellen SQL-Fehler, wird nicht gewartet, wurde seit 10Jahren nicht mehr angefasst.
Behebt #1655.
Merge branch 'sepa-fixes-2320'
Behebt #2320.
SEPA: Feld »Signaturdatum«; Bearbeiten der Felder in Stammdatenmasken; Speichern in sepa_export_items
Noch mehr Trigger für Benutzervariablen
Beim Löschen von Projekten, Ansprechpersonen, Kunden, Lieferanten,Waren, Erzeugnissen und Dienstleistungen werden jetzt auch diebenutzerdefinierten Variablen gelöscht.
Eigenes Recht für Lieferplan und "sales_all_edit" berücksichtigen
Kunden Mandanten ID fuer SEPA Lastschrift implementiert.
Zusatzspalten fuer Kontoinhaber
Merge branch 'skr04-steuerschluessel-10-11-ohne-steuersatz-2130'
SKR04: beim Anlegen Steuersatz für Steuerschlüssel 10 und 11 hinterlegen
Siehe #2130.
Benutzer-Variablen aus Aufträgen/Lieferscheinen/Rechnungen löschen
Wenn man Aufträge/Lieferscheine/Rechnungen löscht, werden jetztzugehörige benutzerdefinierte Variablen gelöscht.
Fixt #2347.
Ordentliche Beschreibung zu DB-Upgrade