UnionSort
Joins Set1 and Set2 and sorts them based on the BaseSet's tuple order.
Syntax
UnionSort(Set1, Set2, BaseSet [, ALL])
BaseSet can be a crossjoin set or a
normal set. The tuple order in this set is used to sort Set1 and Set2's tuples.
Specify the ALL flag
to retain duplicate members. If this flag is not specified, the result does not
contain duplicate members.
Set1 and Set2 must derive from a BaseSet. If one of set's tuples is not found in the base set, an error
occurs.
Example
WITH
SET [BaseSet] as '[Products].members'
SET [Set1] as 'Filter([BaseSet], [Products].CurrentMember.Properties("ATT1_PRODMAN") = "T Heinzel")'
SET [Set2] as 'Filter([BaseSet], [Products].CurrentMember.Properties("ATT1_PRODMAN") = "J Junek")'
SET [UnionSet] as 'UnionSort([Set1], [Set2], [BaseSet])'
SELECT [UnionSet] ON ROWS, [Measures].members ON COLUMNS
FROM totsales
Differences between Union(Set1, Set2, SORT)
Union(Set1, Set2, SORT) requires Set1 and Set2 to
contain the tuple position and the Union function sorts them based on the already defined tuple position.
The tuple position can only be generated in optimized Filter functions. Set1
and Set2 must be optimized Filter results. With UnionSort(Set1, Set2, BaseSet), Set1
and Set2 does not require the tuple position as the
tuple position is determined while searching the tuple in base set.