Changelog (Release)

Hier finden Sie die aktuell veröffentlichten Änderungen, für die in Entwicklung befindlichen Anpassungen ("Getestete Vorabversion") siehe Aktuelle Version (in Arbeit)

Die Änderungen der Vorversionen finden Sie unter Vorgängerversionen

Aktuelle Version 4.0.11, veröffentlicht am 03.05.2019, letzter Patch vom 19.05.2019


Juli 2019


  • Fix: KISS: Eine AutoCompleteBox konnte nicht mehr geleert werden, wenn sie mit einem Wert programmtechnisch vorgefüllt wurde.

Juni 2019


Release 4.0.11.40948 / 20.06.2019


  • Neu: In den Profilinfos in "Mein cardo" kann nun auch eine Fax-Nummer hinterlegt werden.

Mai 2019


Release 4.0.11.40665 / 19.05.2019


Karte

  • Fix: Beim Laden einer Sitzung konnte u.U. die Meldung "die Projektion ... wird von der Grundkarte nicht unterstützt" auftreten, wenn in den Einstellungen eine Startkarte definiert war.

  • Fix: Beim Laden einer Sitzung konnte es vorkommen, das beim Bearbeiten von Geometrien aus dem Editor heraus die Projektion nicht korrekt angepasst wurde.

  • Fix: MapTips auf Ebenen, wo im Ergebnis sehr (!) komplexe Polygongeometrien enthalten waren, führten zu hoher CPU Last auf dem Server und sehr langen Wartezeiten.

Druck

  • Fix: Bei der Definition globaler Symbole führte die Angabe eines Alpha-Wertes mit mehr als zwei Nachkommastellen zu einem Druckfehler "Die Eingabezeichenfolge hat das falsche Format".

  • Fix: Bei der Definition globaler Symbole führte die Angabe eines Alpha-Wertes von 0 bei den Polygonen (komplett transparent) zu einer komplett gefüllten Fläche im Druck.

  • Fix: Bei der Definition globaler Symbole wird bei Polygonen kein Polygon-Rand mehr ausgegeben, wenn kein IduIT.Core.Mapping.Style.GeometryStyleUtil.line definiert wurde.

  • Fix: Selektionslayer waren u.U. nicht vollständig im Ausdruck enthalten (Problem war, dass die Ausdehnung der Ebene nur auf die zuerst hinzugefügten Datensätze gesetzt war.)

Datenbearbeitung / GEdit

  • Fix: Bei der Übernahme von zu bearbeitenden Datensätzen mit den Operatoren "ist in Liste / ist nicht in Liste" bei Textspalten mit deaktivierter Option "Groß-/Kleinschreibung beachten" wurden die Daten nicht im Editor gefunden.

  • Neu: Besseres Tastatur-Eingabeverhalten des neuen GridList Eingabeelements.

  • Neu: NULL Werte in Nachschlagelisten wurden bisher als "" ausgegeben, jetzt als leere Zeichenfolge.

cardo4 Application Proxy

  • Neu: Neue Methode public removeUserLayerFolderFromMap(folderId: string): void: diese ermöglicht das Entfernen von zuvor angefügten Ordnern aus der Karte.

API Client

  • Neu: Beim IduIT.Core.Kiss.Ui.Responsive.TileContainer wurde die Render-Performance verbessert indem der Aufruf nun über einen Task erfolgt.

  • Fix: Beim IduIT.Core.Kiss.Ui.Core.Blocker wurde beim Dispose nicht sauber entblockt. Dadurch stand noch das Data-Attribut 'kiss-blocked': true am Ziel-Element, welches z.B. Resizing verhindert.

  • Fix: Beim IduIT.Core.Kiss.Ui.Responsive.TileContainer wurde die Ermittlung der Höhe der Elemente verbessert.


Release 4.0.11.40616 / 12.05.2019


