Grenzwert für SQL IN-Klauseln in Drillthrough-Berichten erweitern
Beheben Sie einen Drillthrough-Berichtsfehler, indem Sie den SQL IN-Klauselgrenzwert über den Standardwert von 1000 Elementen hinaus erhöhen.
Wenn Drillthrough-Berichte fehlerhaft sind
'ERROR: relation <member name> does not exist'
Der Fehler tritt auf, da SQL IN-Klauseln standardmäßig auf 1000 Elemente begrenzt sind. Dieser Standardwert ist für Essbase und Oracle Database vorhanden.
Achtung:
Die Essbase-Plattform enthält Skripte in <DOMAIN HOME>/bin, mit denen die Umgebung und das Verhalten der Essbase-Funktionalität angepasst werden können. Änderungen an dieser Domainumgebung oder diesen Startskripten können allerdings unbeabsichtigte Folgen haben, wie Startfehler. Oracle empfiehlt, Änderungen zunächst in einer Testumgebung vorzunehmen. Führen Sie immer folgende Schritte aus, bevor Sie diese Skripte bearbeiten:
-
Stoppen Sie die Essbase-Managed Server mit
<DOMAIN HOME>/esstools/bin/stop.sh(unter Linux) oder<DOMAIN HOME>\esstools\bin\stop.cmd(unter Windows). -
Erstellen Sie in
<DOMAIN HOME>/bineine Backupkopie der Datei, die Sie bearbeiten möchten. Beispiel:Unter Linux
cp setStartupEnv.sh setStartupEnv_bak.shUnter Windows
copy setStartupEnv.cmd setStartupEnv_bak.cmd -
Befolgen Sie bei der Bearbeitung stets die dokumentierten Anweisungen von Oracle, oder arbeiten Sie mit Oracle Support zusammen.
-
Starten Sie Essbase mit
<DOMAIN HOME>/esstools/bin/start.sh(unter Linux) oder<DOMAIN HOME>\esstools\bin\start.cmd(unter Windows) neu. Stellen Sie sicher, dass der Start ordnungsgemäß abgeschlossen wird.
Um das SQL IN-Klausellimit für Drillthrough zu erhöhen, wenn erweiterte Limits von der externen Datenbank unterstützt werden,
- Stoppen Sie die Essbase-Services (siehe Server stoppen, starten und prüfen).
- Navigieren Sie auf dem Rechner, auf dem Essbase bereitgestellt ist, zu
<Domain Home>/bin(siehe Umgebungsspeicherorte in der Essbase-Plattform). - Erstellen Sie eine Sicherungskopie des Startskripts
setStartupEnv.sh(Linux) odersetStartupEnv.bat(Windows). Speichern Sie sie unter einem anderen Namen. Beispiel:cp setStartupEnv.sh setStartupEnv_orig.sh - Öffnen Sie
setStartupEnv.shodersetStartupEnv.batzur Bearbeitung. - Fügen Sie die Konfigurationspositionen hinzu, um das Limit über 1000 hinaus zu erhöhen.
Linux-Beispiel (setStartupEnv.sh):
JAVA_OPTIONS="${JAVA_OPTIONS} -Ddtr.in.clause.limit=15000" export JAVA_OPTIONSWindows-Beispiel (setStartupEnv.bat):
set JAVA_OPTIONS=%JAVA_OPTIONS% "-Ddtr.in.clause.limit=15000" - Speichern Sie
setStartupEnv.shodersetStartupEnv.bat. - Starten Sie die Essbase-Services (siehe Server stoppen, starten und prüfen).