saperion leitfaden update · module des java core servers ... (dfd-dateien) web client update von...

24
Saperion Leitfaden Update Version: 8.0.x Written by: Product Knowledge, R&D Date: November 2016

Upload: ngotuyen

Post on 12-Jun-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Saperion Leitfaden Update Version: 8.0.x Written by: Product Knowledge, R&D Date: November 2016

© 2016 Lexmark. All rights reserved.

Lexmark is a trademark of Lexmark International Inc., registered in the U.S. and/or other countries. All other trademarks are the property of their respective owners. No part of this publication may be reproduced, stored, or transmitted in any form without the prior written permission of Lexmark.

Saperion Leitfaden Update 8.0

Inhaltsverzeichnis Saperion 8.0 Update-Leitfaden .................................................................................................................. 5

Wichtiger Hinweis ...................................................................................................................................... 5 Installations- und Update-Hinweise .......................................................................................................... 5

Vorherige Versionen .................................................................................................................................. 5

.NET Framework ....................................................................................................................................... 5

Oracle ........................................................................................................................................................ 5

Workflow Unicode-Unterstützung .............................................................................................................. 5

Mail Applet JAR-Datei ............................................................................................................................... 5

Client- und Server-Kompatibilität ............................................................................................................... 6 Sicherung ..................................................................................................................................................... 6

Saperion Core Server ................................................................................................................................ 6

DDC-Dateien ............................................................................................................................................. 6

Standardverzeichnis der Installation ......................................................................................................... 6 Web Client .................................................................................................................................................... 7

Update von Version 7.5 auf Version 8.0 .................................................................................................... 7 Java .............................................................................................................................................................. 7

Java Version 1.8 ........................................................................................................................................ 7 Windows-Authentifizierung aktualisieren ................................................................................................ 7

Java Core Server ......................................................................................................................................... 7

Module des Java Core Servers ................................................................................................................. 7 Java Core Server in Saperion Version 8.0 ................................................................................................ 8

Umstellung auf den Java Core Server ...................................................................................................... 8 Auf ein 64-Bit-System umstellen ............................................................................................................ 8

Benutzerverwaltung migrieren ................................................................................................................ 10

Was ist neu in Version 8.0 ....................................................................................................................... 10 Überblick der Änderungen ................................................................................................................... 10 Änderungen der Beschränkungen ....................................................................................................... 10

Änderungen der Architektur ................................................................................................................. 10

32-Bit-Systeme .................................................................................................................................... 13

Kompatibilitätsviews und Trigger ......................................................................................................... 14

Änderungen der Programmierung ....................................................................................................... 14 Sequenzen für Objekt-IDs ................................................................................................................... 15

Unterstützte Datenbanken ................................................................................................................... 15

3

Saperion Leitfaden Update 8.0

Migration von Version 7.5 auf 8.0 ............................................................................................................ 15 Migrationsvorbereitungen .................................................................................................................... 16

Update auf Version 8.0 ........................................................................................................................ 18

Automatische Migration ........................................................................................................................... 19 Ablaufbeschreibung ............................................................................................................................. 19

Prüfskripte für Datenintegrität .................................................................................................................. 20 Skripte für MS SQL Server .................................................................................................................. 21

Skripte für Oracle ................................................................................................................................. 22

Datenmodell ............................................................................................................................................ 24

4

Saperion Leitfaden Update 8.0

Saperion 8.0 Update-Leitfaden Dieses Dokument enthält Informationen über das Update von Saperion-Versionen 7.5.x auf Saperion Version 8.0. Lesen Sie diesen Leitfaden, bevor Sie das Update installieren.

Lesen Sie auch das Dokument “Technical Specifications” für Saperion Version 8.0. In diesem Dokument finden Sie sowohl die Systemvoraussetzungen und Kompatibilitäten, als auch die Abkündigungen von Komponenten in der aktuellen Saperion-Version.

Wir empfehlen, das Update zunächst in einer Entwicklungsumgebung durchzuführen, bevor Sie das Produktivsystem updaten.

Dieses Dokument enthält keine Informationen darüber, wie Sie von früheren Saperion-Versionen (vor 7.5.x) auf Saperion Version 8.0 updaten. Falls Sie von einer früheren Version auf die Version 8.0 updaten möchten, kontaktieren Sie Ihren Vertreter der Lexmark Enterprise Software.

Wichtiger Hinweis Aufgrund der neuen Benutzerverwaltung sind Aktivitäten vor Durchführung des Updates auf Saperion Version 8.0 erforderlich. Bitte lesen Sie daher unbedingt vor der Installation den Abschnitt „Benutzerverwaltung migrieren“.

Installations- und Update-Hinweise

Vorherige Versionen Wir empfehlen, dass Sie Saperion ECM Version 7.5 SP5 oder höher installiert haben, bevor Sie auf Version 8.0 updaten.

.NET Framework .NET Framework Version 3.5 ist erforderlich, um alle Komponenten (Client und Server) von Saperion ECM Version 8.0 zu installieren.

Oracle Informationen für Oracle finden Sie im Dokumentationsportal docs.lexmark.com im Abschnitt „Setup“ des Bereiches „Installation“.

Workflow Unicode-Unterstützung Verwenden Sie die Tabelle xdfdocvector_Unicode.ddc.

Mail Applet JAR-Datei Das Web Client Applet für Emails muss nach einem Update aufgrund der Sicherheitseinstellungen aktueller Java-Versionen neu signiert werden. Um eine signierte JAR-Datei zu erhalten, senden Sie die folgenden Informationen an den Lexmark-Support ([email protected]).

• Seriennummer

• Saperion-Version, inkl. Revisionsnummer, z.B. 8.0.0.48836

• URL zum Aufruf des Web Clients (die URL zum Tomcat-Server)

5

Saperion Leitfaden Update 8.0

Client- und Server-Kompatibilität Wenn Sie ein Update von einer Saperion-Version vor 8.0 auf die Version 8.0 durchführen, müssen sowohl die Clients als auch die Server aktualisiert werden.

Sicherung Fertigen Sie folgende Sicherungskopien an, bevor Sie mit dem Update beginnen.

• Alle Serverkomponenten

• Das Saperion-Installationsverzeichnis

Saperion Core Server Führen Sie die folgenden Vorgänge aus.

• Sicherung der Datenbank

• Sicherung des DBS-Verzeichnisses des Core Servers

• Sicherung aller Datenbank-Definitionen (*.DDC), Masken (*.QBE), Workflow-Definitionen (*.DFD) und COLD-Definitionen (*.DRD), sowie aller Visual Basic Skripte (*.BAS).

• Benutzerkörbe abarbeiten

• alle Caches auf offene Schreibeinträge prüfen und diese abarbeiten

