This content has been marked as final. Show 3 replies
A UDA is a user defined attribute, its basically a tag you can assign to a member that you can then reference in calcs, security, and reporting to recall those members that have been tagged. UDA's are fairly flexible as you can assign them across different hierarchy levels.
Attribute dimensions are more rigid, but provide more reporting functionality. Attributes have to be consistent with the level they are applied to in the dim, in other words you can't have the same attribute for a member at level 0 and another member at level 1. Attributes are part of a physical dimension that users can render in a report as a replacement or augmentation to the base dimension they are associated with. One powerful use is for cross tab reporting. Attribute dims are dynamically calculated and provide summary level and/or subtotals for the attribute members.
So Attributes are more powerful than UDA's, but they take more work to set up and have more rigid rules around using them. UDA's are easier to add on and more flexible, but not as robust for reporting.
The way I choose which one to use is based on the need. If the purpose is for end user reporting, I usually try to use an Attribute dim in most cases. If the need is around identifying members for security or calculations, I'll often lean towards UDA's. In many cases the two overlap and it just comes down to preference or what the is best suited for the design and maintenance of the database.