
Ab heute steht die Version 5.8.12 zum Download bereit…
Neben zahlreichen Erweiterungen bietet die aktuelle Release folgende Highlights:
- Steigerung der Produktivität in der Programmierung
Der Designer wurde um ein Werkzeug zum Vergleichen von Prozeduren und Texten erweitert. Eine neue “Willkommensseite” bietet in einer übersichtlichen Darstellung einen Schnellzugriff auf Funktionen wie die zuletzt verwendeten Dokumente oder Einstellungen des Designers. Ebenso wird der jeweils aktuelle Beitrag des conzept 16-Blogs auf dieser Seite angezeigt. Im Debugger stehen erweiterte Informationen zu Variablen zur Verfügung. Zudem können die Inhalte von Feldern und Variablen komfortabler eingesehen werden. Analog zum Editor ist das Suchen nach Begriffen und Funktionen in der Prozeduransicht des Debuggers jetzt ebenfalls möglich. - Geschwindigkeitsoptimierung von Anwendungen
Bei Dialogen mit einer großen Anzahl von Objekten führt die Optimierung zu einem deutlichen Geschwindigkeitszuwachs bei der Dialogerstellung und -anzeige. - Digitale Unterschrift für papierlose Geschäftsprozesse
Das Picture-Objekt wurde um das Erstellen digitaler Unterschriften erweitert. Bei Verwendung eines Tablets oder Touchscreen-Monitors ist eine Eingabe per Stift oder Touch möglich.
Liste der Erweiterungen:
Alle Komponenten
- Aktualisierung XML-Bibliothek
Die verwendete Bibliothek “libxml2” wurde auf die Version 2.9.7 aktualisiert. Diese Version enthält Fehler- und Sicherheitskorrekturen. - Aktualisierung Zip-Bibliothek
Die verwendete zlib-Bibliothek wurde auf die aktuelle Version 1.2.11 aktualisiert. Diese Version enthält Fehler- und Sicherheitskorrekturen. - Aktualisierung der OpenSSL-Bibliothek
Die verwendete OpenSSL-Bibliothek wurde auf die aktuelle Version 1.1.1d aktualisiert. Diese enthält Fehler- und Sicherheitskorrekturen. - Aktualisierung von Stammzertifikaten
Die Sammlung von Stammzertifikaten (ca-bundle.crt) wurde auf den Stand von Mozilla Firefox Version 70.0 gebracht.
conzept 16-Server
- Lizenzdatei (c16.lic)
Für den Betrieb des conzept 16-Servers 5.8.12 ist eine Lizenzversion 5.8.12 notwendig. Hierfür muss die Lizenzdatei aktualisiert werden. Ist beim Server die Option „Automatische Aktualisierung der Lizenzdatei“ aktiviert, entfällt ein manuelles Update.
conzept 16-Standard- und Advanced-Client
- Neue Debug-Option (/c16debugoptions)
Mit der Angabe von 0x2000 wird eine Protokollierung der Ladezeiten von Frame-Objekten aktiviert. Die gemessenen Zeiten geben Hinweise auf die Performance des Systems.
conzept 16 unter Linux
- Linux Kernel Version 5
Ab dieser Version wird der Kernel 5.x unterstützt.
conzept 16-Programmier- und DLL-Schnittstelle
- Fehlende Zeichensatzwandlung des Namens von Elementen der Datenstruktur bei folgenden Funktionen:
–C16_FldInfoExtByName()
/ externe API
–C16_FldInfoByName()
/externe API
–C16_FileInfoByName()
/ interne API
–C16_SbrInfoByName()
/ interne API
–C16_KeyInfoByName()
/ interne API
–C16_LinkInfoByName()
/ interne API
–C16_FldInfoByName()
/ interne API - Die unterstützten conzept 16-Befehle, ausgeführt aus der Programmierschnittstelle ohne grafische Erweiterung, wurden um nachfolgende Funktionen erweitert:
DllCall()
DllLoad()
DllUnload()
FsiFileInfo()
(mit einer Hash-Operation)FsiFileProcess()
JsonLoad()
JsonSave()
MailOpen()
(mit einer _SckTls…-Konstanten)MemDecrypt()
MemEncrypt()
MemGenKeyPair()
MemHash()
MemHMAC()
MemSign()
MemVerify()
SckConnect()
(mit einer _SckTls…-Konstanten)SckStartTls()
conzept 16-Designer
Willkommensseite
- Die neue Willkommensseite bietet einen Schnellzugriff auf wichtige Funktionen des Editors.