• Sicherung der Mediendatenbanken und des Caches bei virtuellen Medien

• Prüfung des Speicherplatzes

• alle Spiegeljobs abarbeiten, sodass Original und Spiegel den gleichen Stand haben

DDC-Dateien Die folgenden Saperion System-Tabellen haben sich mit der Version 8.0 geändert. Sollten Sie diese eigenständig erweitert haben, stellen Sie die betreffenden DDC-Dateien nach dem Update aus Ihrer Datensicherung wieder her.

• Localize.ddc

• Pdfdocvector*.ddc

• xdfdocvector*.ddc

• xsuser_schema*.ddc

• xsgrp_schema*.ddc

• xsmnd_schema*.ddc

Standardverzeichnis der Installation Sollten Sie für die von Ihnen verwendeten Szenario-Dateien, wie z.B. Definitionen (.DDC) oder Masken (.QBE) ein vom Saperion Standardverzeichnis abweichendes Verzeichnis benutzen, so wird dieses vom Saperion Setup nicht berücksichtigt. Standardmäßig werden durch ein Update im Installationsverzeichnis

6

Saperion Leitfaden Update 8.0

von Saperion die folgenden Unterordner erzeugt, in denen auch aktuelle Systemdateien abgelegt werden.

• defs (DDC-Dateien)

• macros (BAS-Dateien)

• forms (QBE-Dateien)

• workflow (DFD-Dateien)

Web Client

Update von Version 7.5 auf Version 8.0

Das dem Web Client zugrunde liegende ZK Framework wurde aktualisiert. So kann ein Dokument nun per Drag and Drop dem Archiv hinzugefügt werden, anstatt die umständlichere Upload-Area zu nutzen. Wenn Sie eigene Themes für den Web Client erstellt haben, müssen Sie diese erneut erstellen. Gegebenenfalls müssen Sie existierende Skripte bearbeiten.

Java

Java Version 1.8 Die Anwendung von Java SDK 1.8 erfordert den folgenden Oracle JDBC Treiber. Kopieren Sie diesen in das Verzeichnis /scr/scr-javacoreserver/lib.

• Ojdbc7.jar in der Version 12.1.0.2.0

Windows-Authentifizierung aktualisieren Wenn Sie ein Update von Saperion Version 7.5.x auf 8.0 durchführen, müssen Sie auch die "sqljdbc_auth.dll"-Datei für die Windows-Authentifizierung aktualisieren. Diese Datei ist im Microsoft JDBC SDK enthalten und kann bei Microsoft heruntergeladen werden.

Java Core Server

Module des Java Core Servers Folgende Module stehen nur bei Verwendung des Java Core Servers zur Verfügung.

• Web Client

• ECM REST Services

• Integration Server (Business Rules Server, Step Performer)

• Anwendungen basierend auf der Classic Connector API

• Aktenlösungen

• Universal Importer

7

Saperion Leitfaden Update 8.0

Java Core Server in Saperion Version 8.0 Mit der Version 7.5 wurde der Saperion Legacy Server freigegeben, ein 32-Bit Server, der auf einer 64-Bit Umgebung ausgeführt wird. Der Legacy Server übernimmt bestimmte Funktionalitäten des Java Core Servers.

Um folgende Funktionen auszuführen, müssen Sie den 32-Bit Legacy Server installieren.

• Laden von Images über den Classic Connector (Web Client), die im internen Format gespeichert wurden (DocLoadOriginal=False)

• Broker Event-Skript-Tasks (Workaround über R/ Link Server möglich)

• Serverseitige Workflow Event-Skript-Makros

Umstellung auf den Java Core Server Alle Saperion Update-Projekte, in denen Java-Module eingesetzt werden, müssen auf den 64-Bit Java Core Server umgestellt werden. Hierfür müssen Sie den Java Core Server 64-Bit neu installieren und die Konfiguration des bestehenden 32-Bit Systems übernehmen. Unser Professional Services Team unterstützt Sie gerne dabei.

Auf ein 64-Bit-System umstellen Dieses Kapitel beschreibt, wie Sie eine Standard-Saperion-Installation von 32-Bit auf 64-Bit umstellen.

Bevor Sie mit der Umstellung beginnen Bevor Sie mit der Umstellung beginnen, führen Sie folgende Maßnahmen durch.

• Sichern Sie Ihre 32-Bit Saperion-Installation, inklusive aller System- und Konfigurationsdateien.

• Richten Sie eine 64-Bit ODBC-Datenquelle analog zu Ihrer existierenden 32-Bit Datenquelle ein. Der Name der neuen Datenquelle sollte dem Namen im 32-Bit System entsprechen. Sie können dies auch später in der Datei program.ini anpassen.

• Installieren Sie das 64-Bit Java 1.8 JDK. Weitere Details zur Java-Kompatibilität finden Sie in den Saperion Technical Specifications.

64-Bit System installieren Um das 64-Bit System zu installieren, führen Sie die folgenden Schritte durch. Orientieren Sie sich dabei an der Saperion Dokumentation.

1. Installieren Sie einen vollständigen 64-Bit Saperion Server.

2. Installieren Sie das aktuelle Saperion Service Pack bzw. Patch Level.

3. Installieren Sie den Saperion Legacy Server, wenn benötigt.

64-Bit System konfigurieren Konfigurieren Sie das 64-Bit System, indem Sie die folgenden Schritte ausführen.

1. Sichern Sie die Dateien archief.ini und program.ini vom neuen 64-Bit System.

2. Vom Backup des 32-Bit Systems kopieren Sie die Dateien archief.ini und program.ini in das neue 64-Bit System.

8

Saperion Leitfaden Update 8.0

3. Vom Backup des 64-Bit Systems (Schritt 1) kopieren Sie die Sektion [modules64] in die neue 64-Bit program.ini-Datei.

4. Kopieren Sie alle Systemdateien wie DDC, QBE, DFD und BAS vom alten System in das neue. Hinweis Für Dateien mit absoluten Pfaden ist dies nicht erforderlich.

5. Vom Backup des 32-Bit Systems kopieren Sie das Verzeichnis [drive:]{path}\USERS\ mit Korb-Dateien und benutzerdefinierten Einstellungen in das neue 64-Bit System.

6. Stellen Sie sicher, dass die Pfade zu Cache, Mediendatenbanken und Repository absolute Pfade bzw. URLs sind. Passen Sie diese gegebenenfalls an.

7. Starten Sie den Java Core Server.

8. Starten Sie den Legacy Server.

9. Richten Sie am Legacy Server über MMC die Broker Makro Tasks neu ein.

64-Bit System Sobald Ihr 64-Bit System in Betrieb ist, testen Sie alle Funktionen. Prüfen Sie im Speziellen die folgenden Funktionalitäten.

