2017-04-21 8 views
0

내가 도움이 될만한 것이 있으면 여기를 참조하십시오.OBIEE - 열 수식에서 "IN"및 "NOT IN"사용

대시 보드에 배치 할 때 여러 사이트를 선택할 수있는 변수 대시 보드 프롬프트가 있습니다. 이 변수를 V_SITES라고합니다. 그 목록은 예상대로 작동하는 SQL 문을 사용하여 작성됩니다.

나는 다음을 수식에 입력했습니다.

sum(Case 
When "Folder_Heading"."SITES" IN (@{V_SITES}{'Site1','Site2','Site3'}) 
Then 1 
Else 0 
End) 

이것은 변수를 지정하지 않으면 훌륭하게 작동합니다. 그러나 변수를 할당하자마자 ('Site1', 'Site2', 'Site3') 말하십시오.

다음 메시지와 함께 실패합니다.

Error Codes: OAMP2OPY:OPR4ONWY:U9IM8TAC:U9IM8TAC:U9IM8TAC:U9IM8TAC:OI2DL65P:OI2DL65P 

SQL Issued: SELECT sum(Case When "Folder_Heading"."SITES" IN (Site1,Site2,Site3) Then 1 Else 0 End) FROM "Test_Cube" 

은 내가 그 모든 중요한 따옴표 (사이트 개발, 사이트 2, Site3)이이 문제를 일으키는 경우 ..., 나는이기 위하여 V_SITES 말대로 이런 일이 왜 이해하지 못하는 손실 것으로 나타났습니다 본문.

도와주세요!

많은 감사

P

편집 : 테스트의 부하 후, 나는 문제가 SQL을 문자열을 구축 할 때 오라클은 작은 따옴표로 내 텍스트를 포장하지 않는 것을 꽤 확신한다. .. 그것을 만드는 방법을 알아 내야 만합니다 ...

. 이 경우 다른 사람이 내 해결이에 대한 최대 온다

답변

0

Shakey의 솔루션이 작동하는 동안 동일한 문제가 발생했습니다. 실제 해결책은 수식에 오라클 기술 지원 : 수식 구문을 사용하여 다중 선택 프레젠테이션 변수 (Doc ID 2063624.1))

sum(Case 
When "Folder_Heading"."SITES" IN (@{V_SITES}['@']{'Site1','Site2','Site3'}) 
Then 1 
Else 0 
End) 
+0

답변에 추가 할 수있는 지원 문서로 연결되는 링크가 있습니까? – doublesidedstickytape

+0

링크는 다음과 같습니다. https://support.oracle.com/epmos/faces/DocumentDisplay?id=2063624.1 – Kristof

0

이 오라클 버그 OK 확신 ... ... 그러나 나는 더 나은 해결 방법이있는 경우 수정 또는 해결 될 매우 행복 해요 !

OBIEE가 SQL 문자열을 작성하여 변수를 텍스트로 정규화하지 못하는 문제가있었습니다. 그래서 매개 변수에서 사용할 수있는 값의 목록을 수정하여 텍스트를 직접 수식했습니다.

SELECT DISTINCT CHAR(39) || "TEST_CUBE"."FOLDER_HEADING"."SITES" || CHAR(39) s_1 FROM "TEST_CUBE" ORDER BY 1 ASC 

나는 이제 모든 가치의 시작과 끝에서 성가신 일을합니다.

다른 사람에게 도움이되기를 바랍니다.