cancel
Showing results for 
Search instead for 
Did you mean: 

RESTful API - Issue with Adding a Universe Data Provider to Webi

Former Member
0 Kudos

I thought to create a new discussion for this, as I didn't find specific material online.


I was trying to create a new webi report with a data provider based on a universe.


So, I create a document, then added a data provider and try to put on specification with :


URL : biprws/raylight/v1/documents/9486/dataproviders/DP1/specification


And getting error :


<error>

<error_code>

WSR 00102

</error_code>

<message>

Illegal argument ("while trying to invoke the method com.sap.sl.queryspec.QuerySpec.getQueries() of a null object loaded from local variable 'querySpec'")

</message>

</error>


Payload :

<queryspec:QuerySpec dataProviderId="DP1">

<queryParameters>

<duplicatedRowsProperty activated="true" value="true" />

<maxRetrievalTimeInSecondsProperty value="300" />

<maxRowsRetrievedProperty value="90000" />

<removeEmptyRowsProperty activated="true" value="true" />

<allowOtherUserToEditQueryProperty activated="true" value="true" />

<resetContextOnRefreshProperty activated="true" value="true" />

<stripQueryProperty />

<useBexQueryDefaultValue activated="true" value="true" />

</queryParameters>

<queriesTree xsi:type="queryspec:QueryOperatorNode" queryOperator="Union">

<children xsi:type="queryspec:QueryDataNode">

<bOQuery name="Query" identifier="_Y_xTkEqsEea-vo0a6XgtoA">

<resultObjects identifier="DS0.DObc" name="Year" />

<resultObjects identifier="DS0.DOb9" name="Month" />

<conditionPart />

</bOQuery>

</children>

</queriesTree>

<propertyBag key="DUPLICATED_ROWS_UNDEFINED_VALUE" value="-1" />

<propertyBag key="RESET_CONTEXT_ON_REFRESH_UNDEFINED_VALUE" value="-1" />

<propertyBag key="ALLOW_THE_USER_TO_EDIT_QUERY_UNDEFINED_VALUE" value="-1" />

</queryspec:QuerySpec>

I am badly stuck there. and not able to identify how to generate

<bOQuery name="Query" identifier="_Y_xTkEqsEea-vo0a6XgtoA">

I am successfully able to create report manually on the same universe. But using restful I am not able to understand how A data provider is mapped with a query specification (as it doesn't contain any SQL). Does it create an inbuild SQL ?

I copied the above payload by doing a get from an manually created webi report/data provider. I understand - <bOQuery name="Query" identifier="_Y_xTkEqsEea-vo0a6XgtoA"> should be a system generated. But when I remove it. it gives me the same error as well.

The Data provider I created is as followed :

<dataprovider>

<id>DP1</id>

<name>Query 2</name>

<dataSourceId>5291</dataSourceId>

<dataSourcePrefix>DS0</dataSourcePrefix>

<dataSourceType>unv</dataSourceType>

<duration>0</duration>

<isPartial>false</isPartial>

<rowCount>0</rowCount>

</dataprovider>

Please suggest.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Able to resolved this issue.

former_member197386
Active Contributor
0 Kudos

Hello Vishal,

Is it fine now?

(Could you close this topic so? )

Regards,

Anthony

Former Member
0 Kudos

I am also facing the same issue.What was the fix.?

Former Member
0 Kudos

Hi Nirmal,

All I did is build everything from fresh and added CUIDs instead of aliases while building the query.

<bOQuery name="Query" identifier="_Y_xTkEqsEea-vo0a6XgtoA">

<resultObjects identifier="<CUID>" name="Year" />

<resultObjects identifier="<CUIT>" name="Month" />

<conditionPart />

When u extract an automatic query, it build aliases So either you map those or build the query with CUIDs directly.

I hope this helps.

Thanks,

Vishal

Answers (0)