Changelog (Entwicklung)

Hier finden Sie die in Arbeit befindlichen Änderungen, ggf. sind diese im Updater als "Getestete Vorabversion" mit enthalten. Für veröffentlichte Änderungen siehe Changelog (Release)

Aktuell ist die Version 4.3.4, diese wurde am 03.03.2025 veröffentlicht.

Mai 2025

Die aktuelle Version der Beta ist 4.3.5.63006 vom 22.04.2025

Sonstiges

  • Neu: Kennwörter in der cardo4 Nutzerverwaltung werden mit einem neuerem Hash-Verfahren gespeichert.

    Es wäre ggf. an dieser Stelle mal wieder an der Zeit die Nutzer zur Aktualisierung des Kennworts aufzufordern, siehe Einstellung "Max. Kennwort-Gültigkeit" in der Benutzerverwaltung.

  • Neu: In der Anwendungsverwaltung wird der "Wilma-Editor" jetzt nicht mehr modal gestartet.

Sachdatenanzeigen

  • Neu: Im Export steht das Format "FlatgeoBuf" zur Verfügung.

PiB/ScribanExtension

HQPrint

  • Neu: Das Abrufen der Legenden und Ebeneninformationen wurde überarbeitet. Es kam beim Drucken von DXF Dateien mit sehr vielen Layern u.U. zu verschiedenen Fehlern und vor allem sehr langen Wartezeiten.

    Diese Änderung ist im cardo3 Update bereits mit enthalten.

OGC Dienste (Server)

  • Neu: Der OgcAPI Handler. liefert jetzt eine "Landing-Page" aus.

  • Neu: Anpassungen an den von cardo angebotenen WFS Diensten (ogcsl.ashx):

    • In WFS 2.0 wird für Iwan7 Vektor Ebenen das Format FlatgeoBuf mit angegeben.

      Iwan7 unterstützt dies als Client mit Version 7.9.2 auch, dazu kann in der Ebenendefinition das neue Attribute "featureFormats" mit dem Wert "application/flageobuf" angegeben werden.

      Weitere Informationen dazu finden Sie hier.

  • Neu: Anpassungen an den von cardo angebotenen WMS Diensten (ogcsl.ashx):

    • Für kaskadierend eingebunden WMS Dienste wird GetLegendGraphics jetzt unterstützt.

    • Die Struktur (Ordner) von SubLayern wird in der Layers-Liste des WMS Dienstes beibehalten

    • Beim Abrufen von WMS steht für die GetFeature-Operation jetzt auch das Formats application/geo+json zur Verfügung.

      Der Client sollte in dem Fall die Ebeneninformationen einzeln abrufen. Es wird immer nur eine Feature-Collection für alle Ebenen generiert (mehr gibt das Format leider nicht her).

    Dies Änderungen der Dienste WMS und WFS sind im aktuellen cardo3 Update bereits mit enthalten.

cardo.Mobil

MapTip

  • : Neu: Über den Map-Tip kann nun ein Datensatz im Dateneditor angezeigt werden.

Themenbaum

  • : Neu: Im Themenbaum können nun die Ebenen aus Cardo4 Sitzungen geladen werden.

  • : Neu: In der ebenen Übersicht kann die ausgewählte Ebene nun aus der Karte entfernt werden.

Einstellungen

  • : Neu: In den Einstellungen kann nun das initiale Zoomen auf den Standort deaktiviert werden.

  • : Neu: In den Ausführungseinstellungen von Tasks kann bei monatlicher Ausführung jetzt auch explizit der letzte, vorletzte oder drittletzte Tag der Monate gewählt werden.

Fachanwendungen

cardo.Button V2

  • Neu: Kompletter "Rewrite" der Anwendung cardo.Button als cardo4 Anwendung mit neuen Techniken und Möglichkeiten, Lesen Sie hier alles zu dem neuem Modul.

    Hinweis: Kunden die eine Lizenz für das Modul haben, bekommen die neue Version automatisch mit, es muss lediglich die Anwendung in der Anwendungsverwaltung registriert werden.

    Die in im neuem "Button" erstellten Klassen für die Datenabfragen (GeoSQL) wurden auch in der allgemeinen Template-Erweiterung "uxGeo" verfügbar gemacht.

VisConnector

  • Neu: ÜBerarbeitungen der Startseite, Auflistung aller referenzierter BO, oder nur der im Kartenausschnitt

Bereich Administration

Einstellungen

Benutzerverwaltung

  • Neu: Beim Löschen/Umbenennen von Benutzerobjekten werden diese Änderungen auch in die IKX-Stores zurückgeschrieben.

Ebenenverwaltung

  • Neu: Erweiterungen am Admin-Tree:

    • Aktion "Speichern erzwingen" an den Ebeneneigenschaften

    • Bearbeitung der Layer-Tags

    • Anzeige SortHint + Layertag in der Ebenenliste

  • Neu: Eigenschaften "allowServiceMetadataCaching" für WFS Ebenen und "loadErrorBehavior" für Shapedateien hinzugefügt.

