Skip to main content

Class AstCubeMeasureGroupNode

A measure group associates dimensions with measures and groups measures to optimize processing. This collection is used to define a cube measure group, which references a fact table. Each fact table might be referenced by multiple cube measure groups in cases where a single fact table might be used in multiple ways. For example, a fact table that tracks customer activity might be used both in a sales and an account measure group for a sales-tracking cube.

Namespace: Varigence.Languages.Biml.MeasureGroup

Assembly: Biml.dll

C#


public class AstCubeMeasureGroupNode : AstSecurableNode, IBindableItem, IGetJsonProvider, INamedNode, IScopeBoundary, IReferenceableItem, IFrameworkItem, IValidationInfo, INamedItem

Inheritance AstNode

  • Implements

    Varigence.Utility.Collections.IVulcanCollectionParent, Varigence.Utility.ComponentModel.IVulcanNotifyPropertyChanged, Varigence.Utility.ComponentModel.IPropertyChangeNotificationTarget, System.ComponentModel.INotifyPropertyChanged, Varigence.Utility.Xml.IXObjectMappingProvider, System.ComponentModel.IDataErrorInfo, Varigence.Utility.Collections.IScopedNameIndexable,

Constructors

ConstructorsDescription
AstCubeMeasureGroupNode(IFrameworkItem)Initializes a new instance of the AstCubeMeasureGroupNode class with the specified parent node.

Fields

FieldsDescription
ScopedNamePrefixBackingStore
IsScopeImported

Properties

PropertiesDescription
AggregationDesignsThis is a container for aggregation designs associated with the measure group.
AggregationPrefixThis value provides a common prefix for aggregation names used throughout the associated measure group.
AggregationPrefixDefaultValueGets the default value for the AggregationPrefix property
CubeDimensionBindingsThis is a container for cube dimension bindings associated with the measure group.
DataAggregationThis value specifies whether persisted data, cached data, or both will be aggregated for the measure group.
DataAggregationDefaultValueGets the default value for the DataAggregation property
ErrorConfigurationThis value specifies the error configuration properties associated with the measure group. Error configuration includes error logging; null, duplicate, and unknown key handling; error actions; and other settings.
EstimatedCountThis value indicates the estimated number of items in the measure group. The default setting is zero. This value is used to assist in aggregation design choices and other internal operations. While EstimatedCount can be set manually to reflect estimated member counts, BimlStudio also provides an automatic Member Count Estimator in the Cube ribbon.
EstimatedCountDefaultValueGets the default value for the EstimatedCount property
FactThis value specifies a direct reference to the fact table that contains the rows that will comprise this measure group.
FriendlyTypeNameStaticGets the friendly name of the type of this node
IgnoreUnrelatedDimensionsThis value specifies when indexing and aggregating occur. The options are Regular, which means that indexing and aggregating occur during processing, or Lazy, which means that indexing and aggregation occur after processing is completed.
IgnoreUnrelatedDimensionsDefaultValueGets the default value for the IgnoreUnrelatedDimensions property
MeasureGroupTypeThis value specifies the measure group’s type.
MeasureGroupTypeDefaultValueGets the default value for the MeasureGroupType property
MeasuresThis is a container for the measures that are associated with the measure group. Measures are defined in the underlying fact table and can be overridden in this collection with additional metadata values.
PartitionsThis is a container for partitions associated with measure group.
ProactiveCachingThis value defines how proactive caching is performed for the measure group. Proactive caching enables a measure group to use a MOLAP-style multidimensional store for data but to update that store automatically to stay up-to-date with changes to the underlying relational store. This provides a compromise between MOLAP and ROLAP cube storage models.
ProcessingModeThis value specifies when indexing and aggregating occur. The options are Regular, which means that indexing and aggregating occur during processing, or Lazy, which means that indexing and aggregation occur after processing is completed.
ProcessingModeDefaultValueGets the default value for the ProcessingMode property
ProcessingPriorityThis value specifies when indexing and aggregating occur. The options are Regular, which means that indexing and aggregating occur during processing, or Lazy, which means that indexing and aggregation occur after processing is completed.
ProcessingPriorityDefaultValueGets the default value for the ProcessingPriority property
StorageLocationThis value specifies the full path where the measure group’s files are located. If this value is not specified, then the storage location comes from the cube that contains the measure group.
StorageLocationDefaultValueGets the default value for the StorageLocation property
StorageModeThis value specifies which storage mode the measure group will use.
StorageModeDefaultValueGets the default value for the StorageMode property
TranslationsThis value contains alternate language versions of measure groups, measures, cube dimension, perspectives, KPIs, actions, named sets, and calculated members associated with a dimension. These are used by client applications such as Microsoft Excel to show values for dimension metadata that are consistent with the language of the end-user.
ScopedNameGets the scoped name which can be used to uniquely identify this object among other objects of its type
SymbolTableGets a reference to the symbol table that stores a reference to this and all other named objects in the project
SsisSafeScopedNameReturns a version of the ScopedName that has been cleaned of invalid characters for SSIS.
SsisSafeNameReturns a version of the Name that has been cleaned of invalid characters for SSIS.
NameSpecifies the name of the object. This name can be used to reference this object from anywhere else in the program.
ReferencesGets collection of FrameworkItemReference objects, which track rich information about the properties that hold references to this node.
NameDefaultValueGets the default value for the Name property
Guid
AnnotationsThis is a collection of annotation items that can be used to specify documentation, tags, or other information. Annotations are particularly useful for storing information about nodes that can be used by BimlScript code.
ObjectTagThis property provides a general purpose storage mechanism for .NET objects to be associated with AstNode objects. It supplements the annotation system, which is intended for use with string-based metadata.
BimlFileThis value specifies the BimlFile in which the Biml code that defines AstNode resides.
ItemLabelGets a label that can be used to identify this node
ParentItemThis value specifies the parent of the current node. All nodes must have a valid parent in the Biml framework, except for the root node.