Merge-Tool
- Das neue Werkzeug “Merge-Tool” findet Unterschiede zwischen zwei Textdateien und hebt diese farblich hervor.

Benutzerverwaltung
- Option “Externer Zugriff”
Wird die Option gesetzt, ist der externe Zugriff auf die Datenbank von allen conzept 16-Client-Typen aus möglich. Bestimmte Clients auszuschließen, war bisher nicht möglich. Ab dieser Version kann das Zugriffsrecht für jeden Client-Typ individuell festgelegt werden.
Validierungs-Editor
- Der Validierungs-Editor erlaubt es eine Validierung für Datenbank-Elemente vorzunehmen. Der Aufruf des Validierungs-Editors geschieht entweder über den gleichnamigen Eintrag im Menü “Extras” des Designers oder über die Kommandozeilenoption /C16DesignTool=ValidationManagement des Advanced-Clients.
conzept 16-Debugger
- Detailansicht und Detailbearbeitung für Datentypen
Weiterführender Artikel: Geplante Erweiterungen im Debugger - Anzeige der Zeilennummer in der Prozeduraufruf-Liste
In der Liste der Prozeduraufrufe des Debuggers wird die Zeilennummer angezeigt, aus der der Funktionsaufruf erfolgte - Suchen in der Prozeduransicht
Im Debugger existiert nun ebenfalls eine Suchleiste, mit der im angezeigten Prozedurtext gesucht werden kann.
Verarbeitung
Befehle zur dynamischen Erstellung von Objekten
- Neue Funktion
WinCopy()
MitWinCopy()
können Oberflächenobjekte kopiert werden, sofern es sich bei dem Objekt selbst und allen untergeordneten Objekten um dynamisch erstellbare Objekte handelt.
Befehle für Oberflächenobjekte
- Neue Funktion
WinShutdownBlock()
Das Ereignis EvtEndSession wird aufgerufen, wenn die Windows-Sitzung beendet wird. In dem Ereignis können offene Vorgänge in der Anwendung abgeschlossen werden. Mit dem neuen BefehlWinShutdownBlock()
kann zusätzlich verhindert werden, dass Windows die Sitzung beendet. Er sollte nur dann verwendet werden, wenn eine Operation in Verarbeitung ist, die abgeschlossen werden muss. - Änderung der Funktion
WinLayer()
bezüglich der Anzeigedauer
Die Limitierung der maximal möglichen Zeitspanne auf 30 Sekunden wurde aufgehoben.
Befehle zur Verarbeitung von XML
- Erweiterung der Funktion
XmlLoad()
Ab dieser Version können XML-Dateien mit der Zeichenkodierung ISO-8859-15 (auch bekannt als Latin-9) geladen werden.
Befehle für den Datenaustausch über eine TCP/IP-Socket-Verbindung
- Korrektur bei Funktion
SckListen()
SckListen()
erlaubt die Angabe von Optionen (_SckOpt…
) im dritten Argument, ignorierte jedoch ungültige Werte. Ab dieser Version wird der Laufzeitfehler_ErrValueInvalid
ausgelöst, wenn keine der bekannten Optionen angegeben wird. Durch die Korrektur kann es zu Inkompatibilität mit existierendem conzept 16-Programmcode kommen.
Befehle für die Verarbeitung von externen Dateien
- Berechnen der CRC32-Prüfsumme
Mit der neuen Konstante_FsiFileCRC32
kann beiFsiFileInfo()
die CRC32-Prüfsumme einer Datei im hexadezimalen Format ermittelt werden. BeiFsiFileProcess()
wird bei Angabe der Konstanten die CRC32-Prüfsumme über die Datei, sowie über den internen Dateiheader gebildet, oder verifiziert.
Befehle zum Verwenden des CodeEdit-Objektes
- Neue Funktionen
WinEditorKeywordsAdd()
,WinEditorKeywordsRemove()
undWinEditorKeywordsUpdate()
Mit den neuen Befehlen können eigene Schlüsselwörter zu einem CodeEdit-Objekt hinzugefügt bzw. entfernt werden. Diese werden abhängig vom Typ hervorgehoben dargestellt. Da die Liste der Schlüsselwörter global für alle CodeEdit-Objekte gilt, muss die Darstellung eines einzelnen Objektes mit der FunktionWinEditorKeywordsUpdate()
aktualisiert werden, sofern nicht nach dem Hinzufügen der Schlüsselwörter ein neuer Text geladen wird. - Neue Funktion
WinEditorGoTo()
Der Befehl ermöglicht das Springen zu einer Position im Text.
Befehle zur Steuerung des Debuggers
- Neue Option
_DbgTraceClear
bei FunktionDbgControl()
Mit der Option_DbgTraceClear
werden die Einträge der Protokollausgabe geleert.
Befehle zum Ermitteln von Informationen von Oberflächen-Objekten
- Neue Option
_WinNodeMouseSelect
bei FunktionWinInfo()
Über die neue Konstante_WinNodeMouseSelect
kann mit dem BefehlWinInfo()
im Ereignis EvtNodeSelect ermittelt werden, ob und mit welcher Maustaste ein Knoten selektiert wurde. Bei aktivierter Mehrfachauswahl bezieht sich die Information auch auf das Selektieren mehrerer Knoten bzw. deselektieren von Knoten.
Behandlung von Verklemmungen (Deadlocks)
- Erzeugen eines Laufzeitfehlers bei Auftreten eines Deadlocks
Wird die neue Ausprägung_DeadLockRTE
bei der EigenschaftspOptions
des System (_Sys
)-Objekts gesetzt, führen Datenbankoperationen die einen Deadlock erzeugen, zum Laufzeitfehler_ErrDeadLock
. Sofern eine benutzerdefinierte Fehlerfunktion überErrCall()
gesetzt ist, wird diese aufgerufen. Der Laufzeitfehler kann mittelsErrTryCatch()
abgefangen werden.
Befehle zur Umwandlung von Farben
- Neue Befehle zum Setzen und Ermitteln der Deckkraft einer Farbe
Mit den neuen FunktionenWinColorOpacitySet()
undWinColorOpacityGet()
kann die Deckkraft einer Farbe gesetzt bzw. ermittelt werden.
Application (_App
)-Objekt
- Neue Eigenschaft
wpMobileMode
Die Eigenschaft verbessert die Handhabung von Oberflächenobjekten auf mobilen Geräten (Smartphone, Tablet) . - Neue Ausprägung
_WinAppExtLstPosSelected
Mit der Option_WinAppExtLstPosSelected
der EigenschaftwpFlagsExt
kann festgelegt werden, ob das Setzen von Spalteneigenschaften bei Listen-Objekten (RecList, DataList, StoList, …) zu einer Neupositionierung des selektierten Eintrages führt. Standardmäßig wird der selektierte Eintrag mittig positioniert. Durch das Setzen der Option wird eine Neupositionierung verhindert. - Neue Ausprägung
_WinAppExtSyncPrint
Mit der neuen Ausprägung_WinAppExtSyncPrint
der EigenschaftwpFlagsExt
kann die Synchronisation von parallel laufenden Druckjobs (ausgeführt über die FunktionJobStart()
) aktiviert werden. Standardmäßig ist diese ausgeschaltet, da dadurch die Performance der Druckausgabe beeinträchtigt werden kann und nur bei parallel laufenden Druckjobs benötigt wird. - Neue Ausprägung
_WinAppExtWaitKeyInput
Mit der Option_WinAppExtWaitKeyInput
kann verhindert werden, dass Tastatureingaben verloren gehen, während Ereignisse durchgeführt werden. Die neue Option bewirkt, dass bei einem Tastendruck (sofern gerade eine Ereignisfunktion durchgeführt wird), die Nachrichtenverarbeitung in der Oberfläche angehalten wird. Diese wird fortgesetzt nachdem die Ereignisfunktion durchgeführt wurde. Dadurch gehen keine Benutzereingaben verloren, jedoch kann der Anwender während der Zeit auch keine Interaktion mit der Anwendung durchführen.
CodeEdit-Objekt
- Neue Eigenschaft
wpEditorShowLineLimit
Über diese Eigenschaft kann eine vertikale Linie für die Kennzeichnung der maximalen Zeilenlänge gesetzt werden. - Neue Eigenschaft
wpEditorAclFlags
MitwpEditorAclFlags
kann definiert werden, welche Elemente in der Autovervollständigungsliste angezeigt werden. Folgende Konstanten stehen zur Verfügung:_WinEditorAclFlagNone
Keine Elemente_WinEditorAclFlagC16
conzept 16 und überWinEditorKeywordsAdd()
hinzugefügte Schlüsselwörter_WinEditorAclFlagDataStruct
Elemente der Datenstruktur - Unterstützung von Menüaktionen
Wird die EigenschaftwpMenuAction
eines MenuItems / Toolbar-Buttons auf eine der_WinMnuActEdit…
-Konstanten gesetzt, reagiert das CodeEdit-Objekt darauf, wenn es den Eingabefokus besitzt. - Benutzerdefinierte Darstellung der Autovervollständigungsliste
Die Darstellung der Autovervollständigungsliste kann mittels der neuen Theme-Elemente CodeEditList und CodeEditListColumn im Modern Theme Style angepasst werden.
ColorButton- und ColorEdit-Objekt
- Die Eigenschaft
wpModeColor
wurde um die Ausprägung_WinModeColorAll
erweitert. Dort können neben den Basis- und Systemfarben auch die Werte_WinColUndefined
und_WinColTransparent
ausgewählt werden.
GanttGraph-Objekt
- Box-Objekte lassen sich ab jetzt in der Größe verändern. Dazu ist bei der Eigenschaft
wpGanttFlags
die Ausprägung_WinGanttIvlBoxSizingAllowed
zu setzen. - Die Hintergrundfarbe von Intervall- und Box-Objekten kann über
WinColorOpacitySet()
mit einer Transparenz versehen werden. - Für jedes Intervall- und Box-Objekt kann individuell eine eigene Schriftart definiert werden.
Picture-Objekt
- Erweiterung des Picture-Objekts um die Eingabe von Unterschriften und Skizzen.
Weiterführender Artikel: Elektronische Unterschrift
Theme-Objekt
- Optimierung von Theme-Sets
Die Verwendung von Theme-Objekten mit vielen Theme-Sets wurde optimiert, so dass diese bei wiederholter Verwendung desselben Theme und unterschiedlicher Theme-Sets deutlich schneller geladen werden - Erweiterung von Theme-Sets um eine Beschreibung
Im Theme-Editor ist es nun mögliche eine Kurzbeschreibung zu setzen. Diese wird im Spalten-Header angezeigt. Die Kurzbeschreibung kann beim Erstellen eines neuen Theme-Sets im Theme-Editor oder per Doppelklick auf den Spaltenkopf editiert werden. Prozedural kann die Beschreibung über die Eigenschaft_WinPropThemeDescription
des Theme-Objektes ermittelt oder gesetzt werden.
Neben diesen Erweiterungen wurden auch Fehlerbeseitigungen vorgenommen. Eine Übersicht der Korrekturen befindet sich im Error-Dokument. Dieses befindet sich im Installationsverzeichnis von conzept 16 unter \Doc.