Neuerungen in combit CRM-Update 13.3

Nachfolgend finden Sie alle wichtigen Hinweise, aktuellen Freigaben und neue Unterstützungen sowie Features und Verbesserungen zum neuen Update 13.3 von combit CRM.

Wichtige Hinweise

[Verbesserung] WICHTIG! Pot. Verhaltensänderung! Beim Drag & Drop einer Datei aus dem Explorer oder aus Outlook (Dateiname dann .msg) auf Übersichtsliste oder Container und Hinzufügen per Rechtsklick aus einer bestehenden Datei oder aus der Zwischenablage wurde beim Feldtyp ‚Eingebettete Datei‘ oder ‚DMS-Dokument‘ der urspr. Dateiame nicht konsistent verwendet: falls nämlich eine gleichnamige Datei in %TEMP% zufällig aufgrund irgendeiner Historie bereits vorhanden war, wurde direkt die Dokumentenverwaltung-Dateinamensformel des Dokumententyps angewendet, nur falls nicht, wurde der urspr. Dateinamen benutzt. Jetzt ist es immer durchgängig der urspr. Dateiname, AUSSER in der Dateinamensformel wird die Variable oder verwendet, dann wird konsequent immer die evaluierte Dateinamensformel des Dokumententyps benutzt.

[Verbesserung] WICHTIG! Verhaltensänderung: Aus Sicherheitsgründen sind in Druckvorlagen für die „Link“-Eigenschaft nur noch die Protokolle „crm“, „http“, „https“ und „mailto“ wie bisher ausführbar, nicht jedoch Links auf z. B. Binärdateien, externe Kommandos, externe Scripte o. ä. Ist solch ein gesperrter Link hinterlegt, erfolgt die Meldung „Die Aktion kann nicht durchgeführt werden“.

[Hinweis] WICHTIG! Es ist eine Solutiondatenbankanpassung notwendig. Kundendatentabellen sind nicht betroffen. Betroffen ist die interne Tabelle für die Microsoft Exchange-Anmeldung, dort muss eine Spalte auf nvarchar(max) umgestellt werden, da die von der Microsoft API zurückgegebenen Refresh-Token aufgrund der darin enthaltenen kodierten Informationen neuerdings länger sein können als die dafür vorgesehene Datenbankspalte. Deshalb wird die Spalte ‚RefreshToken‘ in der Datenbanktabelle ‚cmbt_exchange_auth‘ auf nvarchar(max) umgestellt. Dies wird während der Servicepack-Installation automatisch für das aktive Projekt durchgeführt.

Aktuelle Freigaben und neue Unterstützungen

[Feature] Freigabe für Microsoft SQL Server 2025.

[Feature] Freigabe für PostgreSQL 18.

[Feature] Unterstützung für die externe Termin- und Aufgabenverwaltung „Tobit Team“ hinzugefügt.

[Feature] DMS: Unterstützung/Freigabe für DocuWare 7.13 hinzugefügt. Wichtig: Es wird nur die klassische Authentifizierung mit Benutzername und Passwort unterstützt.

[Feature] Übernahmemaske: Freigabe für Microsoft 365 Apps for Enterprise.

[Feature] PDF-Export (SDK): In den Print[…]-Routinen des SDKs wird ZUGFeRD 2.3/2.4 unterstützt, wenn das dafür notwendige neue Modul ‚combit.ListLabel31.ConversionToolsExt.x86.dll‘ vorhanden ist und lediglich die Export-Option „PDF.ZUGFeRDXmlPath“ angegeben wurde.

Features und Verbesserungen

Allgemein

[Verbesserung] Lizenzverwaltung: Die User Experience wurde umfassend verbessert.

[Feature] Das ClientSetup ist nun auch als MSI-Installation für die Offline-Softwareverteilung verfügbar.

Administration

[Verbesserung] Benutzerverwaltung: Ein Import aus dem Active-Directory ignoriert automatisch alle im Active-Directory deaktivierten Benutzer. Bei einer Synchronisation mit dem Active-Directory war dies schon immer der Fall.

[Verbesserung] Der Benutzerverwaltungsdialog ist nun auch maximierbar.

[Verbesserung] Ansichteneigenschaften > Dokumentenverwaltung > Feldvorbelegungen: Der Dialog kann nun in seiner Größe verändert werden, um längere Formeln u. U. bereits in der Liste vollständig darstellen zu können.

[Verbesserung] Bei dem Versuch, den Workflow-Server zu starten, während dieser deaktiviert ist, wird nun zusätzlich darauf hingewiesen, wie Benutzer aktiviert/deaktiviert werden können, und gegebenenfalls das Öffnen der Benutzerverwaltung angeboten.

