*QUERY_TYPE 
Allowed uses: By Commit, MDX
You can control the type of MDX queries generated by the rules engine. Set this instruction to 0 (default multiaxis), 1 (row/column/multiple crossjoins in rows), or 2 (one nonempty crossjoin).
While the rules module by default generates a multiaxis query, the format of the MDX query can be controlled by the logic using the instruction:
*QUERY_TYPE=0 | 1 | 2
Where |
Is |
0 |
The default multiaxis type |
1 |
A row/column type, with multiple crossjoins in rows |
2 |
A row/column type, with one nonempty crossjoin in rows |
The query type 1 (row/column crossjoin) can be useful when you want to check the generated query using Microsoft MDX Samples program. This product, in fact, does not support multiaxis queries. A query type 1 can simply be copy/pasted from the debug file into the MDX sample UI and executed.
While the type 2 (nonempty crossjoin) is by far the fastest format, it only gives the desired results in selected cases, and it must be used with care. One example of its use can be found in the Default translation logic in ApShell. This type of query can be also controlled using the instruction *QUERY_FILTER.