我无法使用Direct Database Request(DDR)作为过滤器查询。 要求是使用执行REGEXP功能的基于DDR的查询来过滤基于主要主题区域的查询中的邮政编码,如下所述。
有没有办法在我的过滤器查询中定义或设置演示文稿或请求变量的值?
我可以尝试其他哪些方法? 由于我的NQSConfig.INI文件不支持REGEXP功能在OBIEE分析中通过EVALUATE()无法向RPD发送功能。 而且,这是一个Oracle Sales Cloud实例,因此我无权修改我的NQSConfig.INI文件。
到目前为止我尝试过的事情:
我使用我的RPD中定义的连接池在OBIEE中创建了一个DDR。
此查询检索所有非数字的邮政编码:
SELECT
hz_parties.party_id,
hz_parties.postal_code
FROM
HZ_PARTIES
where
REGEXP_INSTR(Substr(HZ_PARTIES.POSTAL_CODE,0,2), '[0-9]{2}') = 0
这很有效。
但我有一个基于OBIEE主题区域的分析需要使用运算符is based on results of another analysis
的过滤器,使用DDR并匹配其party_id
列。
这是我主要OBIEE分析的生成错误和SQL:
Error Details
Error Codes: YQCO4T56:OPR4ONWY:U9IM8TAC:OI2DL65P
Location: saw.views.evc.activate, saw.httpserver.processrequest, saw.rpc.server.responder, saw.rpc.server, saw.rpc.server.handleConnection, saw.rpc.server.dispatch, saw.threadpool.socketrpcserver, saw.threads
Odbc driver returned an error (SQLExecDirectW).
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 27047] Nonexistent table: "EXECUTE". (HY000)
SQL Issued: {call NQSGetLevelDrillability('SELECT "Contact"."Contact Row ID" saw_0 FROM "Sales - CRM Customers and Contacts Real Time" WHERE "Contact"."Contact Row ID" IN (SELECT saw_0 FROM (EXECUTE PHYSICAL CONNECTION POOL "CRM_OLTP"."Connection Pool" SELECT hz_parties.party_id, hz_parties.postal_code FROM HZ_PARTIES where REGEXP_INSTR(Substr(HZ_PARTIES.POSTAL_CODE,0,2), ''[0-9]{2}'') = 0 ) nqw_1 )')}
答案 0 :(得分:1)
看到你在云产品中我会说这听起来像你应该打开SR:)