• Der Web Client muss Zugriff auf Bilddateien haben, die ohne "DocLoadOriginal" archiviert worden sind.

• Workflows mit serverseitigen Makros müssen wie erwartet funktionieren.

FAQ 64-Bit System Kann ich Broker Makro-Tasks verwenden, wenn ich ein 64-Bit Java Core Server installiere?

Ja, hierfür müssen Sie zwingend den Saperion Legacy32 Server installieren.

Ich habe Workflows mit serverseitigen Makros. Kann ich diese in einem Workflow auf einem 64-Bit Java Core Server einsetzen?

Der Legacy Server kann Workflows ausführen. Er wird verwendet, wenn serverseitige Workflowskripte in der Workflowdefinition enthalten sind. Die Intention des Legacy Servers ist es, den initialen Aufwand für einen Umstieg auf die 64-Bit Version zu vermindern. Wir empfehlen jedoch, Ihre Skripte auf Java zu migrieren. Neue Implementierungen sollten auf Java erfolgen, und den Integration Server statt den Business Rules Server nutzen.

Kann ich weiterhin meinen alten Core Server Service starten?

Da alle neuen Funktionalitäten nur mit dem Java Core Server verfügbar sind (z.B. ECM Services, Java Storage Plugins, Classic Connector, Akten), wird der Core Server (ohne Java) nicht mehr unterstützt.

Kann ich meinen 32-Bit Saperion Core Server auf 64-Bit Saperion updaten?

Nein, der 64-Bit JCS benötigt eine Neuinstallation wie oben beschrieben.

9

Saperion Leitfaden Update 8.0

Benutzerverwaltung migrieren

Was ist neu in Version 8.0 In Saperion Version 8.0 wurde die Benutzverwaltung erneuert. In diesem Abschnitt sind die verschiedenen Änderungen beschrieben. Den Schnelleinstieg, um eine Version 7.5 auf die Version 8.0 zu aktualisieren, finden Sie im Abschnitt „Migration von Version 7.5 auf Version 8.0“.

Überblick der Änderungen Alle bestehenden Anwendungen funktionieren weiterhin mit der Version 8, ohne dass Sie das Customizing der Formulare oder Ihrer Implementierungen basierend auf Saperion APIs überarbeiten müssen. Alle Daten-Migrationen werden von Saperion automatisch beim ersten Start ausgeführt, lediglich eventuell vorhandene Erweiterungen der Benutzerverwaltung (Schema-Erweiterungs DDCs) und einige System-Einstellungen müssen vor dem Update in Ihrer aktuell installierten Version 7.5 angepasst werden. Aus technischen Gründen gelten die oben genannten Beschränkungen für ACLs und Benutzer weiterhin für alle 32 Bit Anwendungen also das COM API/UBI und den Saperion Rich Client. Wenn sie 32 Bit Anwendungen und den Web Client bzw. die neuen Services/Classic Connector gemischt verwenden wollen, lesen sie bitte das Kapitel „32-Bit-Systeme“. Bitte lesen sie aber mindestens das Kapitel „Migration von Version 7.5 auf 8.0“, um alle notwendigen Voraussetzungen für ein erfolgreiche Installation der Version 8 zu kennen. Ein Update von älteren Versionen als Saperion 7.5 ist mit einem erhöhten Aufwand verbunden und sie sollten dies nicht ohne Unterstützung unseres Professional Service durchführen.

Änderungen der Beschränkungen In der Version 8.0 wurden die folgenden Beschränkungen entfernt.

• Sie können ACLs nun auf beliebig viele Gruppen oder Benutzer anwenden. Vorher galt eine Beschränkung von 200 pro ACL.

• Benutzer können Mitglied beliebig vieler Gruppen sein. Früher konnten Benutzer Mitglied von maximal 150 Gruppen sein.

• Für alle Objekte wurde der Löschprozess in zwei Stufen implementiert. Es ist nun nicht mehr möglich, Benutzer, Gruppen oder Rollenobjekte zu löschen, die in Benutzung sind. Diese verbleiben in der Datenbank, werden aber nicht angezeigt. Weitere Informationen über gelöschte Objekte finden Sie in diesem Dokument im Abschnitt „Objekte löschen“.

Änderungen der Architektur

Änderungen des Datenmodells Mit der Version 8.0 wurde das Datenmodell der Benutzerverwaltung erneuert.

Die folgenden Tabellen wurden ersetzt oder hinzugefügt.

Objekt Vor Version 8.0 Version 8.0

Benutzer XSUSR XS_USERS

10

Saperion Leitfaden Update 8.0

Objekt Vor Version 8.0 Version 8.0

Gruppen XSGRP XS_GROUPS

ACLs XSACL XS_ACLS

Profile/Rollen XSACC XS_ROLES

Mandanten XSMND XS_TENANTS

Referenzen auf Benutzer in Gruppen

(neu) XS_USER_GROUP

Referenzen auf Gruppen in Gruppen

(neu) XS_GROUP_GROUP

Referenzen auf ACL in Gruppen

(neu) XS_ACL_GROUP

Links XS_ACL_GROUP mit XS_GROUPS

(neu) XS_ACL_GROUP_RIGHTS

Referenzen auf ACL in Benutzern

(neu) XS_ACL_USER

Links XS_ACL_USER mit XS_USERS

(neu) XS_ACL_USER_RIGHTS

Schema-Änderungen Die folgenden Spalten und Eindeutigkeitsregeln wurden neu hinzugefügt. ACLs (XSACL)

• Neue Spalte: ID ganzzahlig (Integer) • Neue Spalte: SysIndexState ganzzahlig (Integer)

Rollen (XSACC)

• Geänderte Spalte: AllowedCmdGroups (ganze Zahl statt String) In der folgenden Tabelle sind die Bitmasken für die Rollenrechte aufgelistet.

Recht Bitmaske Beschreibung

SSO 0x400h SSO ist erlaubt

TenantAdmin 0x200h Admin für alle Mandanten

Input 0x100h Datenimport im Rich Client ist erlaubt

11

Saperion Leitfaden Update 8.0

Recht Bitmaske Beschreibung

Index 0x080h Dokumente erstellen

Query 0x040h Dokumente suchen

Show 0x020h Dokumente anzeigen

Define 0x010h Definitionen (DDCs) verwalten

Config 0x008h System administrieren

User 0x004h Benutzerverwaltung nutzen

Edit 0x002h Dokumente bearbeiten

OtherKoerbe 0x001h Auf andere Körbe im Rich Client zugreifen

Benutzer (XSUSR)

• Geänderte Spalte: PwChanged (Zeitstempel statt String)

• Neue eindeutige Spalte: DisplayName Gruppen (XSGRP)

