Skip to content

Commit ae551b8

Browse files
Merge pull request #380 from MicrosoftDocs/main639034849380067561sync_temp
For protected branch, push strategy should use PR and merge to target branch method to work around git push error
2 parents b1008fa + 8211397 commit ae551b8

71 files changed

Lines changed: 5749 additions & 27 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
author: jeroenterheerdt
3+
ms.author: Jeroen ter Heerdt
4+
ms.date: 03/17/2025
5+
ms.topic: include
6+
ms.service: powerbi
7+
ms.subservice: dax
8+
---
9+
### ObjectState
10+
11+
|Value|Name|Description|
12+
|---|---|---|
13+
|1|Ready|Object is refreshed, contains up-to-date data, and is queryable.|
14+
|3|NoData|Object is queryable but contains no data. Refresh it to bring in data. Applies to non-calculated objects, such as DataColumns, partitions, and Tables.|
15+
|4|CalculationNeeded|Object is not queryable and contains no data. It needs to be refreshed to become functional. Applies only to calculated objects, such as calculated columns, hierarchies, and calculated tables.|
16+
|5|SemanticError|Object is in an error state because of an invalid expression. It is not queryable.|
17+
|6|EvaluationError|Object is in an error state because an error occurred during expression evaluation. It is not queryable.|
18+
|7|DependencyError|Object is in an error state because some of its calculation dependencies are in an error state. It is not queryable.|
19+
|8|Incomplete|Some parts of the object have no data. Refresh the object to add the rest of the data. The object is queryable. Applies to non-calculated objects, such as DataColumns, partitions, and tables.|
20+
|10|ForceCalculationNeeded|The data is possibly outdated, but is in a queryable state. Applies only for CalculatedTable.|
21+
22+
This table is based on the [official documentation](/dotnet/api/microsoft.analysisservices.tabular.objectstate).
23+
24+
To join with INFO functions use this DAX query.
25+
26+
```dax
27+
EVALUATE
28+
DATATABLE(
29+
"State",INTEGER,
30+
"StateName",STRING,
31+
{
32+
{1,"Ready"},
33+
{3,"NoData"},
34+
{4,"CalculationNeeded"},
35+
{5,"SemanticError"},
36+
{6,"EvaluationError"},
37+
{7,"DependencyError"},
38+
{8,"Incomplete"},
39+
{10,"ForceCalculationNeeded"}
40+
}
41+
)
42+
```
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
description: "Learn more about: INFO.ALTERNATEOFDEFINITIONS"
3+
title: "INFO.ALTERNATEOFDEFINITIONS function (DAX)"
4+
author: jeroenterheerdt
5+
---
6+
# INFO.ALTERNATEOFDEFINITIONS
7+
8+
[!INCLUDE[applies-to-query-only](includes/applies-to-query-only.md)]
9+
10+
Returns a table with information about each alternate of definition in the semantic model. This function provides metadata about alternate definitions for model objects.
11+
12+
## Syntax
13+
14+
```dax
15+
INFO.ALTERNATEOFDEFINITIONS ( [<Restriction name>, <Restriction value>], ... )
16+
```
17+
18+
[!INCLUDE[parameters-for-info-dax-functions](includes/parameters-for-info-dax-functions.md)]
19+
20+
## Return value
21+
22+
A table whose columns match the schema rowset for alternate of definitions in the current semantic model.
23+
24+
| Column | Description |
25+
|---|---|
26+
| [ID] | Unique identifier for the alternate of definition object. |
27+
| [ColumnID] | Reference to the column object that has an alternate definition. |
28+
| [BaseColumnID] | Reference to the base column that this alternate definition is derived from. |
29+
| [BaseTableID] | Reference to the base table containing the base column. |
30+
| [Summarization] | The summarization method applied to the alternate definition (e.g., Sum, Count, Average). |
31+
32+
## Remarks
33+
34+
* Can only be ran by users with write permission on the semantic model and not when live connected to the semantic model in Power BI Desktop.
35+
* This function can be used in [DAX queries](/dax/dax-queries), and can't be used in calculations.
36+
37+
## Example 1 - DAX query
38+
39+
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view):
40+
41+
```dax
42+
EVALUATE
43+
INFO.ALTERNATEOFDEFINITIONS()
44+
```
45+
46+
## Example 2 - DAX query with joins
47+
48+
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view):
49+
50+
```dax
51+
EVALUATE
52+
VAR _AlternateOfDefinitions =
53+
INFO.ALTERNATEOFDEFINITIONS()
54+
55+
VAR _Columns =
56+
SELECTCOLUMNS(
57+
INFO.COLUMNS(),
58+
"ColumnID", [ID],
59+
"Column Name", [ExplicitName],
60+
"TableID", [TableID]
61+
)
62+
63+
VAR _BaseColumns =
64+
SELECTCOLUMNS(
65+
INFO.COLUMNS(),
66+
"BaseColumnID", [ID],
67+
"Base Column Name", [ExplicitName]
68+
)
69+
70+
VAR _BaseTables =
71+
SELECTCOLUMNS(
72+
INFO.TABLES(),
73+
"BaseTableID", [ID],
74+
"Base Table Name", [Name]
75+
)
76+
77+
VAR _CombinedWithColumns =
78+
NATURALLEFTOUTERJOIN(
79+
_AlternateOfDefinitions,
80+
_Columns
81+
)
82+
83+
VAR _CombinedWithBaseColumns =
84+
NATURALLEFTOUTERJOIN(
85+
_CombinedWithColumns,
86+
_BaseColumns
87+
)
88+
89+
VAR _CombinedWithBaseTables =
90+
NATURALLEFTOUTERJOIN(
91+
_CombinedWithBaseColumns,
92+
_BaseTables
93+
)
94+
95+
RETURN
96+
SELECTCOLUMNS(
97+
_CombinedWithBaseTables,
98+
"Column Name", [Column Name],
99+
"Base Table Name", [Base Table Name],
100+
"Base Column Name", [Base Column Name],
101+
"Summarization", [Summarization]
102+
)
103+
ORDER BY [Column Name]
104+
```
105+
## See also
106+
107+
[INFO.TABLES](info-tables-function-dax.md)
108+
[INFO.COLUMNS](info-columns-function-dax.md)
109+
[INFO.MEASURES](info-measures-function-dax.md)
110+
[INFO functions overview](info-functions-dax.md)

