Version 4.1.7
Die Version 4.1.7 wurde initial im Juli 2021 veröffentlicht.
Bitte beachten Sie die folgenden Hinweise zu diesem Update
Für IT-Administratoren
- Evtl. möchten Sie die neuen Möglichkeiten zum Monitoring verwenden.
- Der cardo4 Launcher kann evtl. auf den Client-Rechner aktualisiert werden.
- Evtl. wollen Sie cardo4 als "AlwaysOn" im IIS konfigurieren, ein kleines PowerShell Script übernimmt die relevanten Einstellungen.
- Beachten Sie, dass Windows Server 2008R2 seit Version 4.1.5 nicht mehr unterstützt wird.
- Zur Erinnerung: cardo4 kann auch als 64 Bit Anwendung eingerichtet werden, wenn keine der im verlinkten Artikel gegebenen Hinweise dagegen sprechen.
Für Betreuer
- Beachten Sie die Hinweise zum AnySourceEditor
Für Entwickler
- Wir empfehlen auf die TypeScript Version 4.3 zu aktualisieren
- Kompilieren Sie den Code neu (TypeScript und C#)
Oktober 2021
4.1.7.49248 (15.10.2021)
Neu: Für Picker gibt es eine neue Konfigurationsmöglichkeit
noPickerIfReadOnly
. Damit kann gewählt werden, dass im ReadOnly-Modus der Picker nicht angezeigt werden soll. Ein Klick auf den Trigger ist dann ohne Funktion. Standard istfalse
, d.h. der Picker wird auch im ReadOnly-Mode angezeigt, was dem bisherigen Verhalten entspricht.Fix: Pib: Beim 'Erneut öffnen' einer Arbeitsaufgabe wurde noch nicht ausreichend auf bereits begonnene nachfolgende Aufgaben geprüft.
Fix: In den Pib-Anwendungen funktionierte das Ändern/Löschen von Kommentaren nicht mehr.
Fix: Beim Gazetteer-Dienst funktionierte die Einstellung "cardo Standardproxy verwenden" im cardo 4 nicht.
September 2021
4.1.7.48872 (10.09.2021)
Neu: Für Nutzer von WFS Diensten, beachten Sie auch die Anpassungen an Iwan7 der Version 7.5.1.9.
Neu: Beim Anbieten von WMS Diensten wird die "Entire Earth" als BBox im GetCapabilities ausgegeben, wenn die Ebene selber keine definiert.
Neu Modul Neuigkeiten & Ereignisse: die Vorschaubereiche sind jetzt mit einem Scrollbalken ausgestattet - d.h. man kann dort auch die vollständige Nachricht lesen. Oder wie bisher die Nachricht anklicken und dann im sich öffnenden Fenster in groß ansehen.
Neu Druck: Unter cardo4 lässt sich nun der Platzhalter SelectionLayerData verwenden, wenn die entsprechende Selektion mit der Aktion 'Als Selektionsebene hinzufügen' als Sublayer eingeblendet wurde. Die Angabe der Selektionsebene als Platzhalterparameter ist nun im Template zwingend erforderlich.
Fix Druckdialog: In seltenen Fällen konnte es vorkommen, dass der Druckdialog die Meldung 'Keine cardo4-Umgebung verfügbar' ausgab.
Fix: Die Spalten-Einstellung "Durchsuchbar" wurde als "Sichtbar" ausgewertet.
Fix
IduIT.PiB.ProcessModel.Ui.Components.WorkItemList
Die Gruppierungsoptionen aus der Config (showGroupHeaderButton) werden jetzt nur auf die Standardwerte gesetzt, wenn keine Angaben gemacht wurden. Damit wird eine eigene Gruppierung (oder abschalten) wieder möglich.Fix: Der Aufruf von Ajax Methoden an cardo3 funktionierte nicht mehr, das das cardo4 Kompressionsformat nicht bekannt ist.
Das Problem trat nur mit nicht IE-Browsern auf.
Fix: Der FileBrowser liefert u.U. Dateien per WebDAV aus, dort wurde kein Content-Type gesetzt. Office Programme brachten hier u.U. Warnhinweise bzgl. nicht passender Dateitypen.
August 2021
4.1.7.48743 (26.08.2021)
Fix: U.U. wurde in von cardo erstellten Zip-Archiven ein leerer Ordner erstellt, bei einigen ZIP Programmen gab es damit Probleme, u.a. Upload einer solchen Datei im Datenbrowser, das Archiv ließ sich dann nicht extrahieren.
Dies ist z.B. beim Export als Shapefile aufgetreten.
Fix Iwan6: WMS Ebenen mit der Option "allowAscyn" wurden u.U. nicht in der Antwort als "gezeichnet" mit zurückgegeben. In cardo konnte dies dazu führen, dass die Lizenztexte nicht für diese Ebene ausgegeben wurden.
4.1.7.48715 (20.08.2021)
- Neu: Im Datenbrowser können jetzt auch XPlan Dokumente mit dem Standard 5.0 und 5.1 angezeigt werden (Hinweis: die Symbolik wurde z.Z. nicht weiter angepasst)
4.1.7.48710 (19.08.2021)
- Fix: Ein Desktop-Icon vom Typ "Sitzung" konnte nicht mehr verwendet werden, wenn die zugrunde liegende Sitzung überschrieben wurde.
4.1.7.48692 (17.08.2021)
Neu: Die Ordner im Zip beim Herunterladen im Datenbrowser über die Merkliste werden jetzt besser organisiert ausgegeben.
Fix: Wenn in der Datenliste des AnySourceEditors ein Datumswert enthalten war, wurden alle Zeilen beim Neuladen als geändert markiert.
Neu: Bei fehlenden Berechtigungen an Lookup-Listen im AnySourceEditor kam die Fehlermeldung "Sie sind nicht berechtigt auf dieses Schema zuzugreifen", jetzt wird hier der Objektname ausgegeben, für den die Berechtigung fehlt.
Neu: Der Druckdialog ist jetzt in der Größe änderbar. Damit besteht bei kleinen Bildschirmen (Höhe 600) noch eine Möglichkeit, den Druckdialog zu bedienen.
Neu : die Methode
retrieveGeometry
im cardo4ApplicationProxy bietet in dem options-Objekt jetzt neu einen ensureVisibilityOffset (in Metern) - dieser wird bevorzugt verwendet, wenn eine nachzubearbeitende Geometrie initial nicht im Kartenausschnitt enthalten ist.Dann wird wie bisher auf die Geometrie gezoomt - der Offset kann über die neue Option jetzt festgelegt werden.
Neu : der Methode
ensureExtentIsVisible
der Kartenkomponente kann jetzt über einen optionalen zweiten Parameter ein Wunsch-Offset übergeebn werden. Bisher lag dieser fest bei 500 Metern bei Punkten bzw. 10% der Ausdehnung bei anderen Geometrietypen.
Juli 2021
4.1.7.48610 (28.07.2021)
- Neu: Die Download-Aktion wurde auf Wunsch noch etwas angepasst:
- Für das Umschreiben des Dateinamens wurde eine neue Einstellung eingeführt.
- Die Merkliste ist auch im Kontextmenü des Datenbrowser verfügbar.
- Beim Download wird für Ordner der letzte Verzeichnisname auch im Zip generiert, wenn der nicht eindeutig ist, dann wird der übergeordnete Ordner solange angefügt, bis eine Eindeutigkeit gegeben ist.
4.1.7 (28.07.2021)
AnySourceEditor
Neu: Es können jetzt auch Geometrien aus anderen Tabellen als Lookup-Typ zugewiesen werden.
Richten Sie dazu wie gewohnt eine Nachschlageliste für eine Spalte ein. Sobald ein Geometrie-Feld enthalten ist und dieses als Anzeigefeld zur Auswahl kommt, wird für dieses Feld im Formular ein erweitertes Eingabefeld erstellt, an welchem die Geometrie-Aktionen enthalten sind (von Karte abgreifen, in Karte anzeigen).
Es muss lediglich noch der Name einer Ebene angegeben werden. Beachten Sie, dass Sie sicherstellen müssen das die Ebene auf die gleichen Daten zeigt, wie die Quelle die für die Lookup-Liste angegeben ist.
Dies entspricht ungefähr den alten "Warehouse-Ebenen" des Kleinkatasters. Eine Beschreibung finden Sie hier.
Neu: Für Spalten, die Nachschlagelisten aus Tabellen definieren, werden in der Listenanzeige jetzt die Nachschlagewerte angezeigt (DisplayFields). Bei Änderung von Daten werden diese nach dem Speichern in der Liste aktualisiert.
Es gelten folgende Einschränkungen:
- Es werden keine JOIN's definiert, wenn der Lookup-Typ "ComboBox" eingestellt ist, da der Wert aus der Liste identisch mit dem gespeicherten Wert ist.
- Einträge aus einer Werteliste werden nicht angefügt, bitte stellen Sie bei Bedarf auf eine Tabellen-Quelle um
Neu: Beim Speichern der Einstellungen werden die Einstellungen der Nachschlagelisten jetzt umfangreicher überprüft (Tabelle vorhanden, Spaltentypen müssen passen etc.)
Empfehlung: Sie sollten für die eingerichteten Tabellen und Ebenen nach dem Update einmal den Einstellungsdialog aufrufen und "Speichern" drücken.
In der Steuerdatenbank kann folgende Abfrage zur Ermittlung der betroffenen Objekte durchgeführt werden:
select variant_name from cdo4_settings cs where settings_type_name = 'IduIT.cardo.Core.Environment.Content.LayerDataSettings.LayerDataSettings' and settings_json like '%"lookupSettings":{%'
Neu: Im Datenbrowser wird beim "Bereitstellen als Ebene" einer Tabelle eine Abfrage generiert, welche für die Spalten mit der Einstellung "Nachschlagelisten aus Tabellen" die Anzeigespalten in die Ebene anfügt. Es werden auch Geometrien aus Nachschlagelisten ausgewertet.
Sind mehrere Geometriespalten enthalten, wird Z.Z. einfach die Erste als Anzeigegeometrie verwendet
Fix: Bei editierbaren Ebenen aus dem Ebenenbaum wird die Einstellung "theSearchPath" für PostgreSQL Ebenen übernommen.
Fix: Nach dem Speichern trat u.U. der Fehler "comparisonType kann nicht gelesen werden." auf.
Karte
Neu: Für Beschriftungsebenen wurde in den Dialogen zur Stilanpassung "Standard wiederherstellen" entfernt.
Wenn im CSS-Code Editor für Beschriftungen der Text geleert wurde, dann wird beim erneuten Öffnen des Formulareditors das Standard-CSS wiederhergestellt.
Neu: Beim Klick auf einen Ordner im Ebenenbaum der Karte wird jetzt geprüft, wie viele Ebenen damit angeschaltet werden würden. Wenn die Anzahl ....
- >= 100 ist, dann erfolgt eine Rückfrage, ob dies wirklich durchgeführt werden soll,
- >= 2000 ist, wird die Aktion mit einem Hinweis abgebrochen.
Fix: In der Legendenliste wurde für WMS Ebenen der Fehler Es ist keine Legende verfügbar. .... ausgegeben.
Fix: Eine Beschriftungsebene, die an einer WFS Ebenen erstellt wurde, ließ sich nicht korrekt ein- bzw. ausschalten.
Datenbrowser
Neu: Der Datenbrowser integriert Aktionen in alle Tabellenansichten für Spaltenwerte, die wahrscheinlich auf eine Datei zeigen. Konkret werden für alle Datenzellen, deren Werte dem Muster
filealias://Alias/...
entsprechen, weitere Aktionen zum Öffnen der Dateien im Kontextmenü angeboten.Der Alias ist dabei der in den Einstellungen der Anwendung "Datenbrowser" definierte Alias für ein Dateiverzeichnis.
Ob der Nutzer für den Zugriff berechtigt ist, bzw. ob die Datei vorhanden ist, wird erst beim Ausführen der Aktion ermittelt.
Eine weitere Ergänzung ist eine Merkliste, der Dateien hinzugefügt werden können, um diese als eine Zip Datei herunterzuladen. Dabei können Dateien oder Ordner abgelegt werden.
Neben der automatischen Erkennung steht für die Konfiguration der Tabelle auch eine neue Aktion "Datenbrowser" zur Verfügung, wodurch mit den bekannten Konfigurationsmöglichkeiten eine explizite Definition dieser Aktionen erfolgen kann.Für die so konfigurierten Spalten werden dann verschiedene Aktionen bereitgestellt, um die Datei zu öffnen, herunterzuladen oder der Datei-Merkliste hinzuzufügen.
Neu: BreakingChange: Die "Eigenen Dateien" des Datenbrowsers per WebDav sind jetzt im Unterordner "DataBrowser" abzurufen.
Neu ist, dass jetzt auch alle weiteren konfigurierten Verzeichnisse per WebDAV zugänglich sind.
Neu: Für Office-Dateien ist im Kontextmenü des Datenbrowsers die Aktion "Mit MS (Word, Access etc.) öffnen" verfügbar. Dabei wird die Datei per WebDAV und unter Angabe des Office-Protokoll-Handlers in der URL geöffnet.
Ob dies praktisch funktioniert, ist teilweise von der Umgebung abhängig. Die Installation eines passenden Office-Paketes ist Voraussetzung und je nach Anmeldeverfahren sind evtl. Einstellungen am Betriebssystem erforderlich, bspw. das Zulassen der Basic-Authentifizierung ohne SSL.
Desktop
Neu: Es besteht jetzt die Möglichkeit Icons für "WellknownTypes" auf dem Desktop abzulegen. Im Kontextmenü für viele Typen (Ebenen, Ordner, Anwendungen, Sitzungen...) gibt es dazu die neue Aktion "Desktopicon hinzufügen".
Mit einem Klick auf das Icon wird die Standardaktion ausgeführt. Weitere Aktionen findet man im Kontextmenü.
cardo.COM
- Neu: Die Aktion mapping.showLayer wurde hinzugefügt. Damit kann cardo geöffnet und in der Karte die Liste der übergebenen Ebenen angezeigt werden.
Sachdaten
Neu: In dem Standard-Rechercheformular wird die Vorschauliste der Werte beim Eingeben von Zeichen gefiltert (einfacher "Enthält"-Filter).
Neu: Beim Standard-Export wurde der Timeout jetzt auf eine Stunde erhöht. Dies betrifft alle Exporte und auch den Import per Datenbrowser in eine Datenbank.
Symboleditor
Neu: Im Kontextmenü des Editors befindet sich die neue Aktion "Vorschau für alle Einträge".
Neu: Klassifikationen können auch für Ganzzahlspalten erstellt werden, bisher nur für Dezimalzahl Typen.
Die Abfrage für die Bereichsklassifizierung wurde etwas überarbeitet, bisher wurden nur Bereiche angezeigt, für die auch Datensätze vorhanden waren (d.h. die Anzahl der tatsächliche erzeugten Klassen unterschied sich u.U. vom "Wunsch").
Neu: Bei Klassifikationen werden die Label für die Legende mit generiert.
Fix: beim Umschalten der Spalte im Klassifikationsdialog konnte der Fehler "... value.toPrecision is not a function ..." auftreten.
Fix: Beim Umschalten zwischen Code und Formularansicht wurde der Wert point-placement bei jedem Umschalten geändert, wenn er "größer" als last_point war.
Geometrieeditor
Neu: In dem Formular "Fläche aus Koordinatenliste" gibt es per Kontextmenü eine Aktion zur Anzeige eines Textfeldes, in welches die Daten alternativ zu STRG+V auf dem Formular eingefügt werden können.
"Mein cardo"
Neu: Beim Ändern des Kennworts wird als Bestätigung der Identität das aktuelle Kennwort vom Benutzer abgefordert.
Fix: Beim Verschieben von Einträgen per Drag&Drop in die eigene Struktur blieb das Element noch an der alten Stelle stehen (es wurde optisch kopiert, aber nicht verschoben).
Sonstiges
Neu: cardo4 als Startseite einrichten:
- Beim Update entsteht eine web.config.template im Ordner cardoSystem\Coreweb3\IIS
- Diese zu "web.config" umkopieren (die bestehende Datei kann gelöscht werden).
- Damit erfolgt eine Umleitung von http://IhrCardo => http://IhrCardo/net4
- Der Aufruf zu cardo3 geht dann explizit mit http://IhreCardo/net3
Neu: Der Stil für die Trigger-Felder wurde etwas überarbeitet, dies soll die Bedienbarkeit vor allem bei mehreren Triggern nebeneinander verbessern.
Neu: Nachrichtenfenster ("MessageBoxen") werden jetzt beim Betätigen der ESC-Taste geschlossen.
Im Standard für alle Nachrichtenfenster, die eine Schließen-Schaltfläche oder einen Abbrechen Button besitzen.
Systemverwaltung
Neu: Die Einstellungen der Datenbankverbindungen können jetzt auch direkt in cardo4 (Systemeinstellungen) vorgenommen werden.
Sie sollten möglichst immer auf diese zentralen Einstellungen zugreifen, bspw. bei Einstellungen für Anwendungen.
Die neue Oberfläche zeigt auf die selben Einstellungen, die auch über das cardo Management Center bearbeitet werden können.
Neu: Beim Speichern der Anwendungseinstellungen gibt es am "Speichern" Button einen Untereintrag. Damit kann das Speichern erzwungen werden, auch wenn die Einstellungen nicht valide sind.
I.d.R. sollten Sie davon keinen Gebrauch machen!
Neu: Bei allen Aktionen "Rohdaten" werden beim Aufruf des Dialogs die Daten nicht mehr in die Zwischenablage kopiert.
Neu: Es kann ein Systemmonitoring zu zentralen Log-Servern eingerichtet werden. Hiermit wird eine umfangreiche Systemüberwachung ermöglicht, die bei der Fehlersuche und bei Performanzproblemen unterstützen kann. Für weitere Informationen siehe die Ausführungen zu Systemüberwachung.
Wenn das Monitoring eingerichtet ist, dann greift auch die neue Einstellung aus der web.config, womit das SQLUpdate für cardo4 Anwendungen automatisch eingespielt werden kann. Siehe auch die neue Einstellung in der Vorlage web.config.template:
<add key="{PROJEKTNAME.}Maintenance.EnableAutoApplicationSQLUpdate" value="false"/>
Neu: BreakingChange: Im Zuge der Verbesserung der Systemsicherheit gibt es mit dieser Version kleinere Anpassungen.
Die öffentliche Schnittstelle enthält keine Methoden mehr für den Zugriff auf die Datenbank, d.h.
Cardo4.Env.SystemOrm
,Cardo4.Env.SystemDb
undCardo4.Env.SystemDbA
wurden entfernt.Im (unwahrscheinlichem) Falle, dass Sie diese Eigenschaften verwendet haben, sprechen Sie uns bitte für Hinweise zur Anpassung Ihrer Anwendungen an.
Der Datenbrowser hat einige Blacklists für bestimmte Verzeichnisse. Ist ein angeforderter Ordner in der Blacklist vorhanden, wird dieser übersprungen.
Die Regeln der Blacklist können in den App-Settings der web.config mit der Einstellung
{Project.}IsSharedHostedInstance
zusätzlich eingeschränkt werden.
Neu: Die Funktionen zur Benutzerverwaltung (Erstellen von Gruppen/Nutzern usw.) stehen jetzt direkt in cardo4 als API zur Verfügung.
Fix: Beim Testen eines E-Mail-Profils wurde das Feld "Host" im Fehlerfall nicht als fehlerhaft markiert.
DTS (Neues Modul)
Neu: Das neue (kostenpflichtige) Modul DTS (Datentransformationsdienste) wurde in erster Version erstellt.
Hierbei sind zeitgesteuerte Datentransformationen / Importe im Hintergrund möglich.
Eingestellt werden muss Datenquelle => Datenziel => Zeitsteuerung.
Als Datenquelle ist z.Z. "nur" ein GeoJSON FeatureCollectionReader verfügbar, der die Daten von einer URL oder Datei abruft.
Als Ziel kann eine Datenbanktabelle angegeben werden, in die Daten geschrieben werden. Ein optionales POST-Sql erlaubt weitere Möglichkeiten der Anpassung der Datenstrukturen.
Es können beliebig viele Aufgaben erstellt werden. Eine Anpassung der Quelldatentypen ist relativ einfach möglich, hier warten wir auf Ihr Feedback.
Benutzerregistrierung / SPA Controls
Neu: Die SPA Controls können jetzt unter mehreren Alias angesprochen werden (PathIds). Der Instanz wird die PathId im Prepare mit übergeben.
Damit sind jetzt auch mehrere Nutzer-Registrierungsformulare möglich.
Zudem wurden die internen Konfigurationsmöglichkeiten umfangreich erweitert.
cardo4 Launcher
Fix: der cardo4 Launcher behebt mit Version 2.1.4 einen Fehler, dass die Anwendung nach einem Benutzerwechsel am PC nicht mehr korrekt startete.
In "Mein" cardo kann das Setup heruntergeladen werden. Die Aktualisierung muss manuell auf den jeweiligen Client-Rechnern durchgeführt werden.
PiB
Neu
IduIT.PiB.ProcessModel.Ui.Components.WorkItemList.IWorkItemListConfig
hat eine neuen (optionale) EigenschaftlistColumnOptions
vom Typ eines Flags-EnumnsIduIT.PiB.ProcessModel.Ui.Components.WorkItemList.WorkItemListColumnFlags
. Wenn dieser belegt ist, werden (außer Vorgang, Arbeitschritt und Status, die immer vorhanden sind) nur die gewählten Spalten angezeigt, ansonsten alle.Neu: Für die einfache Implementierung von Hintergrund-Tasks steht jetzt die neue Basisklasse
IduIT.cardo.Core.Api.Applications.PiBBased.PiBApplicationBaseWithBackgroundTask
zur Verfügung.Neu: Über den neuen Kontextmenüpunkt 'Kenntnisnahme' kann eine Aufforderung zur Kenntnisnahme an eine Person/Gruppe versendet werden. Die Person erhält eine E-Mail mit der Aufforderung, an der Arbeitsaufgabe die Kenntnisnahme per Knopfdruck zu bestätigen. Es gibt eine neue Ansicht 'Kenntnisnahmen' an den Arbeitsaufgaben, welche alle angeforderten Kenntnisnahmen und verschickten Informationen zur Arbeitsaufgabe auflistet.
Neu: Neben der Möglichkeit, an einer Arbeitsaufgabe eine E-Mail an die zuständigen Personen zu schicken, kann man jetzt die Arbeitsaufgabe auch an eine auszuwählende Person/Gruppe senden. Ein entsprechender Eintrag ist im Kontextmenü zu finden. Die Aktion wird in der Liste der Kenntnisnahme an der Arbeitsaufgabe als Typ 'Information' mit aufgeführt.
Neu: Intern können Workitems ein 'LimitInWorkDays' bekommen. Ist dieses gesetzt, wird die Frist aus dem Ende des relevanten Vorgängers + die Anzahl der Arbeitstage (unter Beachtung von Sa/So/Fei) ermittelt, wenn man solch ein Workitem von Hand einfügt.
Neu: Im PiB gibt es eine neue Klasse HolidayCalculator, mit welcher man unter Beachtung der Samstage/Sonntage/Feiertage des übergebenen Bundeslandes Fristen oder Tage ausrechnen kann. Derzeit gibt es die Funktionen AddWorkDays(startDate, workDays), SubtractWorkDays(startDate, workDays), EnsureIsWorkDay(date, searchBefore).
Neu: In der Ansicht der Kommentare zu einem Objekt können jetzt auch Kommentare anderer Objekte, die mit aktuellen in Beziehung stehen, abgerufen werden.
Die Mini-Buttons an den Tab-Karten der Objektansicht wurden zudem optisch überarbeitet.
Neu: Es gibt einen neuen CreatorFilter "Erstellt von", welcher als Filter der ObjectList freigeschaltet werden kann.
Neu: Neue Schnittstelle
IObjectWithLifetimeNotifications
, die Objekte für Benachrichtigungen für Erstellung- und Löschvorgänge implementieren können.Neu: Neben dem Tracing zu speziellen Objekten kann auch ein globales Tracing verwendet werden. Hier vor allem für die Protokollierung von Objektlöschungen.
Fix: Die Filterliste für die Vorgänge nach Art ist jetzt alphabetisch sortiert.
Neu: Ist eine Arbeitsaufgabe beendet oder archiviert und existiert eine Html-Ansicht, dann wird beim Öffnen der Arbeitsaufgabe vorzugsweise die Html-Ansicht angezeigt (bisher das Formular, welches aber gesperrt war).
Neu: In der Anzeige der Beziehungen werden Arbeitsaufgaben jetzt besser dargestellt.
Neu: Es gibt eine generelle Möglichkeit, Nachforderungen für bestehende Arbeitsaufgaben zu stellen. Dies ist möglich, wenn ein Workitem in der Umgebung vorhanden ist, welches von
IduIT.PiB.ProcessModel.CommonWorkitems.DemandData.AbstractDemandDataWorkitem
ableitet.
An den Workitems, bei denen eine Nachforderung möglich ist, muss die Eigenschaft AllowedSpecialTypes = SpecialWorkitemTypes.DemandData
am Attribut WorkitemDescription angegeben werden.
Damit dies für eine Menge von Workitems einfacher realisierbar ist, kann das neue WorkitemDescriptionMerge
Attribut auf die Basisklasse angewandt werden.
Neu: Objekte können jetzt auch mit System-Tags versehen werden. Diese können nur programmintern geändert werden und werden per reference-Counting gelöscht/hinzugefügt. Hier können bspw. aus Arbeitsaufgaben an Objekte weitere Status gesetzt werden, bspw. "In Beteiligung".
Neu: Beim Speichern und/oder Abschließen einer Arbeitsaufgabe wird jetzt überprüft, ob der aktuelle Nutzer als Bearbeiter an dieser Aufgabe eingetragen ist. Ansonsten wird nach Nachfrage der neue Bearbeiter eingetragen. Der vorherige Bearbeiter wird per E-Mail über die Übernahme informiert.
Neu: Einige Beschriftungen wurden vereinheitlicht. Statt 'Zugewiesen 'heißt es jetzt 'Zuständig', Termine wurden auf 'Fälligkeit' geändert und die ID konsequent als 'OID' benannt.
Neu: Die Listen haben neben der Gruppierung jetzt auch ein eigenes Sortierfeld. Damit kann eine Sortierung auch für Spalten erfolgen, die nicht in der Anzeige sind.
Neu: Die Arbeitsaufgabenliste hat jetzt alle Funktionen der Standard-Objektlisten.
Neu: Die Vorgangsliste wird nicht mehr standardmäßig nach Datum gruppiert.
Neu: einige Erweiterungen in den Standardscript Funktionen der Template-Engine.
Neue Methoden:
IsTrue(a)
,IsFalse(a)
,IsEqual(a,b)
,IsNotEqual(a,b)
, die im Zusammenhang mit der ebenfalls neuenFilter
Methode verwendet werden können.Bsp.:
{{ for el in Filter(BO.Niederlassungen,"Hauptsitz", @IsTrue) }}
.... bzw. ...
{{ for el in Filter(BO.Niederlassungen,"Hauptsitz", @IsEqual,true) }}
.
API
Server
Neu: BreakingChange Die Schnittstelle der TaskScheduler API wurde geändert, alle Methoden bekommen jetzt eine Instanz-Id übergeben, womit mehrere Tasks des gleichen Typs möglich sind. Betrifft
cardo.Core.ScheduledBackgroundTasks.Api.IScheduledBackgroundTaskFactory
undCardo4.Env.ScheduledTaskmanager
.Neu: Der
IduIT.cardo.Core.CoreModules.BasicEditing.ValueHandler.LookupValueHandler
kann jetzt auch für Lookups mit Ids aus einer Ebene umgehen.Neu: Der Ajax-Antworttyp
IFileDownloadResult
wurde die Eigenschaft "Inline" hinzugefügt, damit kann das Content-Disposition Attribut gesteuert werden.Neu: ORM-Linq Expression: HashSet.Contains wird in IN übersetzt
Beachte: StringComparsion wird nicht ausgewertet!
Neu: Ressourcen (z.B. eingebettete Scriban-Dateien) werden jetzt auch zu Generic-Klassen gefunden.
Neu: Der Ajax Ergebnisdatentyp
ZipFileDownloadResult
prüft jetzt, dass keine doppelten Dateien angefügt werden. Diese Prüfung erfolgt auch beim Hinzufügen von Verzeichnissen rekursiv auf alle Dateien.
CodeGen
- Neu: Die keys-Eigenschaft, die durch Angabe von
TsCodeEmbedNetTypeNameAttribute
generiert wird, enthält jetzt auch alle Eigenschaften der Basisklasse.
Client
Neu: Die
IMessageBoxBaseConfig
wurde um die EigenschaftescapeKeyAction
erweitert.Neu: Die Methode
IduIT.Core.Localization.string.formatWith
wurde um das optionale neue ArgumentsetEmptyIfAnyArgumentIsNullOrEmpty:boolean
erweitert.Neu:
AnyDataSettings.Plugins.IDisplayPlugin
wurde um die optionale MethodewidgetColumn
erweitert. Plugins können damit weitere Spalten mit Aktionen in der Ausgabe erzeugen.Neu: Neue globale Methoden
IduIT.cardo.Core.Applications.FileBrowser.showFileBrowserKeepList
undIduIT.cardo.Core.Applications.FileBrowser.downloadFileOrFolder
Neu: Konfiguration der
Grid.Columns.ValueColumn
wurde umsortFunction
erweitert.In dem Zusammenhang wurde die Signatur der Sorter-Funktion erweitertet. Erhalten Sie einen TypeScript-Fehler der Art
error TS7006: Parameter 'a' implicitly has an 'any' type.
, dann wurde wahrscheinlich eine Sortierfunktion im Binding übergeben. Folgender Code kann für den Fehler verantwortlich sein:new Kiss.Data.Sorter.Binding( "wert", Kiss.Data.Sorter.ESortDirection.Asc, (a, b) => a.wert<b.wert ); //=> Lösung: die Sort-Funktion ändern zu: // // (a, b, va, vb) => a.wert<b.wert // * *
Neu: Bei der AutoCompleteBox wird der Anzeigewert geleert, wenn dieser nicht in der Liste enthalten ist.
Neu: Neues Checkbox-Widget für Grids, Bsp.:
new Kiss.Ui.Grid.Column.WidgetColumn({ width: 20, items: [ new Kiss.Ui.Grid.Widget.Checkbox<T>({ enabled: e => e.unlockRequired === true || e.unlockRequired == null, checked: e => e.checked === true, handler: e => { const checked = (e.args.checked) ? false : true; this.grid.store.model.withRecord(e.args, r => { r.set("checked", checked); }); } }) ] })
Neu: Update auf TypeScript 4.3 (bisher: 4.2)
Entwickeln Sie selber cardo Erweiterungen, sollten Sie auch auf diese TypeScript Version aktualisieren.
Ist die Umgebungsvariable IDU_TS_VERSION gesetzt, muss der Wert zu "4.3" geändert werden.
Wir empfehlen in der TypeScript/tsconfig.base.json die Option
"noImplicitOverride":true
im BereichcompilerOptions
zu aktivieren. Für die dann erforderlichen Code-Anpassungen sollten Sie ca. eine halbe Stunde Aufwand einplanen.Fix: FieldSets ohne Titel haben jetzt keine Lücke mehr im Rahmen an der Stelle, wo eigentlich der Titel (die Legende) steht.
3rd Party
- Update externer Bibliotheken:
- TypeScript 4.2 zu 4.3
- Scriban 3.7.0 zu 4.0.1
- Markdig 0.24.0 zu 0.25.0
- NodaTime 3.0.4 zu 3.0.5
- OpenXmlSdk 2.12.1 zu 2.13.0
- Monaco Editor 0.18.1 zu 0.26.1 (im IE bleibt es bei der 0.18)
Zuletzt geändert: 21.03.2024 09:46:21 (erstmals erstellt 20.11.2021)