Neue eindeutige Spalte: DisplayName

Datenintegrität / Beschränkungen Ab Version 8.0 nutzt Saperion Beschränkungen für Datenbanken in der Benutzerverwaltung. Dadurch wird die Eindeutigkeit in Spalten und Referenzen zwischen Objekten gewährleistet. Inkonsistenzen können so vermieden werden. Beachten Sie, dass durch die Datenbeschränkungen unter Umständen keine Objekte gelöscht oder bearbeitet werden können. Weiterhin können Sie keine neuen Objekte erstellen, welche die Eindeutigkeitsbeschränkungen nicht erfüllen.

Durch die folgenden eindeutigen Spalten wird Datenintegrität erreicht.

Objekt Eindeutige Spalten

Benutzer ID, MandantenID+Fullname, MandantenID+Displayname

Gruppen ID, MandantenID+Fullname

Rollen ID, MandantenID+Name

ACL ID, MandantenID+Name

Mandant ID, Name

12

Saperion Leitfaden Update 8.0

Referenzielle Integrität wird durch die folgenden Referenzen gewährleistet.

Rollen Referenzen

Benutzer Verwendet in der ACL

Rolle Verwendet in der Gruppe

Gruppe Verwendet vom Benutzer oder einer anderen Gruppe

Mandant Verwendet Benutzer, Gruppe, ACL, oder Rolle

Hinweis Saperion testet keine dynamischen Referenzen der ACL-, Benutzer- und Gruppenobjekte in Index-, Workflow-, Protokoll- oder Nachschlagetabellen auf referenzielle Integrität. Um diese sicherzustellen, nutzen Sie die Systemkonfiguration.

Objekte löschen

Operationen schlagen fehl, wenn sie Referenzen zu gelöschten Objekten enthalten. Aus diesem Grund wurde zweistufiges Löschen für alle Objekte in der Benutzerverwaltung implementiert. Wenn Sie ein Objekt löschen, setzt Saperion eine Markierung in der Spalte „deleted“ (früher SYSINDEXSTATE). Das Objekt verbleibt im System, aber es wird nicht angezeigt. Dadurch wird die referenzielle Integrität geschützt.

Um die Integrität zu erhalten, löschen Sie niemals Objekte aus der Benutzerverwaltung. Markieren Sie die Objekte stattdessen als „deleted“. Sie können ein Objekt nur dann dauerhaft löschen, wenn es nicht als Datenobjekt genutzt wird. Zum Beispiel können Sie einen Benutzer, der noch in einer ACL genutzt wird, nicht dauerhaft löschen.

Es ist nicht möglich, mittels API Objekte dauerhaft zu löschen. Sie müssen die Objekte sorgfältig in der Datenbank löschen.

Objekt wiederherstellen

Um ein gelöschtes Objekt wiederherzustellen, führen Sie die folgenden Schritte aus.

1. Öffnen Sie den Client, navigieren Sie zu Administration > Benutzer und klicken Sie auf Verwaltung.

2. Im Benutzer-Manager-Dialog, wählen Sie den entsprechenden Tab für Ihr Objekt aus.

3. Klicken Sie Löschen.

4. Klicken Sie Ergebnis um alle gelöschten Objekte anzuzeigen.

5. Doppelklicken Sie auf das Objekt, das Sie wiederherstellen möchten.

6. Klicken Sie OK.

32-Bit-Systeme Die Beschränkungen für ACLs und Benutzer, die aus früheren Saperion-Versionen bekannt sind, finden weiterhin Anwendung bei allen 32-Bit-Systemen. Dazu gehören die COM und UBI APIs, sowie der Saperion Rich Client. In diesem Abschnitt finden Sie Informationen über die Nutzung von 32-Bit-

13

Saperion Leitfaden Update 8.0

Anwendungen und dem Web Client, oder der Nutzung von den neuen Services zusammen mit dem Classic Connector.

Kompatibilitätsviews und Trigger Saperion Version 8.0 enthält Kompatibilitätsviews, sodass der Rich Client sowie COM- und UBI-Anwendungen weiterhin funktionieren wie zuvor. Die Views bilden die Tabellen XSUSR, XSGRP, XSACC, XSACL und XSMND der alten Benutzerverwaltung nach. Zusätzlich sind Trigger definiert, die eine vollständige Kompatibilität zwischen 32-Bit-Anwendungen und den neuen APIs Classic Connector/ECM Service sicherstellen.

Neben den Kompatibilitätsviews nutzen die 32-Bit-Anwendungen die neuen Referenztabellen für Benutzer, Gruppen und ACLs. Weitere Informationen finden Sie in den Abschnitten „Automatische Migration“ und „Datenmodell“.

Wenn Sie derzeit direkt auf diese Tabellen zugreifen, stellen Sie sicher, dass Sie ebenfalls direkt auf die Views zugreifen können. Falls Sie direkt in die Tabellen schreiben, ohne die Saperion API zu nutzen, müssen Sie diese Funktionen mit den Saperion API-Calls ersetzen.

Objekte außerhalb der 32-Bit-Beschränkung Sie können nun Objekte, wie z.B. Benutzer, Gruppen oder ACL, in der Benutzerverwaltung erstellen, die außerhalb der vorherigen Beschränkungen von 200 Rechten pro ACL und 150 Gruppen pro Benutzer oder Gruppe sind. Solche Objekte können immer in 32-Bit-Anwendungen genutzt werden, wenn diese Anwendungen in Operationen verwendet werden, die sowohl 32-Bit- als auch 64-Bit-Anwendungen nutzen.

Wenn ein Objekt nicht genutzt werden kann, zeigt der Java Core Server beim Start eine Meldung an, dass dieses Objekt nicht von 32-Bit-Anwendungen genutzt werden kann. Für ACLs bedeutet dies, dass auf die Objekte nicht zugegriffen werden kann. Für Benutzer bedeutet dies, dass sie sich über 32-Bit-Anwendungen nicht einloggen können.

32-Bit LDAP Sync Bei einem LDAP Sync werden nicht verfügbare Objekte nicht mehr gelöscht. Das System markiert sie lediglich als gelöscht, sodass sie die Datenintegrität in einem späteren Sync nicht beeinträchtigen.

Änderungen der Programmierung

Änderungen am Systemverhalten Wenn Sie Saperion COM, UBI oder Classic Connector APIs nutzen, um die Benutzerverwaltung zu befüllen, müssen Sie überprüfen, ob Ihre Anwendung Objekte löscht und zu einem späteren Zeitpunkt ein Objekt mit demselben Namen neu erzeugt. Diese Operation scheitert und es wird ein Constraint-Violation-Fehler im Protokoll ausgegeben. Sie müssen die Implementierung derart anpassen, dass das System das gelöschte Objekt wiederverwendet.