Datenbearbeitung / GEdit

  • Neu: Für sehr lange Nachschlagelisten gibt es in den Einstellungen "Nachschlageliste" => "Allgemein" => "Listentyp" den neuen Typ "GridSelect - für große Datenmengen, Auswahl mit Filter". Grid List

    Dieser kann auch mit sehr umfangreichen Wertelisten verwendete werden (hier getestet mit 200.000 Einträgen) und bietet zusätzliche einfache Filter / Suchfunktionen.

  • Neu: Felder mit Nachschlageliste, die NULL sein dürfen, enthalten jetzt einen Clear-Button um den Wert zu leeren.

  • Neu: Werte aus selbst definierten Nachschlagelisten werden nicht mehr sortiert, die Reihenfolge der Eingabe bleibt erhalten.

Schnellstart

  • Neu: Für das Leeren des Suchtextes wurde ein "Clear-Button" (x) eingefügt.

Tabellenansicht

  • Fix: Anzeige der Geometrie aus der Tabelle hatte keine Funktion, nur das Menü klappte auf.

Datenbrowser

  • Neu: Im Datenbrowser können jetzt auch GPX Dateien als aktive Quelle verwendet werden. Weitere Details sind im Iwan7-Changelog zu Version 7.0.22 zu finden. Gpx Db Browser

  • Neu: Kleine Erweiterung um das Attribut "hidden" um den Tooltip der Tabellen aus der Beschreibung zu reduzieren:

      title:{Anzeigetitel hier}
      {optionale weitere Beschreibung als Tooltip}
      hidden: Alles ab hier, wird *nicht* im Tooltip angezeigt.
  • Fix: Die Recherche mit dem Operator "Ist angegeben" / "Ist nicht angegeben" führte zu dem Fehler Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

  • Fix: Bei der Recherche in PostgreSQL Tabelle trat bei Spalten vom Typ "Boolean" der Fehler ERROR: 42883: operator does not exist: boolean = integer auf.

Anwendungsverwaltung

  • Fix: Man konnte bei den Einstellungen und Tasks speichern und sofort das Fenster schließen. Dies provozierte eine Fehler beim Setzen der Validierung nach dem Versuch des Speicherns. Das Fenster wird nun während des Speichervorgangs bzw. -versuchs mit blockiert und kann währenddessen nicht geschlossen werden.

Koordinaten-Umrechner

  • Neu: Bei Aufrufen an den HOETRA2016 Dienst wird jetzt der in cardo eingestellten Standard-Proxy verwendet.

4.0.11 (03.05.2019)


Koordinaten-Umrechner

  • Neu: Die bisherige Oberfläche wurde in ein übersichtlicheres Formular geändert. Koordinaten Umrechner V2

  • Neu: Es wurde eine (über die web.config von cardo4 (...\cardoSystem\CoreWeb4) konfigurierbare) Möglichkeit zur Höhen-Transformierung m.H. des HOETRA2016-Webdienstes integriert. Wenn der Parameter Hoetra2016_Url angegeben ist, geben Sie damit auch automatisch Ihre Einverständniserklärung zu den Nutzungsbedingungen des jeweiligen Betreibers ab. Um die Höhen-Transformation pro Projekt zu aktivieren, stellen Sie den Parameter [PROJEKTNAME].UseHoetra2016Api auf true.

