Expand Limit for SQL IN Clauses in Drill Through Reports

SQL IN 절 제한을 기본값인 1000개 멤버 이상으로 늘려 드릴스루 보고서 오류를 해결합니다.

드릴스루 보고서가 오류로 인해 실패하는 경우

'ERROR: relation <member name> does not exist'

실패는 기본적으로 SQL IN 절이 1000개 멤버로 제한되기 때문에 발생합니다. 이 기본값은 Essbase 및 Oracle Database에 대해 존재합니다.

주의:

Essbase 플랫폼에는 Essbase 기능의 환경 및 동작을 사용자정의할 수 있는 스크립트가 <DOMAIN HOME>/bin에 포함되어 있습니다. 그러나 이 도메인 환경이나 시작 스크립트를 변경하면 시작 실패를 비롯한 의도치 않은 효과가 발생할 수 있습니다. 오라클은 먼저 테스트 환경에서 변경할 것을 권장합니다. 이 스크립트를 편집하기 전에 항상 다음을 수행하십시오.

  1. <DOMAIN HOME>/esstools/bin/stop.sh(Linux) 또는 <DOMAIN HOME>\esstools\bin\stop.cmd(Windows)를 사용하여 Essbase 관리 서버를 중지합니다.

  2. <DOMAIN HOME>/bin에서 편집할 파일의 백업 복사본을 만듭니다. 예제

    Linux의 경우

    cp setStartupEnv.sh setStartupEnv_bak.sh

    Windows의 경우

    copy setStartupEnv.cmd setStartupEnv_bak.cmd
  3. 오라클의 문서화 지침만 사용하거나 오라클 고객지원센터와 협력하여 신중하게 편집하십시오.

  4. <DOMAIN HOME>/esstools/bin/start.sh(Linux) 또는 <DOMAIN HOME>\esstools\bin\start.cmd(Windows)를 사용하여 Essbase를 재시작합니다. 시작이 정상적으로 완료되었는지 확인합니다.

드릴스루에 대한 SQL IN 절 제한을 늘리려면 확장된 제한이 외부 데이터베이스에서 지원되는 경우

  1. Essbase 서비스를 중지합니다(서버 중지, 시작 및 확인 참조).
  2. Essbase가 배포된 시스템에서 <Domain Home>/bin로 이동합니다(Essbase 플랫폼의 환경 위치 참조).
  3. 시작 스크립트 setStartupEnv.sh(Linux) 또는 setStartupEnv.bat(Windows)의 백업 복사본을 만듭니다. 다른 이름으로 저장합니다(예: cp setStartupEnv.sh setStartupEnv_orig.sh).
  4. 편집하려면 setStartupEnv.sh 또는 setStartupEnv.bat를 엽니다.
  5. 1000을 초과하는 제한을 늘리려면 구성 라인을 추가합니다.

    Linux 예제(setStartupEnv.sh):

    JAVA_OPTIONS="${JAVA_OPTIONS} -Ddtr.in.clause.limit=15000" export JAVA_OPTIONS

    Windows 예제(setStartupEnv.bat):

    set JAVA_OPTIONS=%JAVA_OPTIONS% "-Ddtr.in.clause.limit=15000"
  6. setStartupEnv.sh 또는 setStartupEnv.bat를 저장합니다.
  7. Essbase 서비스를 시작합니다(서버 정지, 시작 및 확인 참조).