Überprüfen Sie zusätzlich, ob Sie die API zum Löschen von Rollen (früher: Profile) nutzen. Ist das der Fall, so müssen Sie sicherstellen, dass die Rollen nicht länger von Gruppen referenziert werden. In Version 8.0 wird diese Operation fehlschlagen und es wird im Protokoll ein Constraint-Violation-Fehler ausgegeben.

Doppelte Displaynamen sind nicht mehr erlaubt. Achten Sie darauf, dass Benutzer immer eindeutige Displaynamen haben. Wir empfehlen, sicherzustellen, dass die Spalten für Ihre Businesslogik eindeutig für alle Objekte sind. Weitere Informationen finden Sie im Abschnitt „Datenintegrität / Beschränkung“.

14

Saperion Leitfaden Update 8.0

Neue Implementierungen Nutzen Sie die ECM Services für alle Implementierungen in Projekten, wann immer es möglich ist. Lexmark wird diese Services in allen zukünftigen Saperion-Entwicklungen nutzen und erweitern.

Classic Connector

Die ECM Services ersetzen alle Funktionen des Classic Connectors und stellen eine neue Java API zur Verfügung. Momentan ist es an manchen Stellen noch einfacher, Erweiterungen zu implementieren, wenn die Events den Classic Connector integriert haben, z.B. für Web Client Events oder im Integration Server.

UBI

Die UBI API wird nicht länger unterstützt und sollte nicht mehr verwendet werden. Sie wurde komplett durch die RESTful ECM Services ersetzt. Aktuell existiert noch kein End-of-Life-Termin, sodass Sie Ihre bestehenden Anwendungen derzeit noch nicht ändern müssen.

COM

COM-Anwendungen enthalten weiterhin Einschränkungen für ACLs und Benutzer. Deshalb sollte diese API nicht in neuen Projekten genutzt werden.

Weitere Information über die Nutzung von COM API-Methoden, um gelöschte Objekte zu suchen und die Löschmarkierung zurückzusetzen, finden Sie in der Saperion Entwickler-Dokumentation „COM-Schnittstelle“. Wichtig sind dabei die iApplication-Methoden SearchUser, SearchGroup, SearchACL und SearchRole.

Sequenzen für Objekt-IDs Saperion Version 8.0 nutzt die Tabelle XS_USERMNGMNT_SEQ um eine neue ID zuzuweisen, wenn Sie ein neues Objekt in der Benutzerverwaltung erstellen. Die Tabelle enthält eine Zeile für jede Tabelle der Benutzerverwaltung, in welcher das System die nächste ID verwaltet. Trigger sorgen dafür, dass die ECM Services und 32-Bit-Anwendungen eine korrekte, eindeutige ID bereitstellen. Saperion versucht, bestehende Lücken in den Objekt-IDs zu füllen.

Unterstützte Datenbanken Informationen über die unterstützten Datenbanken finden Sie in den Saperion Technical Specifications im Dokumentationsportal docs.lexmark.com.

Migration von Version 7.5 auf 8.0

Automatische Migration

Wenn Sie den Java Core Server erstmalig nach dem Update auf Version 8.0 starten, werden die Daten der Benutzerverwaltung automatisch migriert. Alle bestehenden Anwendungen laufen weiter. Sie müssen keine existierenden Formeln oder Implementierungen ändern, die auf Saperion APIs basieren.

Stellen Sie sicher, dass Ihr System für die Migration vorbereitet ist, indem Sie zunächst die im Abschnitt „Update von Version 7.5“ beschriebenen Verfahren durchführen.

Wichtiger Hinweis: Die Migration darf nur von Saperion Version 7.5 SP5 oder höher ausgeführt werden.

15

Saperion Leitfaden Update 8.0

Wichtiger Hinweis Falls die Migration fehlschlägt, kann der Java Core Server nicht starten. Bevor Sie fortfahren können, müssen Sie alle Probleme beheben. Typische Probleme sind uneinheitliche Daten oder fehlende Rechte für die Erstellung von Datenbankobjekten.

Sofern Sie noch keine neuen Objekte in der Benutzerverwaltung erstellt haben, können Sie die Migration beliebig oft wiederholen, da sämtliche Daten in den *_BACKUP-Tabellen gesichert sind. Falls Sie vor dem Neustart der Migration Daten geändert haben, müssen Sie die Änderungen auch in diesen Tabellen vornehmen. Bevor Sie die Migration wiederholen, löschen Sie alle Zeilen in der Tabelle XS_MIGRATED.

Migrationsvorbereitungen Bevor Sie von Version 7.5 auf Version 8.0 updaten können, müssen Sie folgende Schritte ausführen. Diese sind in den nachfolgenden Abschnitten beschrieben.

• Optionen der Benutzerverwaltung einstellen

• Kodierung zurücksetzen

• Schema-Erweiterungen umstellen

• Prüfskripte ausführen

Optionen der Benutzerverwaltung einstellen Bevor Sie das Update durchführen, müssen Sie die Benutzerverwaltung unverschlüsselt über ODBC speichern, damit Sie alle Funktionen von Classic Connector und Web Client nutzen können. Weitere Informationen entnehmen Sie der Beschreibung des Parameters „Kodierung“ im Abschnitt „Einstellungen der Benutzerverwaltung“ in der Dokumentation „Benutzerverwaltung“.

Kodierung zurücksetzen Bevor Sie ein Update auf die Version 8.0 ausführen, setzen Sie Ihre Benutzerverwaltung auf „unkodiert“, indem Sie die folgenden Schritte ausführen.

1. Öffnen Sie in einem Text-Editor die Datei archief.ini und navigieren Sie zum Abschnitt [System].

2. Setzen Sie den Parameter AllowDecode auf TRUE.

3. Starten Sie den Java Core Server neu.

4. Navigieren Sie im Rich Client zu Administration > Benutzer und klicken Sie auf „Verwaltung“.

5. Klicken Sie im Dialog „Benutzer-Manager” auf die Schaltfläche „Optionen”.

6. Stellen Sie im Dialog „Einstellungen” sicher, dass das Kontrollkästchen „Kodiert“ nicht angekreuzt ist. Klicken Sie OK.

7. Beenden Sie Saperion und starten Sie den Server neu.

8. Löschen Sie in der Datenbanktabelle XSMND den Inhalt der Spalte „FKEY“.

Schema-Erweiterungen umstellen Stellen Sie sicher, dass Ihre existierenden Schema-Erweiterungen für Benutzer, Gruppen und Mandanten die folgenden Eigenschaften erfüllen:

16

Saperion Leitfaden Update 8.0