Methods

MethodsDescription
BindingScopeBoundaries()Retrieves the permitted scope boundaries to bind references from this node.
DefinedAstNodes()Retrieves a collection of nodes that have been defined as direct children of the current node.
Duplicate()Creates a duplicate of the current node
Duplicate(IFrameworkItem)Creates a duplicate of the current node with the specified parent item
GetAllItemsReferencedByDefinedSuccessors()Builds a list of all items referenced by this node and its successors.
Each tuple in the returned list represents a FrameworkItemReference.
The first item is the ReferencingItem, the second item is the property name, and the third item is the ReferencedItem.
GetDefaultValue(String)Retrieves the default value for the property with the name propertyName
GetDefaultValue<T>(String)Retrieves the default value for the property with the name propertyName
GetSchemaLocalName()Retrieves the local XML element name that corresponds to this node in Biml code.
StructureEquals(Object)Compares this node to the provided object to determine if all defined children and references are equal.
ToString()Returns a string that represents the current object. In this case, it is the Name of the node.
OnScopedNameChanged(String, String)
OnItemLabelChanged(String, String)
OnNameChanging(String, String)
OnNameChanged(String, String)
AddScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Adds the scoped name changed event handler to the specified referenceable item.
RemoveScopedNameChangedEventListener(IReferenceableItem, EventHandler<VulcanPropertyChangedEventArgs>)Removes the scoped name changed event handler from the specified referenceable item.
FirstChildOfType<TChild>()Gets the first defined descendant node of the specified type
RemoveFromParent()Removes this node definition from its parent
GetJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetExternalJson()Generates a JavaScript Object Notation (JSON) representation of the current node
GetJson(Boolean, Boolean, Boolean, Boolean, Boolean)Generates a JavaScript Object Notation (JSON) representation of the current node
GetXObjectName()Gets the fully qualified XML element name for this node in the code document.
FirstParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type
FirstParent<TAstNode>(Type)Retrieves the first parent or ancestor node of the specified type with the specified custom attribute type
FirstThisOrParent<TAstNode>()Retrieves the first parent or ancestor node of the specified type, including this node
IsDirectAncestor(IFrameworkItem)Retrieves a value indicating whether the specified node is a direct ancestor of this node.
AncestorDistance(IFrameworkItem)Retrieves the number of steps between this node and the nearest shared ancestor with the specified relative node.
FirstThisOrParent<TAstNode>(Type)Retrieves the first parent or ancestor node (including this node) of the specified type with the specified custom attribute type
AllDefinedSuccessors()Retrieves the collection of all nodes defined as a child of this or any successor node or the current node
AllDefinedSuccessors(Boolean)Retrieves the collection of all nodes defined as a child of this or any successor node or optionally the current node
OnNotificationTargetPropertyChanged(String)
OnScopeBoundaryChanged(IScopeBoundary, IScopeBoundary)
AddParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParseableChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
RemoveScopeBoundaryChangedEventListener(IFrameworkItem, EventHandler<VulcanPropertyChangedEventArgs>)
AddParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveParsePendingChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
AddFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
RemoveFromTemplateChangedEventListener(IFlowFileChanged, EventHandler<EventArgs>)
ParseSelf(XElement, ParserContext)
ParseNameValueMapping(XElement)