Version 4.2.5

Changelog (Release)

Die Version 4.2.4 wurde initial im Dezember 2023 veröffentlicht.

Bitte beachten Sie die folgenden Hinweise zu diesem Update

Für Betreuer

  • Denken Sie daran, das SqlUpdate für die installierten cardo4 Anwendungen aufzurufen (wenn das Monitoring aktiviert ist, wird dies bei korrekter Konfiguration selbständig ausgeführt).

  • Die Änderungen in Iwan7 sind recht umfangreich, wir empfehlen das Changelog zu Iwan7 ab Version 7.6.6 zu beachten. Von Interesse könnten auch die Informationen zum Caching in Iwan7 sein.

  • Sollten Versionen übersprungen worden sein, informieren Sie sich im Changelog auch zu den Hinweisen der vorherigen Version(en)

  • Wenn die Anwendung "ALKIS.Pro cardo4 Tools" in cardo4 installiert ist (das ist der Such-Provider für ALKIS Daten), dann muss die Anwendungskonfiguration dort aktualisiert werden.

  • Die Einstellungen für die Selbstregistrierung von Benutzern wurden geändert (siehe weiter unten).

Für Entwickler

  • Sie sollten auf die TypeScript Version 5.3 aktualisieren.

Januar 2024

Release 4.2.5.57602 (11.01.2024)

  • Fix: Der Extent der Übersichtskarte im Ausdruck war u.U. nicht korrekt (in Verbindung mit nicht-metrischen Koordinatenbezugssystemen (bspw. OSM)) (#8807).

  • Fix: Das Exportieren von Ebenen, die aus dem Datenbrowser aus Datenbanken geladen wurden, war nicht möglich (#8700).

  • Neu: Die Datenübertragung im Modul c2c wurde überarbeitet.

    • Es wird jetzt pro Ebene eine Transaktion gestartet, bisher eine Transaktion für den gesamten Vorgang. Wenn Fehler an einer Ebene auftreten, ist der "Rest" damit trotzdem auf dem Zielserver verfügbar.

    • Es gibt eine neue Option zum Übertragen der Map-Tip Einstellungen (die cardo3-Maptips, nicht cardo.Map)

    • Fix: Behebung des Fehlers: Uncaught TypeError: Cannot read properties of null (reading 'contentLayer'). Dieser trat auf, wenn der Maptip einer Iwan6 Ebene angefordert wurde, nachdem bspw. die Symbolik angepasst wurde.

  • Fix: Benutzerverwaltung in cardo4:

    • Änderungen in der Benutzerverwaltung im cardo4 hatten keine direkte Auswirkungen auf den Memberprovider, wenn Tags vergeben wurden. (#9296).
    • Das Leeren von E-Mail-Adresse und Tags in der Benutzerverwaltung war bisher nicht möglich.
  • Fix: Im Themenbaum führte die Suche zu merkwürdigen Ergebnissen, wenn der Suchbegriff mit "L" begann (#8961).

  • Fix: Fehlerbehebung in der Metadatenrecherche, wenn ein WMS oder WFS Dienst zum Themenbaum hinzugefügt wurde.

  • Fix: Beim Export über die Sachdatenanzeige kam es unter bestimmten Umständen dazu, dass DateTime Werte mit einer Abweichung von ein oder zwei Stunden ausgegeben wurden (Lokale Zeit/UTC).

  • Fix: In folgender Konstellation konnte es zu einem Skriptfehler der Art "Uncaught Typeerror: cannot read properties of undefined ..." beim Öffnen von "Mein cardo" kommen:

    • ein Benutzer wurde umbenannt, dieser hatte einen eigenen Ordner mit einem eigenem Dokument in meine Struktur gespeichert,
    • es wurde ein neuer Nutzer mit dem gleichen Namen wie der zuvor umbenannte erstellt,
    • das Dokument welches in dem ursprünglichen Ordner des "alten" Benutzer ist, wird per Freigabe an den neuen Nutzer zugeteilt.

Dezember 2023

4.2.5 (17.12.2023 )

Karte

  • Fix: Die IwanLabelLayer passen nun deren Sichtbarkeit entsprechen zum Eltern-Element an. (#8976)

  • Neu: Unterstützung von WMS-Ebenen mit Dimensionen für die Verwendung der "Animation".

    WMS-T

    Die Sub-Layer mit Dimensionen sind mit einem Uhr-Symbol markiert.

  • Neu: MapTip auf Iwan7 WMS Layer liefern, je nach Dienst, jetzt strukturierte Daten als Sachdatentabelle zurück (bei GeoJSON Feature-Collections).

  • Neu: Animationen von Ebenen mit Dimensionen können nun rückwärts abgespielt werden.

    Animation

  • Neu: Der Farbauswahldialog wurde überarbeitet. Es gibt jetzt eine Auswahl vordefinierter Farben.

    Farbauswahldialog

Themenbaum

  • Fix: Beim Klick auf den ClearButton im Suchfeld (das "Kreuz") wird die Selektion entfernt und springt nicht mehr zum vermeintlich nächsten Ergebnis. (#8546)

Datenbrowser

  • Neu: Es erfolgt jetzt eine striktere Überprüfung für Datei- und Ordnernamen, so sind bspw. keine Namen mit Leerzeichen am Anfang oder Ende mehr zulässig.

    Der Fehlertext selber ist aus Sicherheitsgründen nur allgemein gehalten, weitere Details sind im angeschlossenen Monitoring System hinterlegt.

  • Neu: An einem Dateiordner ist jetzt die neue Option "Übersichtsebene der Bilddaten erstellen" vorhanden.

    Übersichtsebene

    Es wird dabei eine Ebene erstellt, die alle verortbaren Dateien aus diesem Ordner (rekursiv) enthält. Die Geometrie ist die BBox der Datei. Siehe auch Iwan 7 Ebenentyp "Verortbare Dateien".

    Übersichtsebene

    In der Sachdatenanzeige der Ebene (und damit auch im MapTip, wenn genau ein Datensatz getroffen wurde) steht dann direkt die Aktion zum Laden der Rasterdatei als Ebene in die Karte bzw. die "Anzeige" (=Download) bereit.

  • Neu: Beim Laden einer OGC WMS-Ebene wird jetzt der neue Iwan7 Ebenentyp verwendet.

  • Neu: Die aus dem Datenbrowser geladenen Ebenen verfügen jetzt über die Information des Speicherorts. Im Kontextmenü der Ebene ist dann jeweils die Aktion "Speicherort der Quelldatei anzeigen" vorhanden.

    Übersichtsebene

  • Neu: Ordner oder Dateien, zu denen eine Ebene geladen ist, werden mit einem besonderen Symbol markiert. Beim Neuladen der Anzeige bleibt die Information jetzt erhalten.

    Datenbrowser

  • Neu: Werden mittels des Moduls Stapeldruck PDFs generiert, so werden diese in einem Ordner Stapeldruck im Datenbrowser abgelegt. Beachten Sie, dass im Modul Stapeldruck ein Verzeichnisname für den Ablageort in diesem Ordner angegeben werden kann.

Geodateneditor

  • Neu: Implementierung einer neuen Funktion, um mehrere Datensätze gleichzeitig zu bearbeiten.

    Sie starten die Funktion, in dem Sie zuvor mehrere Datensätze markieren und dann im Menü oder im Kontextmenü den Button Alle bearbeiten wählen.

    Mehrfachbearbeitung

    Im Dialog haben Sie die Möglichkeit einen komplett neuen Eintrag für alle Datensätze zu erfassen (blauer Rahmen - den Eintrag 'Hauptstraße' gibt es in keinem der markierten Datensätze) oder einen bestehenden Eintrag eines Datensatzes auf alle anderen Datensätze zu übertragen (roter Rahmen - 'Grünfläche' wird aus einem bestehenden Datensatz auf alle anderen übertragen).

    Mehrfachbearbeitung

    Weiterhin besteht die Möglichkeit, einen neuen Wert berechnen zu lassen. Je nach Datentyp stehen Ihnen unterschiedliche Funktionen zur Verfügung:

Puzzle

  • Neu: Für das Ändern von Dokumenten steht eine neue API zur Verfügung. Es gibt dabei zwei Möglichkeiten der Nutzung.

    • in dem (optionalen) Core.CoreModules.Puzzle.IPuzzleCategoryImplementation Callback BeforePersitChanges kann direkt schreibend auf das Change-Objekt zugegriffen werden

      void Core.CoreModules.Puzzle.IPuzzleCategoryImplementation.BeforePersitChanges(Core.CoreModules.Puzzle.PuzzleHandler sender, Core.CoreModules.Puzzle.Data.PuzzleNodeInfoWithCategoryNodeId node, Core.CoreModules.Puzzle.Ikx.Values.IIkxComplexEntityValue existingData, Core.CoreModules.Puzzle.Ikx.Writer.IIkxEditableComplexEntityValue changedData)
      {
         changedData["FUNKTION"].UpdateValue("Neuer Wert");
      }
      
    • der Code-Generator (Puzzle-IKX Struktur zu C# Klassen) generiert direkt Setter für die Eigenschaften der IKX-Klasse

      void Core.CoreModules.Puzzle.IPuzzleCategoryImplementation.BeforePersitChanges(Core.CoreModules.Puzzle.PuzzleHandler sender, Core.CoreModules.Puzzle.Data.PuzzleNodeInfoWithCategoryNodeId node, Core.CoreModules.Puzzle.Ikx.Values.IIkxComplexEntityValue existingData, Core.CoreModules.Puzzle.Ikx.Writer.IIkxEditableComplexEntityValue changedData)
      {
          var clsWrapper = new IduIT.Test.Categories.Auto.Ikx.IKX_CATEGORY_CLS(changedData);
          clsWrapper.Funktion = "Neuer Wert";
      }
      

cardo.Mobile

  • Neu: Unterhalb der Karte können nun mehrere Elemente angezeigt und entsprechend die Selektion angepasst werden. Dies ermöglicht die richtige Auswahl des jeweiligen Datensatzes in Situationen, bei denen sich viele Geometrien auf einem Punkt befinden.

  • Neu: Die Einstellungen wurden grundlegend überarbeitet und beispielsweise mit Funktionen zur Verbesserung der Barrierefreiheit ausgestattet.

  • Neu: Für die Auswahl der Themenkarte steht nun ein eigener Bereich bereit.

  • Neu: Intern wurden Vorbereitungen getroffen, um die Anbindung weiterer Dienste zu ermöglichen, welche beispielsweise nicht den Puzzle-Editor verwenden.

  • Neu: Der Livestandort kann nun verwendet werden, um direkt die Geometrie anzuzeigen, welche sich in der Nähe befinden.

  • Neu: Das Aussehen wurde grundlegend überarbeitet.

Für Administratoren

  • Neu: Die Systemeinstellungen wurden redaktionell überarbeitet. Angepasst wurden Begrifflichkeiten und Beschreibungen.

  • Neu: Bei der Konfiguration der Member-Provider kann jetzt ein Test-Datenabruf durchgeführt werden.

    Memberprovider-Test

  • Neu: In den Systemeinstellungen gibt es eine neue Aktion für Iwan7. Diese umfasst folgende Funktionen:

    • Status vom Iwan7-Kartenserver,

    • Liste der Aktivitäten

    • Liste der geladenen Ebenen mit detaillierten Informationen inkl. der Möglichkeit zum Entladen,

      Iwan7 Dashboard

  • Neu: Der Editor für Textinhalte der Art "Json", "Html" etc. wurde überarbeitet, der Vollbild-Modus (F2) funktioniert nun besser und einige Darstellungsfehler (vor allem bzgl. der Höhe des Editors) wurden behoben.

    Dieser Editor wird an vielen Stellen in cardo verwendet, die Änderungen wirken natürlich überall.

  • Neu: Die "Selbstregistrierung von Nutzern" und deren Einstellungen wurden überarbeitet.

    • Titel und Beschreibungstexte wurden konkretisiert bzw. erweitert.
    • Der Standardtext des E-Mail-Templates und die Platzhalterzeichen wurden konsolidiert.
    • Das Erscheinungsbild des Selbstregistrierungsdialoges wurde farblich neutraler gestaltet.
  • Neu: In der Ebenenverwaltung (Management-Center) ist jetzt der neue Typ "OGC WMS (Iwan7)" verfügbar. Siehe auch Ebenentyp OGC WMS.

PiB

Core

  • Neu: Die Filter für Art des Vorgang / Objektart / Art der Arbeitsaufgabe können jetzt gruppiert dargestellt werden.

    Diese Funktion muss in der Anwendung aktiviert werden, dazu können die Methoden xxxxFilterTreeStoreFactory angegeben werden.

    Bsp.:

    //Grouper für Workitems
    setupResult.pibAppCtx.workitemFilterTreeStoreFactory = (workitems) =>
    {
          return PiB.ObjectModel.TypeInfo.createTypeInfoTreeByNamespace(workitems,
      	    {
      		    namespacePartStartIndex: 3,
      		    namespacePathToIgnore: null,
      		    namespacePartMapping: null,
      		    namespacePartsToIgnore: ["Process", "Workitems"]
      	    });
    };
    
  • Neu: Die optische Darstellung der "Tags" wurde komplett überarbeitet, sowohl bei der Erstellung als auch in den Filtern.

  • Neu: Aus "Nachforderung" ist jetzt "Bitte um Zuarbeit" geworden, dabei gibt es die Möglichkeit zu Erstellung von internen Anfragen, die das Einholen einer allgemeinen Zuarbeit oder auch eine verbindliche Bestätigungen umfassen.

    Das Feature der internen Anfragen kann auch deaktiviert werden.

  • Neu: Der Auswahldialog für Benutzer wurde komplett überarbeitet.

  • Neu: Dem Entwickler steht jetzt eine globale Konfiguration zur Verfügung. Dort können Features aktiviert oder deaktiviert werden, bspw. ob E-Mails für Workitems versendet werden sollen oder nicht, ob Vermerke angezeigt werden oder nicht etc.

  • Neu: Striktere HTML-Bereinigung bei Darstellung von Inhalten aus E-Mails (bei Ergänzungen/Meldungen)

  • Neu: Aktenvermerke sind jetzt als Feature an (allen) PibObjekten verfügbar.

  • Neu: Die Ansicht für den Dokumentenupload wurde optimiert und ist nun besser auf die Seite angepasst.

  • Neu: Einige Anpassungen bei AutoTrace Informationen, Verwendung von QuoteString und HtmlEncode (d.h. einige Ausgaben sind jetzt anders formatiert).

  • Neu: Dateien können per Default nur noch abgerufen werden, wenn diese mindestens einem PibObject zugewiesen sind.

Presentation

  • Neu: In der globalen Scriban-Extension wurden folgende Methoden hinzugefügt:

    • ToDateTimeString(Date) und ToDateString(Date)

    • EnumHasFlag

    • StrictMarkdownToHtml, SafeMarkdownToHtml und SanitizeHtml =>

      Bsp.:

      <td class="value">{{(BO.Workdata.Stellungnahme ?? "-- keine --") | SafeMarkdownToHtml | SanitizeHtml}}</td>
      
  • Neu: Variablen in Word (docx) Vorlagen können jetzt auch im Header oder Footer verwendet werden, bisher nur im Body.

  • Neu: Für das vereinfachte Generieren von DocX und PDF Dateien wurden umfangreiche Anpassungen an IduIT.PiB.Presentation.Office.DocumentEngine vorgenommen:

    • neue Methode UpdateMetadata(),

    • neue Methoden ExportAsHtml() und ImportFromHtml,

    • neue Methode CreateFromParts() und Parser für HTML zu DocumentParts DocumentPartsFromHtmlConverter

      Damit ist die Grundlage für die Anbindung von Scriban-Templates für die Erzeugung solcher Dokumente geschaffen, wobei auch Header/Footer usw. umfangreich definiert werden können.

  • Neu: Die Methode RemoveMetadata der DocumentEngine entfernt jetzt alle Metadaten des als Vorlage geöffneten Dokumentes.

API

Client

  • Neu: Es gibt nun einen einfachen Zeit-Picker, dieser ist erreichbar unter Kiss.Ui.Picker.Time.

  • Neu: Mit Kiss.Lang.Date.isInvalidDate(value: Global.TDate): boolean kann nun geprüft werden, ob es sich bei dem mitgegeben Datum um ein "Invalid date" handelt.

  • Neu: Neue SelectBox (Kiss.Ui.Form.Field.TreeSelectBox). Diese kann verwendet werden, um dem Nutzer auf Basis von Daten aus einem Tree-Store/View einen oder mehrere Datensätze auswählen zu lassen.

  • Neu: Neuer Picker Kiss.Ui.Form.Picker.Tree mit dessen Hilfe ein Tree-Store/View nun verschachtelt angezeigt wird und dieser dann zur Auswahl von Daten genutzt werden kann.

  • Neu: Unter Kiss.Ui.Menu.AsyncSplitButton ist es nun möglich, einen SplitButton zu erzeugen, welcher erst nach der erfolgreichen Auflösung eines Promise-Objektes das Menü rendert bzw. aktualisiert.

  • Neu: Die Kiss.Ui.Form.Field.MultiSelectBox kann nun den Konfig-Parameter displayText erhalten. Damit ist es möglich, aus dem Datenobjekt einen Anzeigetext für das Formularfeld zu generieren.

  • Neu: Im PuzzleEditor wird nun beim Aufrufen der Methoden loadDocument und reloadCurrentDocument ein Promise mit zurück gegeben, welches beim Abschließen des Lade-Vorgangs entsprechend "resolved" oder "rejected" wird.

  • Neu: Neue statische Methoden IduIT.Core.Kiss.Lang.Date.toDateString(Date) : string und IduIT.Core.Kiss.Lang.Date.toDateTimeString(Date) : string für die Vereinheitlichung der Ausgabe von Datumswerten.

  • Neu: Neue Methode scrollTop() an Kiss.Ui.Grid.AbstractGrid.

  • Neu: Neuer Parameter tryGetWindowOveride für IduIT.Core.Kiss.Ui.Form.Field.MonacoEditorF2 um eine alternative tryGetWindow Methode zu hinterlegen, falls die originale auf Grund von Verschachtelungen nicht funktioniert.

  • Neu: Es sind nun unter Kiss.Bom.KeyBoard.PressedKeys bzw. Kiss.Bom.Mouse.PressedKeys verschiedene Funktionen zur Prüfung der aktuell gedrückten Taste/n verfügbar.

Server

  • Neu: An dem Attribut Web.Ajax.AjaxMethod kann die neue Eigenschaft IsShortAndFrequently angegeben werden, die so markierten Methoden lösen nicht die Lade-Anzeige in cardo aus. Sinnvoll ist der Einsatz an sehr häufig im Intervall aufgerufenen Methoden.

3rd Party

Update externer Bibliotheken:

  • TypeScript 5.2 zu 5.3
  • DOMPurify 3.0.5 zu 3.0.6
  • Monaco 0.43.0 zu 0.44.0
  • Oracle.ManagedDataAccess 21.11 zu 21.12
  • Mimekit.Net 3.3.1 zu 4.2.0
  • Font Awesome 6.4.2 zu 6.5.1
  • Markdig 0.33.0 zu 0.34.0

Zuletzt geändert: 22.04.2024 18:19:51 (erstmals erstellt 14.02.2024)