• Alle DDCs der Schema-Erweiterungen müssen das Systemfeld SYSROWID enthalten.

• Der DDC-Name für die Benutzer-Schema-Erweiterung ist xusr_schema.ddc.

• Der DDC-Name für die Gruppen-Schema-Erweiterung ist xsgrp_schema.ddc.

• Der DDC-Name für die Mandanten-Schema-Erweiterung ist xsmnd_schema.ddc.

Hinweis Wenn eine ODBC-Verbindung verwendet wird, müssen die Tabellen xusr_schema.ddc, xsgrp_schema.ddc und sxmnd_schema.ddc alle in der gleichen Datenbank liegen wie die Tabellen für die Benutzerverwaltung. Sie können eine Tabelle verschieben in dem Sie erst die Datenquelle in der DDC-Datei anpassen und dann die Daten mit SQL Tools verschieben.

Prüfen Sie ob eine DDC die gewünschten Systemfelder enthält in dem Sie folgende Schritte ausführen.

1. Öffnen Sie den Rich Client, navigieren Sie zu Administration > Benutzer and klicken Sie auf Verwaltung.

2. Im Benutzer-Manager-Dialog, klicken Sie die Oberfläche Optionen.

3. Im Dialog Einstellungen, klicken Sie den Reiter Schema-Erweiterung, und doppel-klicken Sie die gewünschte Tabelle.

4. Im Dialog Tabellen-Definition bearbeiten, klicken Sie den Reiter Eigenschaften und stellen Sie sicher dass das Kontrollkästchen des Systemfeldes SYSROWID angehakt ist.

5. Klicken Sie auf OK und beenden Sie Saperion.

6. Rufen Sie die Tabelle in der Datenbank auf, um die Tabelle dort zu aktualiseren.

Falls Sie andere DDC-Namen verwenden, müssen Sie diese umbenennen und die Daten kopieren.

Prüfskripte ausführen Testen Sie Ihre Benutzerverwaltung bevor Sie das Update durchführen, um auszuschließen, dass Ihre Tabellen uneinheitliche Daten enthalten, wie z.B. doppelt vergebene Namen oder IDs.

SQL-Prüfskripte für Oracle und den MS SQL-Server sind in diesem Dokument im Abschnitt „Prüfskripte für Datenintegrität“ enthalten. Die Skripte prüfen Daten- und Protokoll-Inkonsistenzen. Die „Log inconsistencies“-Skripte laufen auch als Teil der automatischen Migration. Sie können sie aber auch vor der Migration nutzen, um Probleme zu beheben.

Um die Prüfskripte auszuführen, führen Sie die folgenden Schritte aus.

1. Je nachdem, welche Datenbank Sie nutzen, kopieren Sie die das zugehörige “Log inconsistencies”-Prüfskript aus dem Abschnitt „Prüfskripte für Datenintegrität“ in die Zwischenablage.

2. Führen Sie das Skript aus. Sie können dafür ein Programm wie MS SQL Server Management Studio oder Oracle SQL Developer nutzen. Führen Sie das Skript mit dem Account aus, mit dem sich Saperion an der Datenbank anmeldet.

3. Falls Ergebnisse angezeigt werden, beheben Sie die gefundenen Inkonsistenzen.

Im Abschnitt „Prüfskripte für Datenintegrität” finden Sie ebenfalls ein SQL-Skript, mit dem Sie Duplikate entfernen können. Alle anderen Daten-Inkonsistenzen müssen Sie manuell aus der Benutzerverwaltung löschen, bevor Sie das Update durchführen können.

17

Saperion Leitfaden Update 8.0

Update auf Version 8.0 Nachdem Sie alle Inkonsistenzen entfernt haben, können Sie auf Version 8.0 updaten. Führen Sie anschließend die folgenden Verfahren durch bevor Sie den Java Core Server starten. Diese sind in den nachfolgenden Abschnitten beschrieben.

• Benutzerverwaltung konvertieren

• Neue JDBC-Datenquellen für die Benutzerverwaltung erstellen

Benutzerverwaltung konvertieren Bevor Sie den Java Core Server zum ersten Mal nach dem Update starten, führen Sie die folgenden Schritte aus.

1. Stellen Sie sicher, dass der Account, mit dem Saperion auf die Datenbank zugreift, die folgenden Rechte besitzt.

• CREATE/ALTER/DROP TABLE/VIEW/INDEX/STORED PROCEDURE/FUNCTION/TRIGGER

• RENAME TABLE

• INSERT INTO SELECT

2. Starten Sie den Java Core Server. Das System konvertiert Ihre Benutzerverwaltung und erstellt ein Backup Ihrer bestehenden Tabellen. Sämtliche Anwendungen von Ihnen können die neue Benutzerverwaltung ohne weitere Konfiguration nutzen.

3. Informationen darüber, wie Sie vorgehen müssen, falls der Service nicht startet, finden Sie unter „Wichtiger Hinweis“ im Abschnitt „Automatische Migration“.

Neue JDBC-Datenquellen für die Benutzerverwaltung anlegen Das erste Update wird fehlschlagen, falls sich die Benutzerverwaltung auf einer separaten ODBC-Quelle befindet, für die noch keine entsprechende JDBC-Datenquelle in der archief.ini-Datei definiert wurde. Aus technischen Gründen empfehlen wir, mit einer Datenquelle für alle Tabellen zu arbeiten. Aus Sicherheitsgründen kann es jedoch notwendig sein, die Tabellen für die Benutzerverwaltung mit einem anderen Account zu speichern. In diesem Fall müssen Sie eine zusätzliche Datenquelle in der Datei „dataSourcesConfiguration.xml“ einfügen, damit der Java Core Server sie finden kann.

Um das Update nach dem ersten Fehlschlagen erfolgreich auszuführen, führen Sie die folgenden Schritte aus.

1. Öffnen Sie in einem Text-Editor die Datei [drive:]{path}scr\scr-javacoreserver\config\dataSourcesConfiguration.xml und geben Sie eine JDBC-Datenquelle ein. Weitere Informationen über die Konfiguration von Datenquellen finden Sie im Saperion Installationshandbuch unter „Java Core Server Optionen“.

2. Starten Sie den Server neu.

3. Optional. Erstellen oder bearbeiten Sie eine ODBC-Datenquelle.

4. Öffnen Sie im Rich Client den Dialog „Benutzer-Manager” und klicken Sie auf „Optionen” um die Datenquelle zu konfigurieren.

5. Starten Sie den Server anschließend neu.

18

Saperion Leitfaden Update 8.0