[Hinweis] Der Benutzer „Workflow“ wird bei einer frischen Neuinstallation der Systemdatenbank aus Sicherheitsgründen nun standardmäßig deaktiviert ausgeliefert. Er muss in der Benutzerverwaltung explizit aktiviert werden, wenn der Workflow-Server gestartet werden können soll.

[Verbesserung] Das „Öffnen“ von Dokumenten und Dateiverweisen per Doppelklick/‚Rechtsklick > Dokument öffnen‘ u. ä. sowie für den Feldtyp „Internet“ ist aus Sicherheitsgründen nicht mehr für Inhalte möglich, die aus Betriebssystemsicht ein ausführbares Programm (z. B. .exe;.bat;.cmd) darstellen.

[Verbesserung] Client-Installation: Konnte die Datenbank-Verbindung nicht erfolgreich aufgebaut werden, wurde auch bei einem PostgreSQL-Datenbanksystem geprüft, ob der ‚Microsoft OLE DB-Treiber 19 für SQL Server‘ vorhanden ist. Diese Überprüfung wird nun übersprungen.

[Verbesserung] Bei einem Anmeldeversuch mit einem deaktivierten Benutzer, bei dem das Passwort korrekt eingegeben wird, wird nun eine spezifischere Fehlermeldung angezeigt, die darauf hinweist, dass der betreffende Benutzer deaktiviert ist.

[Verbesserung] Datensätze-Zusammenführen: Beim Zusammenführen von Relationen werden nun weder das Zugriffs- oder Bearbeiten-Recht der relationalen Ansicht geprüft, damit sichergestellt ist, dass die Datenkonsistenz beim Zusammenführen nicht durch für Benutzer:innen nicht zugreifbare/bearbeitbar Ansichten gebrochen wird. Das Umhängen der Datensätze geschieht „unsichtbar“ im Backend (und die „Bearbeitung“ ausschließlich für das FK-Feld), d.h. zusammenführende Benutzer:innen bekommen dadurch dennoch keine über vorgenannten Rechte geschützten Daten zu sehen.

[Verbesserung] Datensätze-Zusammenführen: Gibt es beim ausgewählten Datensatz für zusammenzuführende Relationen aufgrund der aktuellen Datensatzrechte oder des Papierkorbs für den:die zusammenführende Benutzer:in unsichtbare Datensätze, so ist ein Zusammenführen für diese:n Benutzer:in nicht möglich, da durch das Umhängen in den Primärdatensatz dadurch vertrauliche Datensätze evtl. plötzlich sichtbar werden könnten. Würden sie hingegen nicht umgehängt werden, so gingen Datensätze „verloren“, von denen der:die zusammenführende Benutzer:in aber gar nichts weiß. Solch ein Datensatz muss durch Benutzer:innen mit ausreichend Datensatz-Zugriffsrechten zusammengeführt werden.

[Verbesserung] Zur besseren Lesbarkeit ist die Standard-Datensatzverweisformel für die internen Benutzer- und Gruppen-Ansichten nun der Login- bzw. Gruppenname und nicht mehr die Datensatz-GUID.

[Verbesserung] Hat ein Benutzer bei bestehenden Filtern auf darin verwendete verknüpfte Ansichten keine Zugriffsrechte, so werden die Namen der betroffenen Ansichten in der Fehlermeldung nun explizit aufgelistet.

Dokumentenverwaltung

[Feature] Bei der Ablage von E-Mails per Drag and Drop, über das Kontextmenü, die OLE/REST-Proxy-DocMngrFile*-Methoden, sowie für nicht vorbelegte Felder über das klassische Outlook-AddIn, werden ab sofort auch die neuen Mail-Action-Variablen für die Feldvorbelegungen der Dokumentenverwaltung berücksichtigt.

[Feature] DMS: Unterstützung/Freigabe für DocuWare 7.13 hinzugefügt. Wichtig: Es wird nur die klassische Authentifizierung mit Benutzername und Passwort unterstützt.

[Verbesserung] WICHTIG! Pot. Verhaltensänderung! Beim Drag & Drop einer Datei aus dem Explorer oder aus Outlook (Dateiname dann .msg) auf Übersichtsliste oder Container und Hinzufügen per Rechtsklick aus einer bestehenden Datei oder aus der Zwischenablage wurde beim Feldtyp ‚Eingebettete Datei‘ oder ‚DMS-Dokument‘ der urspr. Dateiame nicht konsistent verwendet: falls nämlich eine gleichnamige Datei in %TEMP% zufällig aufgrund irgendeiner Historie bereits vorhanden war, wurde direkt die Dokumentenverwaltung-Dateinamensformel des Dokumententyps angewendet, nur falls nicht, wurde der urspr. Dateinamen benutzt. Jetzt ist es immer durchgängig der urspr. Dateiname, AUSSER in der Dateinamensformel wird die Variable oder verwendet, dann wird konsequent immer die evaluierte Dateinamensformel des Dokumententyps benutzt.

