Version 4.1.9
Die Version 4.1.9 wurde initial im März 2021 veröffentlicht.
Bitte beachten Sie die folgenden Hinweise zu diesem Update
Für IT-Administratoren
- Evtl. möchten Sie die mit Version 4.1.7 eingeführten Möglichkeiten zum Monitoring verwenden.
Für Betreuer
Beachten Sie die Hinweise zur Änderung des ORACLE Datenbanktreibers von ODP.Net zu Oracle.ManagedDataAccess
Dies ist die letzte cardo4 Version, in der wir den Internet-Explorer noch unterstützen, treffen Sie ggf. entsprechende Vorbereitungen.
Evtl. Aktualisieren Sie ihre lokale Installation für IduIT.GeoTools.Net
Beachten Sie bitte unbedingt den Hinweis zum geplanten Entfernen des Ebenentyps RasterLite
Beachten Sie die Hinweise zur geänderten Interpretation von ORACLE Zahlenformaten. Hier kann es bei Datenimporten zu Änderungen der Tabellenstruktur kommen.
Für Entwickler
- Wir empfehlen auf die TypeScript Version 4.6 zu aktualisieren
- Beachten Sie die mit BreakingChanges markierten Einträge.
Mai 2022
Release 4.1.9.51199 (05.05.2022)
- Fix: In der Auswahlbox führte die Verwendung eines Bindestriches zu einer Fehlermeldung (Invalid regular expression: Invalid escape).
Release 4.1.9.51164 (03.05.2022)
- Fix: Im Pib war der Button zur Bestätigung der Kenntnisnahme u.U. nicht sichtbar.
Release 4.1.9.51139 (02.05.2022)
- Fix: In der Auswahlbox mit Auto-Vervollständigung wurden Wortanfänge mit Umlauten nicht (mehr) korrekt behandelt. Betroffen war u. a. die GSS-Suche.
April 2022
Release 4.1.9.51005 (22.04.2022)
- Fix: cardo.COM - Bei der Aktion "select" wurde der Parameter
extent
nicht angewendet, wenn kein Treffer bei der Selektion erzielt wurde. - Fix: GeoSQL- Es konnten keine Parameter und Filter definiert und angewendet werden. Dies wurde behoben.
März 2022
Release 4.1.9.50742 (28.03.2022)
- Fix: Das automatische Laden einer Sitzung beim cardo-Start funktionierte nicht mehr, bedingt durch einen Fehler im Zusammenhang mit einer Anpassung im direkt vorausgegangenen Build 4.1.9.50705
Release 4.1.9.50705 (23.03.2022)
Neu: Sketch - Beim Laden einer gespeicherten Sketch-Zeichnung erfolgt nun immer eine Nachfrage bzgl. "Ersetzen" oder "Hinzufügen", falls die Sketch-Anwendung bereits Elemente enthält.
Neu: cardo.COM - Bei der Aktion "select" ist fortan der Parameter
compareOperator
verfügbar. (siehe Doku der cardo.COM - Standardschnittstellen)Fix: cardo.COM - Bei der Aktion "loadSessionState" kam es zu Konflikten mit dem Laden einer ggf. per Konfiguration eingestellten Sitzung. Dies ist nun behoben.
Neu: cardo.COM - Die technisch benötigte Hilfsseite, die ggf. als leere Seite bei Aufrufen stehen bleibt, enthält nun Informationen für den Nutzer, so dass dieser besser geleitet wird.
4.1.9 (04.03.2022)
Datenbrowser
Neu: Bei den Einstellungen des Datenbrowsers kann jetzt das Auslesen der Tabellen/Views (für die Aktualisierung des Berechtigungsbaumes der Anwendung) vorübergehend deaktiviert werden.
Das Deaktivieren ist dabei global oder pro Datenbankverbindung möglich.
Das Timeout für das Speichern der Anwendungseinstellungen beträgt jetzt 10min (für alle Anwendungen).
Neu: Bei der Aktion "Import in Tabelle" wurde das Timeout auf 1h gesetzt (vorher 90 Sekunden).
Fix: Bei der Bereitstellung einer Ebene aus einer Tabelle, bei der die Geometrien aus einer Lookup-Spalte generiert werden, trat der Fehler "Der EpsgCode der PostgreSQL Datenquelle darf nicht undefiniert sein (zumindest, wenn die Daten keine SRID haben)." auf, wenn noch keine Daten enthalten waren.
Fix: Bei der Aktion "Als Ebene bereitstellen" wurden Fehlermeldungen u.U. doppelt ausgegeben.
Export
- Fix: Beim Export in das Excel-Format (xlsx) ging das &-Zeichen verloren.
Karte
Neu: Die Ebenentitel werden jetzt bevorzugt aus dem AdminTree, bzw. aus den View ermittelt.
Nach Umbenennen des Titels im Admin-Baum ist kein Neuladen der Ebene mehr erforderlich.
Wird im View der Titel überschrieben (Stichwort: Roter-Ordner), wird dieser angezeigt.
Beachte: Wird die Ebene mehrfach eingebunden, "gewinnt" der Titel des letzten Viewelements
Neu: GeoCSS Symboleditor
Beim Auswählen einer Spalte als Ausdruck wird der evtl. vorhandene Wert jetzt ersetzt, es sei denn, der Wert endet mit einem Leerzeichen. In dem Fall wird die neu ausgewählte Spalte so angefügt, das ein zusammengesetzter Text entsteht (
SPALTE1 // " " // SPALTE2
).Einige doppelte "Clear-Buttons" (x) in den Formularfeldern wurden entfernt.
Der Status "Ordered" wird besser ausgewertet.
Neu: Metadatensuche: die Liste der möglichen Referenzsysteme wird im cardo4 jetzt aus den Systemeinstellungen ausgelesen.
Fix: U.U. konnten Dialoge in der Geometrietoolbox im Hintergrund verschwinden (z.B. bei Rückfrage zum Löschen einer Geometrie). Jetzt sind alle Dialoge modal, d.h. ganz im Vordergrund.
Fix Symbolik anpassen: Beim Konvertieren einer Beschriftungsebene wurde text-horizontal-alignment für Linien nicht übernommen.
Fix: Bei WMS Ebenen, bei denen nur bestimmte Ebenen ausgewählt wurden (Eigenschaft wmsLayerNames), wurden u.U. noch Ordner aus dem Dienst mit angezeigt, wenn diese einen Namen hatten.
Fix: GetFeatureInfo für WMS Ebenen lieferte u.U. keine Daten, wenn die Projektion der Karte verstellt wurde (Iwan6).
Kartendruck
Fix: Bei der Auswertung der Ebenenreihenfolge wird die Position der Hintergrundkarte jetzt korrekt ausgewertet.
Fix: Der Dialog zur Auswahl eines benutzerspezifischen Bildes im Druckdialog kann jetzt in allen Browsern verwendet werden (bisher auf IE beschränkt).
AnySourceEditor
- Neu Die Filterung wurde überarbeitet. Die Filterbegriffe werden bei Eingabe ohne Präfix UND-verknüpft.
Puzzle (cardo4)
Neu: In dieser Version sind umfangreiche Arbeiten an der cardo4 Version von cardo.Puzzle enthalten.
Es gibt jetzt ein erweitertes Layout für cardo.Puzzle. Diese Arbeiten sind noch nicht abgeschlossen. Damit einher gehen umfangreiche Erweiterungen in Bezug auf Formulargestaltung und auch Verhalten (Validierungen, Conditions etc.).
Die Funktionen sind z.Z. in der Puzzle-Workbench als Beta-Version enthalten.
Generell stehen alle Funktionen für die Formulargenerierung auch außerhalb von Puzzle für Entwickler zu Verfügung. Der interessierte Entwickler findet diese im (clientseitigen) Namespace
IduIT.Core.ReactiveForm
Fix: In einigen Puzzle-Kategorien werden Entities mit Flächengrößen oder Längen der hinterlegten Geometrie gefüllt. Dort konnten u.U. falsche Werte ermittelt werden, sofern die Geometrie in einem Koordinatenbezugssystem mit nicht metrischen Koordinaten (OSM, geografisches Bezugssystem) erfasst wurde.
Sonstiges
Fix: Zwei kleine Anpassungen bei Listen, Tabellen und Bäumen:
Bei einer gruppierten Liste konnte u.U. das falsche Element beim Klicken angewählt werden
Wenn eine Tabelle/Baum mit dem Scrollrad der Maus bedient wurde und diese Komponente noch nicht den Fokus hatte, dann "sprang" der Inhalt beim Klick auf einen Eintrag.
Neu: Die Anzeige für das SQLUpdate von Anwendungen wurde verbessert, im Falle eines Fehlers wird jetzt eine Meldung ausgegeben.
Neu: Im Grid (Tabellenansicht) wurde das Selektionsverhalten geändert. Wenn mehrere Zeilen selektiert sind und auf eine der selektierten Zeilen ohne Tastenkombination geklickt wird, dann wird jetzt diese Zeile als einzige selektiert. Bisher blieb die Selektion in diesem Fall unverändert.
Neu: Eingabedialoge (
IduIT.Core.UiWidgets.PromptDialog.prompt
) werden bei ESC geschlossen und sind jetzt immer modal.Neu: Wenn im Sitzungsstatus minimierte, gedockte Fenster enthalten waren, wurden diese beim Wiederherstellen geöffnet. Jetzt bleiben diese minimiert.
Neu: Bei der Aktion "Als anderer Nutzer anmelden" wird jetzt beim Ummelden der Sitzungsstatus in cardo3 zurückgesetzt. Dies löst Probleme bei einigen Anwendungen, die ihre Einstellungen aus dem Sitzungsstatus gelesen haben.
Neu: Einige Änderungen an Formularelementen:
Die Validierung für alle Dropdownlisten wird beim Verlassen des Feldes ausgelöst, auch wenn keine Daten geändert wurden.
Alle "Picker" (z.B. Dateiauswahl, Farbauswahl) werden beim Klick auf das Icon jetzt auf der linken Seite geöffnet, beim Öffnen über die Tastatur (bspw. Key-Down) auf der rechten Seite.
ESC in Dialogen mit aktiven DropDownBoxen führt nicht mehr zum Schließen des Dialogs.
Neu: Wichtiger Hinweis Es wird jetzt für den Zugriff auf ORACLE Datenbanken der Treiber Oracle.ManagedDataAccess in Version 21.3 verwendet (bisher ODP.Net).
Hier wird kein Oracle-Client mehr benötigt. Die Zugriffe auf Geodaten erfolgen nach wie vor über unseren eigenen ORACLE .Net Treiber, der in der IduIT.GeoLib.Net enthalten ist. Dieser verwendet den Oracle-Instant Client. Hier empfehlen wir Version 18.5. In neueren cardo-Setups finden Sie diesen im Ordner C:\OracleInstanceClient4IduIT.
Die Einstellung "dllPath" in der web.config im Bereich "oracle.dataaccess.client" ist damit überflüssig und kann/sollte entfernt werden.
Neu: Wenn MsSQL-Server-Ebenen im Datenbrowser geladen werden, wird jetzt der aktuellste ODBC-Treibername ermittelt. Bisher war dieser fest als "SQL Server Native Client 11.0" hinterlegt. Siehe auch Iwan7-ODBC.
Fix: Ein neu aufgesetztes cardo ohne Themenbaum brachte eine NullReferenceException beim Starten. Jetzt wird eine aussagekräftige Fehlermeldung generiert.
Fix: Die SSO-Logineinstellung für das Namensschema des Domain-Aufbaus wurde beim Benutzernamen nicht beachtet.
Fix: In Ausgaben der OGC API Features wird keine Byte Order Mark (BOM) mehr mit ausgegeben.
Anwendungen
Fix: Puzzle: die Einstellungen an der Puzzle-Anwendung zum Deaktivieren des PuzzleV1 und des IKX-EditorsV1 werden jetzt etwas anders ausgelesen. Damit wirkt das Deaktivieren des IKX-Editors V1 auch im cardo4. Und im cardo3 wirkt die Einstellung auch nach Umschalten ins PuzzleV1 und zurück.
Fix: Anwendung Forstkataster: Styleanpassungen, so dass der Bereich 'Eigentümer / Flurstücke' beim Verkleinern des Anwendungsfensters scrollbar bleibt.
Monitoring
Neu: Der app-Key im Monitoring kann um ein Suffix erweitert werden, der Name wird immer aus dem Website-Name gebildet, für Unterseiten mit eigener Anwendung (bspw. cardo.Porta) kann hiermit eine Trennung in der Logansicht vorgenommen werden.
Bsp.:
<add key="Monitoring.AppNameSuffix" value="-porta1"/>
API
PiB
Neu: Das Interface
IObjectWithLifetimeNotifications
wurde um die MethodeOnObjectDeleted(List<Core.Kiss.Type.MessageRecord> globalMessages, PibHandler hdl)
erweitert.Neu: Es gibt eine generelle Möglichkeit der Zuordnung von PiB-Objekten zum OId eines DMS. Diese Zuordnung umfasst die ID und den Typ des Ziel-Objektes. Objekte die über solche Zuordnungen verfügen, können nicht mehr gelöscht werden.
Server
Neu: Anwendungen, die Berechtigungen definieren, können diese über die API auch dynamisch generieren. Das Aktualisieren wird dabei beim Speichern der Anwendungseinstellungen ausgelöst.
Dieses Verhalten kann ...
- temporär global deaktiviert werden.
- überschreiben der neuen Methode
bool SkipRebuildSecurityTreesOnUpdateSettings()
an derCardoManagedApplicationSettings
- überschreiben der neuen Methode
- für Bestimmte Nodes übersprungen werden
- (via eines "Magic-Node-Title")
var child = result.CreateChild(dir.DbIdOrAlias, "titel"); child.NodeTitle = Api.Applications.ManagedApplicationManager.MagicSecurityNodeTitleLeaveUnchange;
- (via eines "Magic-Node-Title")
- temporär global deaktiviert werden.
Neu: Im Datenbank-Update-XML steht jetzt die Variable %SCHEMA_PREFIX% zur Verfügung. Diese enthält den Namen des aktuellen Schemas mit endendem Punkt. Der Wert kann auch eine leere Zeichenfolge sein.
Neu: Der NetTypeName, der bei TsCodeEmbedDollarTypeNameAttribute entsteht, ist jetzt zu dem $type Attribut aus NewtonSoft Json kompatibel (unterschied sich bisher durch ein fehlendes Leerzeichen zwischen Typ und Assembly). Sie sollten die Aktion "IduIT: Create .Net TypeScript Code" aus unserer Visual-Studio Extension auf den eigenen Projekten ausführen.
Neu: Bei der JSON-Serialisierung mit JsonNetDefaultSettings.StorageSettings werden Exception-Messages nicht mehr HTML-kodiert ausgegeben.
Bei allen anderen Settings wird in Fehlermeldungen ein Newline immer zu <br/> übersetzt.
Neu: Bei der Serialisierung von Enum-Typen mit dem ORM und EnumNumberConverter wird der Datentyp ausgewertet. Bisher wurde immer in Int32 konvertiert.
Neu: PropertyModel: Bei der serverseitigen Validierung von Listen wird eine Validierungsfehlermeldung, welche direkt auf das Listenobjekt zeigt, auf dem Client dargestellt.
- Meldungen an den Unterelementen der Liste haben jedoch Vorrang
Client
Neu: BreakingChange Die Schnittstelle des onChange einer Validation wurde geändert. Bisher
onValidationChangeListener(e: Kiss.Event.Type.IArgs<string[] | null>): void
Jetzt
onValidationChangeListener(e: Kiss.Event.Type.IArgs<Kiss.Ui.Form.Validation.IInvalidChangeArgs | null>): void
Hintergrund ist die Einführung von Fehler-Stufen (Fehler, Warning, Critical).
Die wirkt sich auch auf die serverseitige Generierung von Fehler aus, auch hier kann die Fehlerstufe mit ausgegeben werden.
Der Status wird als data-Attribut am Element gesetzt, d.h. es wird nach wie vor die CSS-Klasse
iduit-core-kiss-state-invalid
angefügt und zusätzlichdata-invalid-level
mit einem der Werte "error", "critical" oder "warning". Die SCSS Klassen wurden (zumindest für warning) erweitert.An Kiss.Ui.Core.Component steht die Hilfsmethode
setInvalidLevelAttributes
zum Setzen des Status zur Verfügung.Neu: Update auf TypeScript 4.6 (bisher: 4.4)
Entwickeln Sie selber cardo Erweiterungen, sollten Sie auch auf diese TypeScript Version aktualisieren. Zum aktuellen Zeitpunkt ist nur die Beta-Version im Downloadbereich verlinkt, hier geht es zum Release.
Beachten Sie die Hinweise zum Update der Visual Studio Extension.
Neu: Der Window-Konfiguration kann der neue Parameter
ESCToClose
übergeben werden. In Verbindung mit showClose führt die ESC Taste dann zum Schließen des Fensters.Neu: Der Tab-Konfiguration einer TabPage kann jetzt auch ein Shortcut für die Zuweisung von Tastaturcodes übergeben werden.
Neu: BreakingChange Die Eigenschaft
invisibleWhenEmpty:bool
des InterfaceItem.IItemConfig
wurde zulabelVisiblity: ELabelVisibility
geändertNeu: Es gibt eine neue Methode
Icons.Fontawesome.getIconClsParseFamily
. Bei dieser kann der Icon-Name mit Familie übergeben werden (Bspw.: "fal:open").Neu: Für alle MessageBox-Varianten ist der Standardwert für die Konfigurationseigenschaft
modal
jetzttrue
.Neu: "Picker" hat neuen ConfigWert
triggerIconClsExpanded
, über welche ein entsprechendes Icon gesetzt werden kann (bisher wurde das Standard-Trigger-Icon verwendet).Neu: An der Component gibt es die neue Eigenschaft
activePromiseCount
und die MethodeactivePromiseCountTotal()
, welche die Anzahl der laufenden AktionenshowBlockerWhilePromiseIsRunning
undshowBlockerWhileAjaxIsRunning
dieser Komponente zurückgibt.close()
auf ein Window prüft jetzt, ob Aktionen laufen und verhindert u.U. das Schließen des Fensters.Neu: Die Methode
updateRowElement
der KlasseTreeRowRender
ist nicht mehr internal (und steht damit für Überschreibungen offen).Neu: Im Debug wird ein Fehler ausgelöst, wenn beim
Promise.fail
undefined
als Methode übergeben wird.Fix: Korrektur beim Z-Index von modalen Fenstern. Es konnte u.U. vorkommen, dass ein modales Fenster im Hintergrund war.
Hinweise zu Visual Studio 2022
Wenn im Release-Build ein Fehler der Art
Error An attempt was made to load an assembly with an incorrect format: xxxx\GeoLib.NET.dll. XXXX XXX\SGEN
auftritt, dann entweder die 64 Bit Variante der Komponente referenzieren oder die folgende Build-Option in der csproj-Datei auf "Off" stellen:
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
3rd Party
- Update externer Bibliotheken:
- TypeScript 4.4 zu 4.6
- Markdig 0.26.0 zu 0.27.0
- Scriban 5.0.0 zu 5.4.0
- Monaco Editor 0.30.1 zu 0.32.1 (im IE bleibt es bei der 0.18)
- Oracle.ManagedDataAccess 21.3 (bisher ODP.Net)
- BouncyCastle 1.8.8 zu 1.9.0
- MimeKit.Net 2.10.1 zu 3.1.1
- Open XML SDK 2.13.0 zu 2.15.0
Zuletzt geändert: 21.03.2024 09:46:21 (erstmals erstellt 20.05.2022)