Automatische Migration In diesem Abschnitt sind die Schritte aufgelistet, die das System ausführt, wenn Sie den Java Core Server zum ersten Mal nach dem Update auf Version 8.0 starten. Falls Fehler während der Migration auftreten sollten, stoppt das System die Migration und der Serverstart schlägt fehl. Stellen Sie sicher, dass Sie alle Schritte in den Abschnitten zu Vorbereitung und Update durchgeführt haben.

Ablaufbeschreibung Wenn Sie den Java Core Server zum ersten Mal starten, führt Saperion die folgenden Schritte aus.

1. Erstellt die neuen XS_*-Tabellen, falls diese noch nicht existieren. Weitere Informationen finden Sie im Abschnitt „Datenmodell“ am Ende dieses Dokuments.

2. Erstellt die notwendigen TRIGGER, FUNCTIONS und STORED PROCEDURES.

3. Löscht die Views XSUSR, XSGRP, XSACC, XSACL, und XSMND, welche die Kompatibilität für die 32-Bit-Anwendungen sicherstellen.

4. Benennt die bestehenden Backup-Tabellen von XS_USR_BACKUP, XSGRP_BACKUP, XSACC_BACKUP, XSACL_BACKUP und XSMND_BACKUP nach XSUSR, XSGRP, XSACC, XSACL und XSMND um.

5. Erstellt die Migrationstabellen XS_MIGRATED und XS_MIGRATION_CHECK, falls sie noch nicht vorhanden sind.

6. Kontrolliert, ob die Migration bereits erfolgreich ausgeführt wurde, indem die XS_MIGRATED-Tabelle geprüft wird. Wenn die Migration erfolgreich war, erstellt das System Kompatibilitätsviews.

7. Prüft die Datenkonsistenz und protokolliert die Inkonsistenzen in der XS_MIGRATION_CHECK-Tabelle. Das System leert die Tabelle vor der Prüfung und stoppt die Prüfung, wenn Inkonsistenzen gefunden wurden.

8. Erweitert die XSACL-Tabelle mit der neuen ID und den SYSINDEXSTATE-Feldern, falls notwendig. Die Spalten werden mit einer fortlaufenden Nummer beginnend bei 1, und SYSINDEXSTATE beginnend mit 0 initialisiert (nicht gelöscht).

9. Migriert die Mandanten.

• Erstellt einen Standard-Mandanten mit der ID 0 und markiert ihn als gelöscht.

• Kopiert alle Mandanten von XSMND nach XS_TENANTS.

• Schreibt die Anzahl der konvertierten Mandanten in die XS_MIGRATED-Tabelle (von der XS_TENANTS-Tabelle).

• Erstellt eine Sicherungskopie und benennt sie von XSMND nach XSMND_BACKUP um.

10. Migriert die Rollen (früher: Profile).

• Erstellt eine Standard-Rolle mit der ID 0 und markiert sie als gelöscht.

• Kopiert alle Rollen von XSACC nach XS_ROLES.

• Schreibt die Anzahl der konvertierten Rollen in die XS_MIGRATED-Tabelle (von der XS_ROLES-Tabelle)

• Erstellt eine Sicherungskopie und benennt sie von XSACC nach XSACC_BACKUP um.

11. Migriert die Gruppen.

• Erstellt eine Standard-Gruppe mit der ID 0 und markiert sie als gelöscht.

19

Saperion Leitfaden Update 8.0

• Kopiert alle Gruppen von XSGRP nach XS_GROUPS.

• Kopiert die Referenzen zu anderen Gruppen in die XS_GROUP_GROUP-Tabelle. Das System ignoriert Referenzen zu Gruppen, die nicht mehr existieren.

• Schreibt die Anzahl der konvertierten Gruppen in die XS_MIGRATED-Tabelle (von der XS_GROUPS-Tabelle).

• Schreibt die Anzahl der konvertierten Gruppenreferenzen in die XS_MIGRATED-Tabelle (von der GROUP_GROUP-Tabelle).

• Erstellt eine Sicherungskopie und benennt sie von XSGRP nach XSGRP_BACKUP um.

12. Migriert die Benutzer.

• Erstellt einen Standard-Benutzer mit der ID 0 und markiert ihn als gelöscht.

• Kopiert alle Benutzer von XSUSR nach XS_USERS.

• Kopiert alle Referenzen zu Gruppen in die XS_USER_GROUP-Tabelle. Das System ignoriert Referenzen zu Gruppen, die nicht mehr existieren.

• Schreibt die Anzahl der konvertierten Benutzer in die XS_MIGRATED-Tabelle (von der XS_USERS-Tabelle).

• Schreibt die Anzahl der konvertierten Gruppenreferenzen in die XS_MIGRATED-Tabelle (von der XS_USER_GROUP-Tabelle).

• Erstellt eine Sicherungskopie und benennt sie von XSUSR nach XSUSR_BACKUP um.

13. Migriert die ACLs.

• Erstellt eine Standard-ACL mit der ID 0 und markiert sie als gelöscht.

• Kopiert alle ACLs von XSACL nach XS_ACLS. ACLs mit ungültigen Mandanten werden nicht migriert.

• Kopiert die Gruppenrechte in XS_ACL_GROUP-Tabelle und in die XS_ACL_GROUP_RIGHTS-Tabelle. Das System ignoriert Referenzen zu Gruppen, die nicht mehr existieren.

• Schreibt die Anzahl der konvertierten ACLs in die XS_MIGRATED-Tabelle (von der XS_ACLS-Tabelle).

• Erstellt eine Sicherungskopie und benennt sie von XSACL nach XSACL_BACKUP um.

14. Aktualisiert die Admin-Rolle mit dem Recht, Mandanten zu verwalten. Dieses Recht ist neu und wird von den ECM Services ausgewertet.

15. Erstellt die Kompatibilitätsviews XSUSER, XSGRP, XSACC, XSACL und XSMND.

Prüfskripte für Datenintegrität Bevor Sie das Update durchführen, testen Sie die aktuelle Datenintegrität der Benutzerverwaltung, indem Sie eines der folgenden „Log inconsistencies”-Skripte ausführen.

Um ein Prüfskript auszuführen, führen Sie die folgenden Schritte durch.

1. Kopieren Sie das entsprechende Skript in die Zwischenablage.

20

Saperion Leitfaden Update 8.0

2. Nutzen Sie ein Programm, z.B. MS SQL Server Management Studio oder Oracle SQL Developer, um das Skript auszuführen. Sie müssen den Account nutzen, mit dem sich Saperion an der Datenbank anmeldet.

Skripte für MS SQL Server Nutzen Sie diese MS-SQL-Skripte, um Inkonsistenzen zu protokollieren oder doppelt vergebene Namen aufgrund gelöschter Aufzeichnungen zu bereinigen.

