Der CP-Import kann nicht ausgeführt werden, da ein Fehler bzgl. “collation conflict” ausgegeben wird.

Version:

  • Fehler ist abhängig von CP-Version, meistens beobachtet ab CP-Version 6

  • unabhängig von CPCE-Version

Fehlermeldung/Fehlerbild

Beim CP-Import erscheint folgende Fehlermeldung in der import.log:

-------------------------------

2022-03-09 15:06:47:816 [ ALL] Der Importvorgang für die Datenbasis "<CP-Datenbasis-Name>.db" wurde erstellt.
2022-03-09 15:06:47:816 [ ALL] Anwender: <Domäne>\<User>
2022-03-09 15:06:47:816 [ ALL]
2022-03-09 15:06:48:394 [ERROR] Exception: Die Verbindung zum Data WareHouse konnte nicht hergestellt werden: "Cannot resolve the collation conflict between "Latin1_General_CI_AS" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation.".
2022-03-09 15:06:48:441 [ERROR] Es ist ein Import Fehler beim Lesen der Daten aufgetreten.

-------------------------------

Ursache

Die CP-Datenbanken und die CPCE-Stammdatenbank wurden von einem alten auf einen neuen SQLServer umgezogen.

Scheinbar wurde der neue SQLServer mit der Collation "SQL_Latin1_General_CP1_CI_AS" aufgesetzt. Der alte SQLServer hatte wahrscheinlich noch die vom CP-Import erwartete Collation "Latin1_General_CI_AS".

Im beim Kunden vorgefundenen Zustand besaßen die Instanzen auf dem neuen SQLServer (sowohl CP als auch CPCE) die Collation "SQL_Latin1_General_CP1_CI_AS".

Die Datenbanken (sowohl CP als auch CPCE) hatten die Collation "Latin1_General_CI_AS".

Lösung/Workaround

In folgenden CP-Prozeduren muss die Zeile

CREATE TABLE #clients(ClientId VARCHAR(255));

ersetzt werden durch

CREATE TABLE #clients(ClientId VARCHAR(255) collate database_default)

 

  • pCP_SelectCostUnitKoRe

  • pCP_SelectCostCenterKoRe

  • pCP_SelectAccountsKoRe

  • pCP_SelectAccountsFiBu

 

Beispiel (aus einer CPCE V4):