XL3SetProperty

From XLCubedWiki

Jump to: navigation, search

This function updates XLCubed objects in the workbook such as grids, slicers and small multiples.

You can use this to update some setting from the properties screen or move hierarchies.

Contents

Syntax

XL3SetProperty( ObjectType, ObjectName, Property, Arg1, [Arg2],…, [Arg27] )

Parameters

Parameter Description
ObjectType Object Type to update. Valid values are "Workbook", "Grid", "Slicer", "SmallMultiple" and "Chart".
ObjectName Name of the object to update. You can not update an object unless you have given it a name in its properties screen.
Property Name of the property to update. Valid names depend on the object type. Details for each are below.
Arg1, [Arg2],…, [Arg27] Value or values to set the property to. Valid values depend on the object type. Details for each are below.

Workbook

For workbook level properties the object name refers to the area of the product being updated.

Object Name Property Description Value
"Writeback" "SpreadMethod" Sets the formula spread method. Valid values are "USE_EQUAL_ALLOCATION", "USE_EQUAL_INCREMENT", "USE_WEIGHTED_ALLOCATION", "USE_WEIGHTED_INCREMENT"

Grid

Grid Display

Property Description Value
"RemoveEmptyColumns" Sets the columns to hide or show members with no data. TRUE or FALSE
"RemoveEmptyRows" Sets the rows to hide or show members with no data. TRUE or FALSE
"HierarchiesOnHeaders" Sets hierarchies on headers. Will move hierarchies as required. Hierarchy name or names.
"HierarchiesOnColumns" Sets hierarchies on columns. Will move hierarchies as required. Hierarchy name or names.
"HierarchiesOnRows" Sets hierarchies on rows. Works as HierarchiesOnColumns. Hierarchy name or names.
"MergeRepeatingCells" Merge cells containing the same member in cross-joins. TRUE or FALSE
"MemberSelectionType" Sets the selection type of the members, e.g. children, parent, descendants etc. See the Member Selection Type section for more details.

Grid Permissions

See Grid Permissions for details of what the following options do.

Property Value
"ColumnMembers" TRUE or FALSE
"ColumnNavigation" TRUE or FALSE
"RowMembers" TRUE or FALSE
"RowNavigation" TRUE or FALSE
"DimensionNavigation" TRUE or FALSE
"Menus" TRUE or FALSE
"SlicerMembers" TRUE or FALSE

Slicer

Property Description Value
"RemoveEmpty" Sets the slicer to hide or show members with no data. TRUE or FALSE
"Visible" Show or hide the slicer (will only be applied for published reports). TRUE or FALSE
"MultiSelect" Allow multi selection on the slicer, dependant on slicer type. TRUE or FALSE
"MemberSelectionType" Sets the selection type of the members, e.g. children, parent, descendants etc. See the Member Selection Type section for more details.

SmallMultiple

Property Description Value
"RemoveEmptyCategories" Sets the categories to hide or show members with no data. TRUE or FALSE
"RemoveEmptySeries" Sets the series to hide or show members with no data. TRUE or FALSE
"RemoveEmptyColumns" Sets the columns to hide or show members with no data. TRUE or FALSE
"RemoveEmptyRows" Sets the rows to hide or show members with no data. TRUE or FALSE
"HierarchiesOnCategories" Sets hierarchies on categories. Will move hierarchies as required. Hierarchy name or names.
"HierarchiesOnSeries" Sets hierarchies on series. Works as HierarchiesOnCategories. Hierarchy name or names.
"HierarchiesOnColumns" Sets hierarchies on columns. Works as HierarchiesOnCategories. Hierarchy name or names.
"HierarchiesOnRows" Sets hierarchies on rows. Works as HierarchiesOnCategories. Hierarchy name or names.
"MemberSelectionType" Sets the selection type of the members, e.g. children, parent, descendants etc. See the Member Selection Type section for more details.
"ChartType" Sets chart type of the series. Valid values are "Column", "StackedColumn", "StackedColumn100", "Bar", "StackedBar", "StackedBar100", "Area", "StackedArea", "StackedArea100", "Line".
"ChartType2" Sets chart type of the series once moved to the secondary axis. Same as ChartType.

Chart

Property Description Value
"YMin" or "YMax" Sets the limits of the Y Axis. Numeric
"Y2Min" or "Y2Max" Sets the limits of the Y2 Axis. Numeric
"XMin" or "XMax" Sets the limits of the X Axis. Numeric
"X2Min" or "X2Max" Sets the limits of the X2 Axis. Numeric

Member Selection Type

Arguments

When setting the member selection type you must pass two or three additional arguments.

Argument Description
Hierarchy name The hierarchy that will be updated.
Selection type The type of selection to be applied.
Index (Optional) Which member to apply the selection to. If not passed then the selection will be applied to all members.

Selection Types

Value Description
"Member" Only the member itself is returned.
"Children" Children of the member are returned.
"Ancestors" All ancestors of the member are returned.
"Descendants" All descendants of the member are returned.
"FirstChild" First child of the member is returned.
"FirstSibling" First sibling of the member is returned.
"LastChild" Last child of the member is returned.
"LastSibling" Last sibling of the member is returned.
"LowestDescendants" Descendants of the member from the lowest level are returned.
"Parent" Parent of the member is returned.
"SameLevel" All members at the level of the member are returned.
"Siblings" All siblings of the member are returned.
"Next:X" The member and the next "X" members at the level are returned. X must be a number.
"Prev:X" The member and the previous "X" members at the level are returned. X must be a number.
"DescendantsAt:X" Descendants of the member from the level "X" are returned. X must be a number, or level name.

Example

This example uses a local cube, which holds a measure ‘Value’ against Products and Regions across time. We require a report that allows the user to dynamically select which hierarchies appear on rows and then the level of detail that appears – ie at member, children or descendants of that hierarchy.

We want the user to be able to run the report with either Product or Region on rows; slicer choices must change accordingly so that if the report is being run with Regions on rows the slicer choices must only be based on Region; similarly when running with Product on rows, the slicer must only offer choices of Product.

Set1.png
Set2.png
Set3.png
Set4.png
Set5.png
Set6.png

You must name the object type – in our example our grid is called GridToSet – this has been updated using the Properties screen.

In cell L21:

 =XL3SetProperty("Grid","GridToSet","MemberSelectionType","[Region]",IF(N17="Region", $L$30, "Member"))

This is passing Region as an argument when the user has selected this option from the first slicer.

In cell M21:

 =XL3SetProperty("Grid","GridToSet","MemberSelectionType","[Product]",IF(N17="Product", $L$30, "Member"))
 This is passing Product as an argument when the user has selected this option from the first slicer.
 =XL3SetProperty("Grid","GridToSet","HierarchiesonRows",$L$31)
 =XL3SetProperty("Grid","GridToSet","HierarchiesOnHeaders",$L$32,$L$33)
 
 =VLOOKUP(N17,K18:L19,2,FALSE)
 =IF(MID(L31,1,3)="[Pr",L18,L19)

See Also

Personal tools
Namespaces
Variants
Actions
Follow XLCubed on Twitter XLCubed on LinkedIn Download

Navigation
Toolbox