Log inconsistencies IF OBJECT_ID('XS_MIGRATION_CHECK', 'U') IS NULL CREATE TABLE [XS_MIGRATION_CHECK] ( [NAME] varchar(128), [TENANT] int, [ERROR] varchar(128) ) GO DELETE [XS_MIGRATION_CHECK] INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [FULLNAME], [SYSCLIENT], 'DUPLICATE FULLNAME IN XSUSR' FROM [XSUSR] GROUP BY [FULLNAME], [SYSCLIENT] HAVING COUNT(*) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [ID], MAX([SYSCLIENT]), 'DUPLICATE ID IN XSUSR' FROM [XSUSR] GROUP BY [ID] HAVING COUNT([ID]) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [FULLNAME], [SYSCLIENT], 'DUPLICATE FULLNAME IN XSGRP' FROM [XSGRP] GROUP BY [FULLNAME], [SYSCLIENT] HAVING COUNT(*) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [ID], MAX([SYSCLIENT]), 'DUPLICATE ID IN XSGRP' FROM [XSGRP] GROUP BY [ID] HAVING COUNT([ID]) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [NAME], [SYSCLIENT], 'DUPLICATE FULLNAME IN XSACC' FROM [XSACC] GROUP BY [NAME], [SYSCLIENT] HAVING COUNT(*) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [ID], MAX([SYSCLIENT]), 'DUPLICATE ID IN XSACC' FROM [XSACC] GROUP BY [ID] HAVING COUNT([ID]) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [ACLNAME], [SYSCLIENT], 'DUPLICATE FULLNAME IN XSACL' FROM [XSACL] GROUP BY [ACLNAME], [SYSCLIENT] HAVING COUNT(*) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [NAME], 0, 'DUPLICATE FULLNAME IN XSMND' FROM [XSMND] GROUP BY [NAME] HAVING COUNT(*) > 1 INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT [ID], 0, 'DUPLICATE ID IN XSMND' FROM [XSMND] GROUP BY [ID] HAVING COUNT(*) > 1 SELECT * FROM [XS_MIGRATION_CHECK]

Doppelt vergebene Namen aufgrund gelöschter Aufzeichnungen bereinigen; fügen Sie “Deleted: <timestamp>” hinzu UPDATE [XSGRP] SET [FULLNAME] = [FULLNAME] + ', deleted: ' + CONVERT(varchar,[SYSTIMESTAMP]) WHERE [SYSINDEXSTATE] > 0 AND [FULLNAME] IN (SELECT [FULLNAME] FROM [XSGRP] GROUP BY [FULLNAME], [SYSCLIENT] HAVING COUNT(*) > 1 )

21

Saperion Leitfaden Update 8.0

UPDATE [XSUSR] SET [DISPLAYNAME] = [DISPLAYNAME] + ', deleted: ' + CONVERT(varchar,[SYSTIMESTAMP]) WHERE [SYSINDEXSTATE] > 0 AND [DISPLAYNAME] IN (SELECT [DISPLAYNAME] FROM [XSUSR] GROUP BY [DISPLAYNAME], [SYSCLIENT] HAVING COUNT(*) > 1 ) UPDATE [XSUSR] SET [FULLNAME] = [FULLNAME] + ', deleted: ' + CONVERT(varchar,[SYSTIMESTAMP]) WHERE [SYSINDEXSTATE] > 0 AND [FULLNAME] IN (SELECT [FULLNAME] FROM [XSUSR] GROUP BY [FULLNAME], [SYSCLIENT] HAVING COUNT(*) > 1 )

Skripte für Oracle Nutzen Sie diese Oracle-Skripte um Inkonsistenzen zu protokollieren oder doppelt vergebene Namen aufgrund gelöschter Aufzeichnungen zu bereinigen.

Log inconsistencies BEGIN EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "FULLNAME", "SYSCLIENT", ''DUPLICATE FULLNAME IN XSUSR'' FROM XSUSR GROUP BY "FULLNAME", "SYSCLIENT" HAVING COUNT(*) > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "ID", MAX("SYSCLIENT"),''DUPLICATE ID IN XSUSR'' FROM XSUSR GROUP BY "ID" HAVING COUNT("ID") > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "FULLNAME","SYSCLIENT", ''DUPLICATE FULLNAME IN XSGRP'' FROM XSGRP GROUP BY "FULLNAME", "SYSCLIENT" HAVING COUNT(*) > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "ID", MAX("SYSCLIENT"), ''DUPLICATE ID IN XSGRP'' FROM XSGRP GROUP BY "ID" HAVING COUNT("ID") > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "ID", MAX("SYSCLIENT"),''DUPLICATE ID IN XSACC'' FROM XSACC GROUP BY "ID" HAVING COUNT("ID") > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "NAME", "SYSCLIENT",''DUPLICATE NAME IN XSACC'' FROM XSACC GROUP BY ("NAME", "SYSCLIENT") HAVING COUNT(*) > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "ACLNAME", MAX("SYSCLIENT"),''DUPLICATE ID IN XSACL'' FROM XSACL GROUP BY "ACLNAME" HAVING COUNT(*) > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "NAME", 0,''DUPLICATE NAME IN XSMND'' FROM XSMND GROUP BY "NAME" HAVING COUNT("NAME") > 1'; EXECUTE IMMEDIATE 'INSERT INTO XS_MIGRATION_CHECK ( NAME, TENANT, ERROR ) SELECT "ID", 0,''DUPLICATE ID IN XSMND'' FROM XSMND GROUP BY "ID" HAVING COUNT("ID") > 1'; EXCEPTION WHEN OTHERS THEN NULL; END

22

Saperion Leitfaden Update 8.0

Migration Integritätsprobleme anzeigen SELECT * FROM XS_MIGRATION_CHECK

Doppelt vergebene Namen aufgrund gelöschter Aufzeichnungen bereinigen; fügen Sie “Deleted: <timestamp>” hinzu UPDATE XSGRP SET FULLNAME = FULLNAME || ', deleted: ' || TO_CHAR( SYSTIMESTAMP) WHERE SYSINDEXSTATE > 0 AND FULLNAME IN (SELECT FULLNAME FROM XSGRP GROUP BY FULLNAME, SYSCLIENT HAVING COUNT(*) > 1 ) UPDATE XSUSR SET FULLNAME = FULLNAME || ', deleted: ' || TO_CHAR( SYSTIMESTAMP) WHERE SYSINDEXSTATE > 0 AND FULLNAME IN (SELECT FULLNAME FROM XSUSR GROUP BY FULLNAME, SYSCLIENT HAVING COUNT(*) > 1 )

23

Saperion Leitfaden Update 8.0

Datenmodell Das folgende Entity Relationship Diagram (ERD) zeigt die Beziehungen zwischen den Standard-Tabellen in der neuen Benutzerverwaltung.

24