PiB

  • Neu: Arbeitsaufgaben (Workitems) die löschbar sind, können jetzt auch gelöscht werden, wenn sie im Status "In Arbeit" sind.

  • Neu: Für alle Arbeitsaufgaben die das Interface IDemandDataWorkitem implementieren wird intern beim Starten ein Eintrag AddReconfirmWorkitemIds erstellt. Damit greifen die Regeln, das für die zugeordnete Arbeitsaufgabe deren OnStart/OnReOpen Methode nicht aufgerufen wird.

  • Neu: Umfangreiche Erweiterungen für die Konfiguration IduIT.PiB.Config.GlobalPibConfiguration:

    • Für die Abbildung von Typ-Bezogenen Verhalten kann die neue Eigenschaft ObjectSpecificPropertyGroups belegt werden.

      Dabei können Typ-Gruppen für eine Menge von Objektarten gebildet werden, die über folgende Eigenschaften verfügen:

      • Ändern des Anzeigetextes für den Objekt-Status (Bspw. "Beantragt" statt "Neu")
      • Auflistung sinnvoller Systemtags für die Objekte dieser Gruppe
      • Zuweisen einer Gruppen-Bezeichnung
      • Zuweisen der "Gründe" für den Status, die für dies Gruppe möglich ist
    • Neue Eigenschaft UseTags der EveryObjectConfig, wenn diese angegeben ist, werden die dort definierten Tag-Arten (System, Öffentlich etc.) für die Objekte mit abgerufen.

    Die Standard-Listenansicht generiert dann per Default eine Spalte für die Anzeige der Tags in der Datenliste.

Metadaten

  • Neu: Das ISO-Schema, welches in cardo hinterlegt ist und zur Validierung der Metadaten verwendet wird, wurde aktualisiert (u.a. GML 3.2.1). Damit wird das Element UnitDefinition jetzt nach dem aktuellen Schema korrekt in den Metadaten verwendet und für bei externer Validierung nicht mehr zu einer Fehlermeldung.

    Diese Änderung ist im cardo3 Update bereits mit enthalten.

API

Server

  • Neu: Anpassungen am ORM

    • neue Methode ExistsByExpression<T>(expression)
    • obsolete Version der Methode GetOneByExpression wurden entfernt
    • Methoden ExistsByPrimaryKey als obsolet markiert, verwende ExistsByPrimaryKeyValue
    • Fehler i.V.m FunctionTemplateOracle und Oracle Datenbanken behoben
  • Neu: Das Interface ISelfAppManager wurde um die MethodenGetSqlUpdateState() und GetMyRights() erweitert.

    Bsp.:

      var app = XXXApplication.Instance;
      var appMgr = cardo.Core.Api.Applications.ManagedApplicationManager.CreateManagerForMe(app);
      if (!appMgr.GetMyRights().HasFlag(cardo.Core.Sys.Applications.Builtin.ApplicationRole.ManageApplication))
      		return "Diese Informationen stehen nur Verwaltern der XXX Anwendung zur Verfügung.";
    
      	var sqlUpdateState = appMgr.GetSqlUpdateState();
    
  • Neu: BreakingChange: Die Signatur der Methode OpenWilmaDatabase() des Interface ICardoManagedApplicationUsingWilmaWithOwnDatabase wurde zu OpenWilmaDatabase(out bool isSharedConnection) geändert. Damit kann das erforderliche Disposing besser gesteuert werden.

Client

  • Neu: Das Target für die Typescript-Transpilierung wurde von "ES6" auf "ES2020" geändert. Hier (externer Link) gibt es eine schöne Übersicht der Änderungen.

    Weiterführende Infos: CanIUse

    Hinweis Ggf. verschieben wir diese Änderung noch auf eine spätere Version, wenn zu viele "alte" Browser noch im Einsatz sind.

  • Fix: Beim abrufen des Labels eines nicht Flags Enum's wird nun direkt der Label ermittelt.

PiB

  • Neu: BreakingChange: der Rückgabetyp der Methode create() des Interface PiB.ObjectModel.Ui.Interfaces.IPibObjectFormFactoryStore.IFormFactory wurde erweitert. und gibt jetzt TResult oder IPromise<TResult> zurück.

    Bsp.:

      //Neue Instanz erstellen
      const newItem = extendedTypeInfo.formFactory.create(mode, "default");
    
      if (!newItem)
    	throw IduIT.createError(`Interner Fehler: Zum Typ ${Kiss.Lang.String.quoteString(extendedTypeInfo.title, true)} ${Kiss.Lang.String.quoteString(extendedTypeInfo.typeName, true)} gab die formFactory null zurück!`);
    
      if (IduIT.Promise.IPromise.is(newItem))
    	return newItem.then(form => form);
      else
    	return newItem;
    

PropertyModel

  • Neu: Für Enum-Felder gibt es jetzt das EnumConfigAttribute um die Liste der ignorierten Werte (als Integer) zu übergeben. Eine abstrakte Basisklasse EnumConfigAttribute<T> kann verwendet werden, um Enum-Werte typisiert zu übergeben und eine Auswahl zu treffen, ob diese als Black- oder Whitelist verwendet werden sollen.

3rd Party

Update externer Bibliotheken:

  • DOMPurify 3.2.4 zu 3.2.5

  • PdfJs 4.10.38 zu 5.1.91

  • HtmlAgilityPack 1.11.74 zu 1.12.1

  • MarkDig 0.40.0 zu 0.41.1

  • MimeKit 4.10.0 zu 4.12.0

  • Scriban 5.12.1 zu 6.2.1

  • NodaTime 3.2.1 zu 3.2.2

  • Oracle.ManagedDataAccess 23.7.0 zu 23.8


Zuletzt geändert: 02.05.2025 08:06:02 (erstmals erstellt 02.05.2025) // Alias: "InArbeitCardo4"