Karte

  • Neu: In der Ebenenliste und der Legende ist jetzt die Option "Nur sichtbare" vorhanden, der Filter ist standardmäßig aktiviert. In der Ebenenliste werden jetzt auch Beschriftungsebenen mit aufgelistet. Layer List V2

  • Neu: In den Einstellungen der Karte kann eine Start-Karte definiert werden. Dabei handelt es sich um eine in "Mein cardo" gespeicherte Karte. Wurde diese Einstellung getroffen, dann wird diese Einstellung beim ersten Start der jeweiligen Kartenanwendung automatisch geladen. Zudem können Ausschlüsse definiert werden. Bspw. wenn die Aktion zum Starten über eine Ebene erfolgt, dann die Einstellung nicht anwenden.

  • Neu: In den cardo Einstellungen kann der cardo Administrator globale Symbole einstellen. Diese können von den Modulen ausgewertet werden. Derzeit unterstützen folgende Module diese Einstellungen: siehe Globale Symbole.

  • Neu: Die Selektionslayer sind jetzt im Ausdruck mit enthalten.

  • Neu: Die Themenanzeige wurde überarbeitet.

    • Das Hinzufügen vieler Themen in die Karte ist jetzt deutlich schneller.

      Die Liste der Ebenen wird jetzt erst erstellt, wenn auf die Karteiseite "Ebenenliste" gewechselt wird.

    • Die Hintergrundkartenauswahl ist jetzt im Bereich "Themen", vorher war diese in der "Ebenenliste".
    • Die Einträge in der Liste der Hintergrundkarten wird jetzt alphabetisch sortiert. Ebenenbaum V2
  • Neu: Kleinere Überarbeitungen:

    • Neue Eigenschaft "Übersichtskarte -> "Beim Start aufgeklappt" bei den Karteneinstellungen
    • Angepasste Meldungstexte, wenn beim Erstellen einer Selektionsebene nicht genau eine Ebene markiert ist.
    • Neue Hilfeseite für den Dialog "Beschriftung erstellen" hinterlegt.
  • Neu: Intern werden die Kartenanforderungen abgebrochen, wenn der Client die Verbindung trennt.

  • Fix: Der Ebenenbaum sortiert jetzt zunächst nach LayerType, damit Ordner auch bei Ebenen mit Sublayern nach oben sortiert werden.

  • Fix: Es können jetzt auch WMTS-Dienste eingebunden werden, die die Operation "GetTile" nicht anbieten, sondern ausschließlich REST-URLs für die einzelnen Layer angeben. (Betrifft z.B. den WMTS-Dienst "TopPlusOpen")

  • Fix: WFS Ebenen, die im Administrativen Baum definiert wurden, konnten nicht für Darstellung anpassen und die Plus/Minus-Selektion verwendet werden.

    Bitte definieren Sie WFS Ebenen im Managementcenter immer so, das genau ein WFS Layer angegeben ist.

  • Fix: Beim Wiederherstellen der Sitzung wurde u.U. das KBS der Karte nicht korrekt gesetzt.

  • Fix: Beim Hinzufügen einer WMTS (Iwan7) Ebene in die Karte trat der Fehler "Die Eigenschaft "flags" eines undefinierten oder Nullverweises kann nicht abgerufen werden" auf.

  • Fix: Anpassen der Darstellungsreihenfolge in der Ebenenliste funktionierte nicht mehr, wenn mindestens eine Selektionsebene erstellt wurde.

Tabellenansicht

  • Neu: Die Optionen für Selektionsebenen, Filter und Freihandgeometrie, werden jetzt immer unter dem Button "Geometrie(n) anzeigen" einsortiert um einerseits das Verhalten konsistenter zu machen und andererseits Platz zu sparen (da es inzwischen recht viele Optionen gibt).

  • Neu: Die Sachdatenanzeige kann nun optional die IduIT.Core.Kiss.Ui.Grid.Column.RowNumberColumn einblenden, um die Zeilennummer anzuzeigen. Dafür gibt es in der Toolbar einen entsprechenden Knopf. Wenn die Spalte angezeigt wird und der Fokus darauf liegt, kann man durch Eintippen von Zahlen zur entsprechenden Zeile springen. Sachdatenanzeige V2

  • Neu: Im Kontextmenü einer Zelle wurde die Option "Zellwert in Zwischenablage kopieren" hinzugefügt.

  • Neu: Für die Datenzeilen wird als Tooltip ein Inhaltsfenster mit allen Werten der aktuellen Zeile angezeigt.

  • Neu: Die Aktion "Als Selektionslayer hinzufügen" ist für alle auf Abfragen basierenden Inhalten möglich. Z.Z. wird die Aktion immer im Modus "hinzufügen" ausgeführt.