query-languages/dax/info-annotations-function-dax.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Returns a table with information about each annotation in the semantic model. Th
1212
## Syntax
1313

1414
```dax
15-
INFO.ANNOTATIONS([<Restriction name>, <Restriction value>], ...)
15+
INFO.ANNOTATIONS ( [<Restriction name>, <Restriction value>], ... )
1616
```
1717

1818
[!INCLUDE[parameters-for-info-dax-functions](includes/parameters-for-info-dax-functions.md)]
@@ -157,3 +157,9 @@ This DAX query returns a table with only the specified columns and joining to ot
157157
[!INCLUDE[enum-title-for-info-dax-functions](includes/enum-title-for-info-dax-functions.md)]
158158

159159
[!INCLUDE[enum-objecttype](includes/enum-objecttype.md)]
160+
## See also
161+
162+
[INFO.TABLES](info-tables-function-dax.md)
163+
[INFO.COLUMNS](info-columns-function-dax.md)
164+
[INFO.MEASURES](info-measures-function-dax.md)
165+
[INFO functions overview](info-functions-dax.md)
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
description: "Learn more about: INFO.ATTRIBUTEHIERARCHIES"
3+
title: "INFO.ATTRIBUTEHIERARCHIES function (DAX)"
4+
author: jeroenterheerdt
5+
---
6+
# INFO.ATTRIBUTEHIERARCHIES
7+
8+
[!INCLUDE[applies-to-query-only](includes/applies-to-query-only.md)]
9+
10+
Returns a table with information about each attribute hierarchy in the semantic model. This function provides metadata about the attribute hierarchies defined in the model.
11+
12+
13+
14+
## Syntax
15+
16+
```dax
17+
INFO.ATTRIBUTEHIERARCHIES ( [<Restriction name>, <Restriction value>], ... )
18+
```
19+
20+
[!INCLUDE[parameters-for-info-dax-functions](includes/parameters-for-info-dax-functions.md)]
21+
22+
## Return value
23+
24+
A table whose columns match the schema rowset for attribute hierarchies in the current semantic model:
25+
26+
| Column | Description |
27+
|---|---|
28+
| [ID] | A reference to the object. IDs are usually autogenerated and should not be changed after the model is created. Data type is unsigned long (4 bytes). |
29+
| [ColumnID] | An ID-based reference to a Column object. |
30+
| [State] | A value that provides information about the state of the AttributeHierarchy object. The possible values and their interpretation are as follows: **Ready (1)** – The Attribute Hierarchy is queryable and has up-to-date data. **CalculationNeeded (4)** – The Attribute Hierarchy does not contain any data because it was not refreshed. There is no error associated with the attribute hierarchy. **DependencyError (7)** – The column that is associated with this Attribute Hierarchy is in an error state (SemanticError, EvaluationError, or DependencyError).|
31+
| [AttributeHierarchyStorageID] |An ID-based reference to an AttributeHierarchyStorage object, which can be enumerated with [INFO.ATTRIBUTEHIERARCHYSTORAGES](info-attributehierarchystorages-function-dax.md) |
32+
| [ModifiedTime] | The time that the object was last modified. |
33+
| [RefreshedTime] | The time that the object was last refreshed.
34+
35+
## Remarks
36+
37+
- Typically used in DAX queries to inspect and document model metadata.
38+
- Permissions required depend on the host. Querying full metadata may require model admin permissions.
39+
40+
## Example DAX query
41+
42+
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view):
43+
44+
```dax
45+
EVALUATE
46+
INFO.ATTRIBUTEHIERARCHIES()
47+
```
48+
49+
This DAX query returns a table with all of the columns of this DAX function.
50+
## See also
51+
52+
[INFO.HIERARCHIES](info-hierarchies-function-dax.md)
53+
[INFO.HIERARCHYSTORAGES](info-hierarchystorages-function-dax.md)
54+
[INFO.ATTRIBUTEHIERARCHYSTORAGES](info-attributehierarchystorages-function-dax.md)
55+
[INFO.LEVELS](info-levels-function-dax.md)
56+
[INFO.TABLES](info-tables-function-dax.md)
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
description: "Learn more about: INFO.ATTRIBUTEHIERARCHYSTORAGES"
3+
title: "INFO.ATTRIBUTEHIERARCHYSTORAGES function (DAX)"
4+
author: jeroenterheerdt
5+
---
6+
# INFO.ATTRIBUTEHIERARCHYSTORAGES
7+
8+
9+
[!INCLUDE[applies-to-query-only](includes/applies-to-query-only.md)]
10+
11+
Returns a table with information about each attribute hierarchy storage in the semantic model. This function provides metadata about the storage characteristics of attribute hierarchies.
12+
13+
## Syntax
14+
15+
```dax
16+
INFO.ATTRIBUTEHIERARCHYSTORAGES ( [<Restriction name>, <Restriction value>], ... )
17+
```
18+
19+
[!INCLUDE[parameters-for-info-dax-functions](includes/parameters-for-info-dax-functions.md)]
20+
21+
## Return value
22+
23+
A table whose columns match the schema rowset for attribute hierarchy storages in the current semantic model:
24+
25+
| Column | Description |
26+
|---|---|
27+
| [ID] | A reference to the object. IDs are usually autogenerated and should not be changed after the model is created. Data type is unsigned long (4 bytes). |
28+
| [AttributeHierarchyID] | An ID-based reference to a AttributeHierarchy object. |
29+
| [SortOrder] | The sort order used for the attribute hierarchy storage. |
30+
| [OptimizationLevel] | The optimization level applied to the attribute hierarchy storage. |
31+
| [MaterializationType] | The type of materialization used for the attribute hierarchy. |
32+
| [ColumnPositionToData] | Mapping information from column position to data values. |
33+
| [ColumnDataToPosition] | Mapping information from data values to column position. |
34+
| [DistinctDataCount] | The number of distinct data values in the attribute hierarchy. |
35+
| [DataVersion] | The version of the data in the attribute hierarchy storage. |
36+
| [StorageFileID] | Reference to the storage file containing the attribute hierarchy data. |
37+
| [SystemTableID] | Reference to the system table associated with the attribute hierarchy. |
38+
| [HasStatistics] | Boolean indicating whether statistics are available for the attribute hierarchy. |
39+
| [MinValue] | The minimum value in the attribute hierarchy. |
40+
| [MaxValue] | The maximum value in the attribute hierarchy. |
41+
| [StringValueMaxLength] | The maximum length of string values in the attribute hierarchy. |
42+
43+
## Remarks
44+
45+
- Typically used in DAX queries to inspect and document model metadata.
46+
- Permissions required depend on the host. Querying full metadata may require model admin permissions.
47+
48+
## Example 1 - DAX query
49+
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view):
50+
51+
```dax
52+
EVALUATE
53+
INFO.ATTRIBUTEHIERARCHYSTORAGES()
54+
```
55+
## See also
56+
57+
[INFO.HIERARCHIES](info-hierarchies-function-dax.md)
58+
[INFO.ATTRIBUTEHIERARCHIES](info-attributehierarchies-function-dax.md)
59+
[INFO.HIERARCHYSTORAGES](info-hierarchystorages-function-dax.md)
60+
[INFO.LEVELS](info-levels-function-dax.md)
61+
[INFO.TABLES](info-tables-function-dax.md)