Eingabemaske

[Performance] Deutlich schnellere initiale Darstellung der 1:1 Auswahlliste, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat, die aber in der Layoutkonfiguration gar nicht verwendet werden oder es noch gar keine Layoutkonfiguration gibt.

Filter

[Performance] Filterassistent: Immenser Performancegewinn beim Arbeiten mit Bedingungen für verknüpften Ansichten, sofern diese Datensätze gemäß ihrer Ansichteneigenschaft seitenweise vom Datenbankserver abrufen darf und aufgrund des Vorhandenseins eines Datensatz-ID-Feldes auch kann. Positive Auswirkung insbesondere dann, wenn diese > 500.000 Datensätzen als Datenbanksicht oder in Verbindung mit Papierkorb oder Datensatzrechten hat.

[Verbesserung] Wenn im Filterassistent beim Vergleichswert über die relationale Datensatzauswahl-Schaltfläche der Vergleichswert ausgewählt wird und die Datensatzverweis-Beschreibungsformel aber eine GUID liefert, so wird zur Darstellung des Vergleichswertes im Filterassistent der eigentliche Vergleichswert statt der unleserlichen GUID bevorzugt.

Import/Abgleich

[Verbesserung] Exchange-Anmeldung: Die Anmeldung unterstützt nun auch den zweiten Faktor (MFA) Passkey über das FIDO2 oder WebAuthn Protokoll.

[Hinweis] WICHTIG! Es ist eine Solutiondatenbankanpassung notwendig. Kundendatentabellen sind nicht betroffen. Betroffen ist die interne Tabelle für die Microsoft Exchange-Anmeldung, dort muss eine Spalte auf nvarchar(max) umgestellt werden, da die von der Microsoft API zurückgegebenen Refresh-Token aufgrund der darin enthaltenen kodierten Informationen neuerdings länger sein können als die dafür vorgesehene Datenbankspalte. Deshalb wird die Spalte ‚RefreshToken‘ in der Datenbanktabelle ‚cmbt_exchange_auth‘ auf nvarchar(max) umgestellt. Dies wird während der Servicepack-Installation automatisch für das aktive Projekt durchgeführt.

[Verbesserung] Exchange-Anmeldung: Die von der Microsoft API zurückgegebenen Refresh-Token können neuerdings aufgrund der darin enthaltenen kodierten Informationen länger sein als die dafür vorgesehene Datenbankspalte. Wichtig: Um diese Tokens auch zukünftig zuverlässig speichern zu können, wird die Spalte ‚RefreshToken‘ in der Datenbanktabelle ‚cmbt_exchange_auth‘ vergrößert. Dies wird während der Servicepack-Installation automatisch für das aktive Projekt durchgeführt.

[Verbesserung] Exchange-Sync: Bei der Terminsynchronisation werden vorhandene „.crmshare“ Anhänge in Exchange-Terminen nun auch in neue(!) lokale Termine als Datensatzverweise synchronisiert. Datensatzverweise von bestehenden lokalen Terminen werden nicht verändert.

[Feature] Übernahmemaske: Freigabe für Microsoft 365 Apps for Enterprise.

Installation

[Feature] Named-User Lizenzmodell für Voll-Benutzer und Light-Benutzer.

[Verbesserung] Die cRM.ovl-/cRM_WithDebugLogging.exe-Versionsnummer enthält nun auch eine durch den Build-Prozess vergebene Build-Nummer, worüber insbesondere PRERELEASE-Builds leichter unterscheidbar sind.

[Verbesserung] Bei der Update-Installation von den Versionen 12 und früher wird nun keine Fehlermeldung mehr in DebWin4 geloggt, dass die TypeScript Engine nicht deinstalliert werden konnte, da diese in Version 12 und früher noch nicht installiert war.

[Verbesserung] Client-Installation: Bei einer erneuten Installation des Clients auf einem Serversystem konnte es dazu kommen, dass die Typescript Engine nicht korrekt installiert wurde.

Mail