Datenbrowser

  • Neu: Im Datenbrowser kann der Anzeigetitel der Tabellen jetzt aus der Beschreibung genutzt werden. Dazu muss in der Datenbank der Kommentar/die Beschreibung für das Objekte folgenden Aufbau haben:

      title:{Anzeigetitel hier}
      {optionale weitere Beschreibung als Tooltip}

    Bisher wurde die Beschreibung nur als Tooltip ausgegeben. Die Anzeige erfolgt dabei nur direkt im Datenbrowser.

  • Neu: Bei XLSX Tabellen werden Zeilenumbrüche in Spaltenköpfen durch "nichts" ersetzt, es konnte sonst bei der Weiterverarbeitung, bspw. Import in eine Datenbank, zu Fehlermeldungen kommen.

  • Fix: In folgender Konstellation konnte es vorkommen, dass beim Laden einer Geodatendatei (bspw. Shapefile) immer die falsche Quelle verwendet wurde:

    • ein Pfad zeigte auf eine nicht-lokalen Freigabe
    • im Übergeordnetem Pfad bestand für den Prozess keine Leseberechtigung
    • als cardo Steuerdatenbank wird PostgreSQL Datenbank verwendet.

    In diesem Fall wurde ein leerer DOSName für die Datei ermittelt, das dann folgende Lookup auf die Tabelle CDO4_FILE_IDS mit dem leeren Pfad ergab immer die gleiche Quelle.

  • Fix: Im Datenbrowser konnte beim Aktivieren einer dateibasierten Quelle der Fehler "Die Datei XXX ist nicht vorhanden" auftreten, wenn für einen überordneten Ordner keine Leseberechtigung bestand.

  • Fix: ERROR: 42602: invalid name syntax beim Abrufen der Datenbankstruktur für PostgreSQL.

    Wichtiger Hinweis: Sie sollten generell bei Datenbanken die Verwendung von "Quoted Identifiers" vermeiden. Die Unterscheidung der Groß/Kleinschreibung bei Datenbankobjekten kann an den verschiedensten Stellen Probleme verursachen, deren Ursache nicht immer offensichtlich ist.

    Kleiner Tip für PostgreSQL Nutzer: Achten Sie beim Anlegen von Objekten im PgAdmin immer darauf, alle Objektnamen klein zu schreiben.

Datenbearbeitung / GEdit

  • Neu Wenn die Geometrie-Toolbox in einem Dialog ist, dann wird dies erkannt und die Toolbar des Dialogs wird ausgeblendet, wenn die Tab-Seiten von der Hauptseite gewechselt werden.

  • Fix: Für feste Wertelisten, die in einer Spalte des AnySourceEditor definiert sind, werden die Werte jetzt beim Abrufen intern in das Datenformat der zugewiesenen Spalte konvertiert. Bisher wurde immer vom Datentyp "Text" ausgegangen. Wenn es sich dann um Zahlen gehandelt hat, wurden im Editor die zugewiesenen Werte nicht angezeigt.

  • Fix: Bei sehr großen Lookup-Tabellen trat ein "Stackoverflow" Fehler auf (Grund ist der JavaScript spread-Operator).

  • Fix: Der MS SQLServer Datentyp "Bit" wurde als Zahl interpretiert, jetzt richtig als "Ja/Nein" Feld.

  • Fix: Beim Löschen eines Datensatzes im AnySourceEditor wird jetzt das Formular geleert, wenn der Datensatz dort in Bearbeitung war. Das bedeutet auch, dass eventuell die in der Karte angezeigte Geometrie nun korrekt entfernt wird.

  • Fix: Bei "Änderungen rückgängig machen" eines kopierten Datensatzes im AnySourceEditor kam eine Fehlermeldung, weil versucht wurde, den (nicht original vorhandenen) Datensatz neu zu laden. Der kopierte Datensatz wird jetzt korrekterweise entfernt.

  • Fix: Beim Hinzufügen eines Datensatzes (über "+" oder "Datensatz kopieren"), wurde der neue Datensatz nicht in der Liste fokussiert. Jetzt wird auch an die Position gescrollt.