query-languages/dax/info-calcdependency-function-dax.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ Returns a table with information about each calculation dependency in the semant
1212
## Syntax
1313

1414
```dax
15-
INFO.CALCDEPENDENCY([<Restriction name>, <Restriction value>], ...)
15+
INFO.CALCDEPENDENCY ( [<Restriction name>, <Restriction value>], ... )
1616
```
1717

1818
[!INCLUDE[parameters-for-info-dax-functions](includes/parameters-for-info-dax-functions.md)]
@@ -53,16 +53,14 @@ This DAX query returns a table with all of the columns of this DAX function.
5353

5454
## Example 2 - DAX query with restriction
5555

56-
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view):
56+
The following DAX query can be run in [DAX query view](/power-bi/transform-model/dax-query-view) and limits the results to the Total Sales measure:
5757

5858
```dax
5959
EVALUATE
60-
INFO.CALCDEPENDENCY("Query", "EVALUATE { [Orders] }")
60+
INFO.CALCDEPENDENCY("Query", "EVALUATE { [Total Sales] }")
6161
```
6262

63-
This DAX query returns a table showing the objects in the semantic model needed to run this specified DAX query. The restriction name of "query" is used with the value of a DAX query. This DAX query is getting the output of the measure named Orders.
64-
65-
If a query has double-quotes they can be escaped with another double-quote and you can optionally use a VAR to hold the value.
63+
If a restriction has double-quotes they can be escaped with another double-quote and you can optionally use a VAR to hold the value.
6664

6765
```dax
6866
EVALUATE
@@ -78,3 +76,10 @@ EVALUATE
7876
_query
7977
)
8078
```
79+
## See also
80+
81+
[INFO.DEPENDENCIES](info-dependencies-function-dax.md)
82+
[INFO.RELATEDCOLUMNDETAILS](info-relatedcolumndetails-function-dax.md)
83+
[INFO.TABLES](info-tables-function-dax.md)
84+
[INFO.COLUMNS](info-columns-function-dax.md)
85+
[INFO.MEASURES](info-measures-function-dax.md)

0 commit comments

Comments
 (0)