[Verbesserung] Die OAuth2-Anmeldung für den SMTP-E-Mail-Versand mit Microsoft Exchange funktioniert nun auch, wenn die erforderlichen Berechtigungen erst von einem Administrator genehmigt werden müssen (nach erfolgter Genehmigung).

[Verbesserung] Autopilot: Beim zentralen Aktivieren des Debug-Modus über die Registry unter HKEY_LOCAL_MACHINE\SOFTWARE\combit\ mit der Zeichenfolge „Debug.LogFilename“, welches für den Service/Dienst erforderlich ist, wurde keine Log-Datei geschrieben. Achtung: Der Registry-Key aktiviert das Debugging zentrale für alle combit Module auf dem System und kann sowohl Speicher als auch Systemleistung beanspruchen und sollte nur bei Bedarf verwendet werden.

Oberfläche

[Verbesserung] Die Testversion zeigt ihre Restlaufzeit nun auch auf der ‚Datei > Hilfe‘-Seite an.

[Verbesserung] Hinweismeldungen unterdrücken nun etwaige unnötige Leerzeilen zwischen Überschrift und Detail der Meldung.

[Verbesserung] Datensatzmehrfachauswahldialoge wie der Papierkorb oder die Datensatzverknüpfung bei Terminen+Aufgaben: Die Usability der Dialoge erhöht, indem auf den dritten Zustand der Auswahl-Checkbox komplett verzichtet wurde, es gibt nur noch „ausgewählt“ und „nicht ausgewählt“.

[Verbesserung] Datensätze-Zusammenführen-Dialog: Es findet nun im Vorfeld eine Prüfung auf die für das Zusammenführen von relational verknüpften Datensätzen zwingend erforderlichen Rechte statt. Fehlen diese, so ist das Zusammenführen nicht möglich.

Reporting

[Feature] PDF-Export (SDK): In den Print[…]-Routinen des SDKs wird ZUGFeRD 2.3/2.4 unterstützt, wenn das dafür notwendige neue Modul ‚combit.ListLabel31.ConversionToolsExt.x86.dll‘ vorhanden ist und lediglich die Export-Option „PDF.ZUGFeRDXmlPath“ angegeben wurde.

[Verbesserung] WICHTIG! Verhaltensänderung: Aus Sicherheitsgründen sind in Druckvorlagen für die „Link“-Eigenschaft nur noch die Protokolle „crm“, „http“, „https“ und „mailto“ wie bisher ausführbar, nicht jedoch Links auf z. B. Binärdateien, externe Kommandos, externe Scripte o. ä. Ist solch ein gesperrter Link hinterlegt, erfolgt die Meldung „Die Aktion kann nicht durchgeführt werden“.

SDK

[Feature] Sämtliche Beispiel-Code-Snippets der SDK-Dokumentation gibt es nun auch für TypeScript.

[Verbesserung] Sämtliche Beispiel-Code-Snippets sind in der SDK-Dokumentation nun in einem eigenen Bereich, so dass die Suche im Dokument nach einer Methode oder Eigenschaft immer zuerst die eigentliche Beschreibung trifft und erst danach bei Weitersuchen deren Verwendung in allen möglichen Beispiel-Code-Snippets.

[Verbesserung] Die combit CRM Client-Deinstallation entfernt nun alle Versionen des cosmolink.TypeScript SDKs, nicht nur die aktuelle.

[Hinweis] Die für die Bestätigung ausländischer Umsatzsteuer-Identifikationsnummern zuständige Methode „Project.CheckVATID“ funktioniert nicht mehr, da die hierfür verwendete XML-RPC-Schnittstelle vom Bundeszentralamt für Steuern (BZSt) zum 30.11.2025 abgeschaltet wurde.

[Verbesserung] Fehlermeldung bei nicht vorhandenen #include-Scriptdateien auch hinsichtlich Konsequenzen, dass u. U. auch weitere #includes nicht aufgelöst werden, verbessert.

[Performance] RecordSet.DialogSelectRecord + RecordSet.DialogSelectRecordMultiple: Deutlich schnellere initiale Darstellung des Dialoges, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat, die aber in der Layoutkonfiguration gar nicht verwendet werden oder es noch gar keine LKayoutkonfiguration gibt.

[Verbesserung] RecordSet.DialogSelectRecordMultiple: Die Usability des Dialogs erhöht, indem auf den dritten Zustand der Auswahl-Checkbox komplett verzichtet wurde, es gibt nur noch „ausgewählt“ und „nicht ausgewählt“.