GeoSQL

  • Neu: Intern werden die Abfragen auch dann abgebrochen, wenn der Client die Verbindung trennt (im IE passierte dies bisher immer, aber bei Chrome und Firefox u.U. nicht zuverlässig).

  • Fix: Abbrechen der Anfrage führte nicht dazu, dass Iwan7 auch das Abbruchsignal erhalten hat.

Sketch

  • Fix: Ausgewählte Einträge können nun auch wieder abgewählt werden. Ein Klick auf eine selektierte Zeile de-selektiert diese wieder, statt bisher den Text-Editor anzuzeigen. Der Text-Editor erscheint fortan nur noch, wenn direkt der Text anklickt wird. Auf diese Weise sind die beiden Funktionen "umbenennen" und "de-selektieren" in einer Zeile vereinbar.

News & Events

  • Neu: Das Neuigkeiten & Ereignisse - Archiv ist jetzt absteigend nach Ablaufdatum sortiert.

cardo3 Anwendungen

  • Neu: In der Metadatenrecherche ist jetzt auch das Anzeigen von gefundenen WFS Diensten in der Karte möglich (bisher ging in carod4 nur WMS). Wir wünschen viel Spaß beim Finden eines funktionierenden Dienstes :).

  • Neu: Für die Anwendung "Puzzle" werden jetzt die Startberechtigungen mit ausgewertet.

  • Fix: ExportManager Ein Darstellungsproblem führte dazu, dass einige Formularfelder ohne IE-Quirksmodus nicht sichtbar waren.

  • Fix: Integrierter Puzzle-Editor:

    • Die Schaltflächen am Geom-Feld fehlten im Chromium. (weil die Seite innen schneller ist, als der c4-Proxy angefügt wird)
    • Gab es mehrere Geometriefelder in einer Kategorie, dann führten alle Bearbeitungsaktionen immer nur zur Veränderung des letzten Geometriefeldes.
    • Das Erstellen einer Mulit-Punkt-Geometrie funktionierte nicht.

Sonstiges

  • Neu: Neues, moderneres Design für die Metadaten und Puzzle Standardansicht.

  • Neu: Beim Start einer Anwendung mit einer Aktion wurde der Info-Text angepasst, bisher wurde immer "Anwendung XXX wird gestartet" ausgegeben.

  • Neu: Unsere Visual Studio Extension steht auch für Visual Studio 2019 zur Verfügung.

    Z.Z. sind wir immer noch auf TypeScript Version 3.0, die Umsetzung für aktuelle Typescript Version ist erst für die Version 4.0.12 geplant.

    Den Download finden unter Entwickler-Extension.

  • Fix: In den Einstellungen wurden bisher explizit der Nutzer-Standard durch die geänderten "Administrative Einstellungen" überschrieben.

  • Fix: Wenn ein Fenster nur gegenüber einem anderen Fenster modal gesetzt wurde, dann war es nachher nicht mehr möglich durch Ziehen am Rand die Fenstergröße zu ändern.

  • Neu: In den Einstellungen für cardo4 gibt es eine weitere Einstellung für Formulare: "Farbiger, Formulare mit mehr Kontrast".

Aufrufschnittstelle (cardo::com)

  • Fix: Bei der Selektion mit sehr große Zahlenwerten als Vergleichswert wurden keine Treffer erzielt.

API

Server

  • Neu: Neue Klasse IduIT.Core.ExceptionWithSeverity, hiermit können die Standard-Meldungen via cardo.Raise die Schwere des Fehlers bei der Auswahl des Icons beachten.

  • Neu: Klasse mit Ajax-MEthoden können das neue Interface Core.Web.Ajax.IAjaxTransactional implementieren. In diesem Fall wird für jeden erfolgreiche Methodenaufrufe CommitAjaxMethodeund im Fehlerfall RollbackAjaxMethode aufgerufen.

  • Neu: Der ORM bildet wählt bei der Speicherung von Objekten in Datenbankspalten als Json einen JsonFormater mit Type-Angabe aus, wenn der Eigenschaftstyp ein Interface oder eine abstrakte Klasse ist.

  • Neu: BreakingChange Das Interface IUnbufferdAsynchronResultMarker wurde um die Methode AsyncOnClientDisconnect erweitert. Ggf. sind Code-Anpassungen erforderlich.

    Die Methode wird aufgerufen, wenn während der Datenproduktion die Verbindung vom Client getrennt wird.

