Categories
- All Categories
- 15 Oracle Analytics Sharing Center
- 15 Oracle Analytics Lounge
- 208 Oracle Analytics News
- 41 Oracle Analytics Videos
- 15.7K Oracle Analytics Forums
- 6.1K Oracle Analytics Idea Labs
- Oracle Analytics User Groups
- 76 Oracle Analytics Trainings
- 14 Oracle Analytics Data Visualizations Challenge
- Find Partners
- For Partners
Webservice executeXMLQuery with executeXMLQuery

Hi,
I managed to execute web service executeXMLQuery, but I do not know how to apply a filter expression.
Has anyone managed to execute executeXMLQuery web service with <v7:filterExpressions></v7:filterExpressions>
Can you please provide the syntax with an example?
Thanks,
Ark
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v7="urn://oracle.bi.webservices/v7">
<soapenv:Header/>
<soapenv:Body>
<v7:executeXMLQuery>
<v7:report>
<v7:reportPath>path/name</v7:reportPath>
</v7:report>
<v7:outputFormat>SAWRowsetSchemaAndData</v7:outputFormat>
<v7:executionOptions>
<v7:async>true</v7:async>
<v7:maxRowsPerPage>10</v7:maxRowsPerPage>
<v7:refresh>false</v7:refresh>
<v7:presentationInfo>false</v7:presentationInfo>
<v7:type>1</v7:type>
</v7:executionOptions>
<v7:filterExpressions>??????????</v7:filterExpressions>
<v7:sessionID>xxxxxxxxxxxxxxxxxxxxx</v7:sessionID>
</v7:executeXMLQuery>
</soapenv:Body>
</soapenv:Envelope>
Answers
-
What did you try so far?
I generally used executeSQLQuery as it gave me more options, while the executeXMLQuery is "like" when you run an analysis on screen, so the filters depends on the filters you defined in the analysis itself (as the doc says).
0 -
Hi Gianni,
Thanks for the comment.
If I want to pool data from obiee analysis from an external system, the executeXMLQuery is very convenient,
because I need to apply to the report path/name only and don't need to understand how the analysis was created.
I managed to do that when I do not need to pass parameters.
But, if I need to apply to the same analysis each time with a different filter,
for instance, first time "Table"."Field" = ' a', and the second time "Table"."Field" = 'a' ,
I do not know the syntax of <v7:filterExpressions>??????????</v7:filterExpressions>
Thanks,
Ark
0 -
I was hoping the Java client generated from the WSDL would give me the direct answer, but it doesn't (it even lack a method to set it ).
Then I remembered the doc gives extra hints and not just a structure for this parameter : https://docs.oracle.com/middleware/1221/biee/BIEIT/structures.htm#i1019665
Look at "Table 2-73 How Filter Expressions Are Applied to an Analysis in Oracle BI EE Web Services", there is a method called.
Also have a look at https://oraclebizint.wordpress.com/2007/07/31/customizing-obi-ee-soap-api/ and the comments of July 22, 2008 and the few answers underneath it.
You are executing an Analysis which is just a bunch of XML, the filters also needs to be XML. So you need to get the right syntax using the OBIEE XML structure for it.
That's why I always stay with "executeSQLQuery" as it takes a logical SQL directly without bothering with XML (so a filter in the query is just in the WHERE clause).
0 -
I've managed to do that. Following the syntax:
<v7:filterExpressions>
<![CDATA[<sawx:expr xsi:type="sawx:string" op="equal" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" subjectArea="SA Name">
<sawx:expr xsi:type="sawx:sqlExpression">"Presentation Table"."Filed Name" </sawx:expr>
<sawx:expr xsi:type="sawx:string">abcdefg</sawx:expr></sawx:expr>
]]>
</v7:filterExpressions>
0