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:

  1. Stoppen Sie die Essbase-Managed Server mit <DOMAIN HOME>/esstools/bin/stop.sh (unter Linux) oder <DOMAIN HOME>\esstools\bin\stop.cmd (unter Windows).

  2. Erstellen Sie in <DOMAIN HOME>/bin eine Backupkopie der Datei, die Sie bearbeiten möchten. Beispiel:

    Unter Linux

    cp setStartupEnv.sh setStartupEnv_bak.sh

    Unter Windows

    copy setStartupEnv.cmd setStartupEnv_bak.cmd
  3. Befolgen Sie bei der Bearbeitung stets die dokumentierten Anweisungen von Oracle, oder arbeiten Sie mit Oracle Support zusammen.

  4. 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,

  1. Stoppen Sie die Essbase-Services (siehe Server stoppen, starten und prüfen).
  2. Navigieren Sie auf dem Rechner, auf dem Essbase bereitgestellt ist, zu <Domain Home>/bin (siehe Umgebungsspeicherorte in der Essbase-Plattform).
  3. Erstellen Sie eine Sicherungskopie des Startskripts setStartupEnv.sh (Linux) oder setStartupEnv.bat (Windows). Speichern Sie sie unter einem anderen Namen. Beispiel: cp setStartupEnv.sh setStartupEnv_orig.sh
  4. Öffnen Sie setStartupEnv.sh oder setStartupEnv.bat zur Bearbeitung.
  5. 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_OPTIONS

    Windows-Beispiel (setStartupEnv.bat):

    set JAVA_OPTIONS=%JAVA_OPTIONS% "-Ddtr.in.clause.limit=15000"
  6. Speichern Sie setStartupEnv.sh oder setStartupEnv.bat.
  7. Starten Sie die Essbase-Services (siehe Server stoppen, starten und prüfen).