CodeGen

  • Neu Typen aus anderen Assemblies, die das GenerateTSCode Attribut verfügen werden der Auflistung der bekannten Typen hinzugefügt.

  • Neu: Der Generator für den Proxy-Code für Ajax-Methoden fügt bei den Typen der Methoden für Klassen- , Interface- und Nullable Typen jetzt "|null" in der Typdefinition der Argumente ein. Damit werden umständliche Casts umgegangen, die bei der Kompilierung mit strictNullCheck sonst erforderlich wären.

    Neu ist auch das Attribut TypeScript.CodeGen.NotTSNullable. Wenn dieses für einen Parameter definiert ist, dann wird dieser nicht mit "|null" ergänzt.

    Bsp.:

    public void AxBufferGeometry1( [TypeScript.CodeGen.NotTSNullable] IduIT.GeoLib.Net.Geometry geom)
    {
    
    }
    
    public void AxBufferGeometry2(IduIT.GeoLib.Net.Geometry geom) 
    {
    }
    

    wird zu ...

    AxBufferGeometry1(geom: IduIT.Core.Geometry.IGeometry) ...
    
    AxBufferGeometry2(geom: IduIT.Core.Geometry.IGeometry|null) ...
    ```
    
    
  • Fix: Wurden Typen nur in einem Template verwendet, wurde für diese kein Proxy Code generiert.

Client

  • Neu: Neue statische Promise.Deferred.waitAll() Methode, zum Warten auf eine Menge von Promises, die nie fail auslöst.

  • Neu: Der Kiss.Ui.Core.Blocker verfügt jetzt über eine Methode blockWhile(promise: IduIT.Core.Web.Promise.IPromise<any>, stayBlockedOnFail?: boolean): void. Damit kann das Blocken an ein Promise gebunden werden. Bei mehrfachem Aufruf wird für jedes Promise geblockt. Standardmäßig wird sowohl bei reject als auch resolve entblockt. Optional kann auch nur im Erfolgsfall entblockt werden.

  • Neu: Es gibt jetzt eine IduIT.Core.Kiss.Ui.Grid.Column.RowNumberColumn. Diese zeigt die Zeilennummer des Datensatzes im aktuellen View (das schließt Sortierung und Filter ein - also immer 1 ... n) an. Wenn nicht in der Config deaktiviert, kann man mit Fokus auf dieser Spalte lostippen und springt zur entsprechenden Zeilennummer.

  • Neu: Das IduIT.Core.PropertyModel.Format.StringFormatAttribute wurde erweitert um die Eigenschaften HeightValue und HeightUnit. Hiermit kann die Höhe, insbesondere von MultiLine-Textfeldern (TextArea) angegeben werden. Möglich sind Angaben in Pixeln (Standard), Prozent, Flex oder Zeilen. Achtung: Flex-Angaben funktionieren nur, wenn das gesamte Layout das ermöglicht!

  • Neu: Anwendungen können optional die Methode public getInitPromise?(): Promise.IPromise<any> bereitstellen. Diese wird vom Anwendungsmanager beim Start geprüft, das Promise wird dann aufgelöst.

  • Neu: Das Layout für Property-Model-Klassen kann jetzt via einer XML-Struktur beschrieben werden. Wir haben dazu eine kleine Anleitung geschrieben.

  • Neu: folgende Erweiterungen zu Geometrie-Toolbox und Dialog:

    • neue Methode IduIT.Core.UiWidgets.PromptDialog.IDialog.is(), die prüft ob eine Komponente das (ebenfalls neue) Interface ```IduIT.Core.UiWidgets.PromptDialog.IDialog´´´ implementiert.
    • neue Methode IduIT.cardo.Core.CoreModules.Mapping.Ui.createGeometryToolboxField(), die eine Instanz einer Geometrie-Toolbox als Form-Field erstellt. Bsp.:
      IduIT.Core.UiWidgets.PromptDialog.promptValue({
              modal: this.tryGetWindow() || this,
              title: 'Lage erfassen',
              field: IduIT.cardo.Core.CoreModules.Mapping.Ui.createGeometryToolboxField({
                  mapState: mapState,
                  allowedGeomtypes: null,
                  allowBuffer: true,
                  initGeom: null,
                  modalTarget: this.tryGetWindow(),
                  errorHandler: Cardo4.raise
              }),
              cancelValue: cancelValue,
              width: 700,
              height: 600,
              helpUrl: IduIT.cardo.Core.Applications.ApplicationHelp.HELP_BASE_URL + "toolbox",
              submitOnEnter: false,
              resizeable: true,
              confirmCancel: 'Sicher?'
          }).done(geom =>
          {
          }....
    
  • Neu: Kiss.Ui.Grid.MessageRecordGrid hat neuen Konfigurationsparameter creationDefaultSort.

  • Neu: Anwendungen können auf global definierte Symbole für Kartenelemente zugreifen. Dafür steht die neue EigenschaftCardo4.Env.globalSymbolManagerzur Verfügung. Die Typnamen sind dabei frei zu definierende Zeichenfolgen, die in der neuen cardo Einstellung "Symbolik" definiert werden können. Eine Beschreibung ist unter Globale Symbole zu finden.

  • Neu: Bei der Erstellung der Instanz einer Anwendung wird vom Anwendungsmanager der Grund für den Start mitgegeben. Dabei wird unterschieden in Start über die Anforderung per WellknownType oder Standalone. Ziel ist es, dass die Anwendung beim ersten Start ggf. weitere Vorbereitungen treffen kann.

    Der Konstruktor kann entsprechend des folgenden Schemas implementiert werden:

    // Wenn von ApplicationWithSettingsBase abgeleitet wird:
    public constructor(settings: IMySettingsType, reason: IduIT.cardo.Core.Applications.IClientAppInstantiationReason | null)
    {
    }
    
    // sonst ....
    public constructor(reason: IduIT.cardo.Core.Applications.IClientAppInstantiationReason | null)
    {
    }
    
  • Neu: Einige Erweiterungen in Kiss.Lang.Date (getDatePart, daysBetween).

  • Neu: IGridConfig wurde um "scope" erweitert, dieser wird für den GroupRenderer gesetzt.

  • Neu: IAbstractGridConfig<TData extends object, TId, TViewItem extends object> wurde um den Parameter rowTipRenderer erweitert. Hier kann eine Funktion übergeben werden, die anhand des TViewItems (entspricht TData bei normalen Grids) einen (auch HTML-)String oder eine ITooltipConfig oder auch null zurückgibt. Wird dieser Parameter belegt und gibt die Funktion für die Zeile nicht null zurück, wird entsprechend beim Schweben der Maus über der Spalte ein Tooltip angezeigt.

  • Neu: Der Blocker-Komponente kann in der config der neue Parameter applyVisualModeDelay übergeben werden. Dieser wendet den VisualMode dann nach der hier in Millisekunden angegeben Verzögerungen an. Die Komponente wird in jedem Fall blockiert, aber sichtbar wird dies dann erst nach n-Ms.

  • Neu: Neue globale Methode IduIT.Core.Web.IErrorHandler.raise(e:Error), in der cardo Umgebung entspricht das Cardo4.raise. Kann in Bibliotheken verwendet werden, die keine direkte Referenz auf IduIT.cardo haben.

  • Fix: Tastaturnavigation im Firefox: Seit Firefox 65 hat sich das Verhalten der Key-Events im Firefox geändert - "Non-Printable Keys" feuern kein "keyPress"-Event mehr. Dieses wird aber in Kiss Übergreifend verwendet, um übergreifen die Navigation per Tastatur zu ermöglichen (Listen, Grids, Menüs, Trees...). Dieses Event wird jetzt für PageUp/-Down, Arrow Keys, Home/End und Escape im Firefox ab Version 65 emuliert, da KeyPress ja auch das "Gedrückthalten" der Tasten symbolisiert.

  • Fix: Beim Kiss.Ui.Form.Field.Color wurde die Farbe nicht korrekt dargestellt, wenn der Value initial befüllt war.

  • Fix: Der MenuButton des Tabbar (wenn zu viele Tabs) aktualisiert jetzt beim Ausklappen auch die Label der Tabs im Menü. Vorher blieben die immer auf dem Stand des erstmaligen Einfügens in den TabView.

  • Fix: Die Javascript Methode "splice" eines Arrays verwendet Rest-Argumente. Damit kommt es zu Stapelüberläufen (Stackoverflow), wenn die Datenmenge groß ist (je nach Browser unterschiedlich). Die Array-basierten Klassen verfügen jetzt über die Methode spliceEx zum Umgehen dieses Problems.

  • Fix: U.U. traten Script-Fehler beim Grid.onRowMouseEnter oder Grid.onCellMouseEnter auf.

  • Fix: IduIT.Core.Kiss.Data.Grouper.Binding gibt bei undefined und null Werten jetzt eine Gruppe mit einer leeren Zeichenfolge zurück. Bisher fand bei undefined keine korrekte Gruppierung statt.

cardo4 Application Proxy

  • Neu: Neue Methode public addOrChangeMapLayers(layers: { layerName: string, visible: boolean, activeForSelection: boolean }[], forceShow: boolean): IduIT.Promise.IPromise<void>(), die Ebenen zur Karte hinzufügt, bzw. den Status sichtbar/selektierbar aktualisiert.

  • Neu: Neue Methode tryGetPrintRenderLayerListJSONOldAxIOLayerStyle(): IduIT.Promise.IPromise<object> - sie gibt ein Array aller Ebenen der Karte als Objekt (IDU.Core.Web.Controls.Map.AxTypes.Layer.AxIOLayer[]) zurück, incl. der angepassten Styles und Hintergrundebenen - so können diese bspw. für Ausdrucke verwendet werden. Wenn es keine Karte gibt, wird null zurückgegeben. Diese Funktion gibt ein Promise zurück, da die Informationen vom Server abgerufen werden müssen.

  • Neu: Neue Methode setLayerVisibility(layerName: string, visible: boolean,forceShow:boolean): void

  • Neu: Da das unload-Event der IFrames nicht mehr gefeuert wird (nur im IE-Quirks-Modus), gibt es jetzt einen alternativen Weg: Der IduIT.cardo.Core.Sys.Cardo3Applications.Cardo4ApplicationProxy stellt zwei neue Methoden bereit, registerBeforeCloseHandler(fn) und unregisterBeforeCloseHandler(fn).

    Hier können eine oder mehrere Funktionen registriert werden (und wieder entfernt), die beim beforeClose-Event der gewrappten Anwendung ausgeführt werden. Wenn eine dieser Methoden false zurückgibt, wird das Schließen der Anwendung abgebrochen.

    Der Aufruf aus der gewrappten Cardo3-Anwendung kann z.B. so aussehen:

    
      Ext.onReady(function () {
      	document.body.OnCardo324ApplicationProxyAttach = function () {
      		// Proxy holen.
      		var c4p = document.body.Cardo324ApplicationProxy;
      		// BeforeClose abfangen
      		c4p.registerBeforeCloseHandler(function () { return window.confirm('Wirklich schließen?'); });
      	};
      });
    
    

Zuletzt geändert: 28.07.2019 07:51:12 (erstmals erstellt 28.07.2019)