cancel
Showing results for 
Search instead for 
Did you mean: 

SAP BW OLAP Universe: Calculated objects

Former Member
0 Kudos

Hi,

We are using BOE XI 3.1 on a SAP BI 7 environment, building an OLAP universe on BEX query for Webi. We are testing creating calculated objects on the universe level referring to the "OLAP universe best practice" and "xi31_sap_olap_universes_en.pdf". Not getting much success, here are some questions:

1) Where to put the XML/MDX code? The "xi31_sap_olap" says to put the code in the WHERE: clause (SELECT: box is blank?), but this does not parse nor does it work.

2) Tried putting this into the SELECT clause:

<EXPRESSION>(@Select (Key Figures\Number of Actions),[0CALYEAR].[2008])</EXPRESSION>

Result = Object does not parse, but universe will return results to Webi. The expected result is "Number of Actions" restricted to CALYEAR = 2008, but results are erroneous scattered into other years.

3) <EXPRESSION>SUM(YTD(@Select (Key Figures\Number of Actions)))</EXPRESSION>

Result = Does not parse, gets MDX error and does not run

4) <EXPRESSION>((@Select (Key Figures\Number of Actions), [0CALYEAR].[2008], [0CALQUART1].[Q1]))</EXPRESSION>

Result = Does not parse, gets MDX error and does not run.

Any information or help would be appreciated, thank you.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Thank Ingo finally works but the problem i have now is when i try to use two calculated measures in one webi report i got the following errors:

BO

Error in MDDataSetBW.GetCellData. No more storage space available for extending an internal table. (WIS 10901)

BW

ST22 Transaction

TSV_TNEW_PAGE_ALLOC_FAILED

MDXTEST

TSV_BTR_PAGE_ALLOC_FAILED (No memory available to enhance the index of an internal table)

Do you know if it's posible to use two calculated measures in the same report or we can use only one.

Regards Marvin

IngoH
Active Contributor
0 Kudos

Hi,

the issue you facing has nothing to do with the calculated measures. It looks to me that you are simply asking for too much data and you running out of memory on the BW side.

ingo

Former Member
0 Kudos

Hi Ingo,

I am facing an issue creating a filtered measure prompting user to select a dimension.

Here is the syntax I am using:

<OPTIONAL><FILTER KEY="[Measures].[4JN8J07HJG1H3PB381H8MVES6]"><CONDITION OPERATORCONDITION="Equal"><CONSTANT CAPTION="@Prompt('Version Key','A','Version\Version Key',mono,constrained)"/></CONDITION></FILTER></OPTIONAL>

I wanted this filter to restrict the measure based on the user selection of prompt 'Version Key'. But, when I select a value for this Prompt the WebI report does not fetch any data.

Any help is greatly appreciated.

Thanks,

Gopi

IngoH
Active Contributor
0 Kudos

Hi,

I would recommend you create this as a restricted keyfigure with an SAP Variable as part of the BEx query directly.

Ingo

Former Member
0 Kudos

Ingo,

Thanks for your suggestion. This might help us!

Regards,

Gopi

Former Member
0 Kudos

Hi Didier

In BW I have a restricted key figure that use

0QUANTITY Infoobject

With these filters

0VERSION = 0

0VTYPE = 20

And it's called Quantity Plan I need to create the Calculated Key Figure in an OLAP Universe in BO as a calculated measure i follow the Syntax in the documents but it's doesn't work.

Please Help Me With That

IngoH
Active Contributor
0 Kudos

Hi Marvin,

could you copy the syntax here which you are using ?

thanks

ingo

Former Member
0 Kudos

Didier

I have the same problem

In the document "OLAP universe best practice" Says that we have to put in the where clause but not specifies if the select box must be empty i try these.

1. Put the <EXPRESSION>(@Select (Class\Measure),filter)</EXPRESSION> in Select Box and get error.

2. Put in the select box the Measure that i want to filter and in the where box <EXPRESSION>(@Select (Class\Measure),filter)</EXPRESSION> and parse ok but when i check in the infoview i get error.

I try everything that says that document and always get errors, please somebody could you tell us what can i put in the Select Box and the Where Box.

Thank you.

Former Member
0 Kudos

Hi Marvin,

When you define a filter only the Where clause is available.

When you define an object both Select and Where clause are available.

For an object the Select clause is mandatory, the Where clause is optional.

So for instance if you want to define a new calculated measure, use the Select clause if you want to filter with this new object you can set the Where clause but that means that this object will be always filtered by the Where clause definition.

The other way is to create a new filter that use the object definition to filter on what you want: in that case you can use the object for any scenario and use filter only when you need it.

Last the syntax you wrote is invalid:

<EXPRESSION>(@Select (Class\Measure),filter)</EXPRESSION>

What do you want to define? What is the purpose of this new object?

Please provide all the information you can and I will try to provide you a correct definition.

Didier

Former Member
0 Kudos

Hi,

If you want define a new calculated measure you have to create a new object and modify its definition like this:

<EXPRESSION> ... measure definition ... </EXPRESSION>

To keep you new objects up to date we recomment to use @Select funtion rather that the MDX definition when possible because the Universe is updated only for generated objects but nor for the objects you created manually.

The @Select is a Universe Designer fucntion and is not MDX, the syntax is:

@Select(Class\Object)

The check integrity tool parses only XML and Universe Designer functions: @Select, @Prompt, @Variable

Concerning your last sample, if the syntax is not correcly parsed it is probably beasue the @Select is not correct and refere an unknow object. Don't forget that the syntax is case sensitive.