[Verbesserung] Record.SetContentsValueByName/InputForm.SetContentsValueByName unterstützt nun als vContent-Parameter auch VARIANT-Typen VT_I8 (64-bit-Integer) und VT_UI8 (64b-it unsigned integer). VORSICHT bei impliziter Konvertierung zu datetime bei MSSQL: Der Date.Now()-64-bit-Integer-Wert (Anzahl Millisekunden seit 1.1.1970) von JavaScript/TypeScript passt nicht zum datetime-Bezugssystem (Anzahl Tage seit 1.1.1900) von MSSQL trotz impliziter Type-Konvertierung.

[Verbesserung] Wenn der an Record.SetContentsValueByName/InputForm.SetContentsValueByName übergebene Datentyp von der API nicht unterstützt wurde (unabhängig davon, ob er zum Zielfeld passt), wurde das Feld auf NULL gesetzt und die Methode lieferte true für Erfolg. Jetzt schlägt die Methode fehl (false). Eine Überprüfung für unterstützte Typen, ob der Wert zum Zielfeldtyp im Datenbanksystem „passt“, findet weiterhin nicht statt, denn eine Umwandlung könnte durchaus auch über implizite Datenbanksystem-Konvertierungen erfolgreich stattfinden und gewollt sein, ohne dass die API das wissen kann. VORSICHT beispielsweise bei impliziter Konvertierung von integer zu datetime bei MSSQL: stimmt der Bezugsrahmen überhaupt überein?

[Verbesserung] Die API-Schnittstelle unterstützt nun auch für TypeScript, REST und externe Anbindungen bei Parametern, die sich auf einen Dateipfad beziehen, die Platzhalter %PRJDIR% und %APPDIR%, sowie die Windows-Umgebungsvariablen (wie %APPDATA%, %TEMP%, u.a.).

Sichern/Wiederherstellen

[Verbesserung] Log-Ausgaben verbessert.

Systemvoraussetzung

[Verbesserung] Windows-10-Builds werden angesichts von verfügbaren LTSB/LTSC-Optionen (Supported versions of Windows client | Microsoft Learn) beim Programmstart nicht länger als nicht freigegebenes Betriebssystem gemeldet.

[Feature] Freigabe für Microsoft SQL Server 2025.

[Feature] Freigabe für PostgreSQL 18.

Terminverwaltung

[Feature] Unterstützung für die externe Termin- und Aufgabenverwaltung „Tobit Team“ hinzugefügt.

Übersichtsliste/Container

[Verbesserung] Der Felder der Detailansicht in Übersichtsliste und Container unterstützen nun auch einen Doppelklick.

[Performance] Deutlich schnellere initiale Darstellung von Übersichtslisten und Containern ohne eine gespeicherte Layoutkonfiguration, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat.

[Verbesserung] Wenn die letzte Spalte einer Datensatz-Liste rechtsbündig ausgerichtet war, konnte u. U. ein Teil der Spalte und damit Daten durch die vertikale Scrollbar verdeckt werden.

Workflow

[Verbesserung] Ein Workflow-Server (WFS) oder Workflow-Server-Dienst (WFSSERVICE) versuchen nun bei Auftreten eines Datenbankfehlers z.B. durch Verlust der Datenbankverbindung (wie er z. B. im Zusammenhang mit Verwendung eines SQL Server-Clusters oder Wartungsarbeiten auftreten kann) sich gezielt automatisch zyklisch immer wieder neu zu starten.

Performance

[Performance] Filterassistent: Immenser Performancegewinn beim Arbeiten mit Bedingungen für verknüpften Ansichten, sofern diese Datensätze gemäß ihrer Ansichteneigenschaft seitenweise vom Datenbankserver abrufen darf und aufgrund des Vorhandenseins eines Datensatz-ID-Feldes auch kann. Positive Auswirkung insbesondere dann, wenn diese > 500.000 Datensätzen als Datenbanksicht oder in Verbindung mit Papierkorb oder Datensatzrechten hat.

[Performance] Deutlich schnellere initiale Darstellung von Übersichtslisten und Containern ohne eine gespeicherte Layoutkonfiguration, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat.

[Performance] Deutlich schnellere initiale Darstellung der 1:1 Auswahlliste, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat, die aber in der Layoutkonfiguration gar nicht verwendet werden oder es noch gar keine LKayoutkonfiguration gibt.

[Performance] RecordSet.DialogSelectRecord + RecordSet.DialogSelectRecordMultiple: Deutlich schnellere initiale Darstellung des Dialoges, wenn die dargestellte Ansicht sehr viele (ggf. nur indirekt per 1:1(:1)) Felder hat, die aber in der Layoutkonfiguration gar nicht verwendet werden oder es noch gar keine Layoutkonfiguration gibt.