Databases Reference
In-Depth Information
Overview
The MDX language supports an extensive set of functions for business analys-
is. In addition to that Analysis Services exposes certain VBA (Visual Basic for
Applications) and Excel functions as builtin external functions which can be ac-
cessed through MDX. These functions supported in Analysis Services should
meet most of your design and query requirements. However there is always a
need for custom operations. Analysis Services provides an extensible architec-
ture by which you can add your custom function to Analysis Services and ac-
cess them through MDX. These external functions are also referred to as user-
defined functions (UDF).
The UDF offers seamless integration with existing Microsoft Business Intelli-
gence technology with all the power to be found in the programming language
of your choice. This suggests you can accomplish anything your coding skills
will support and that it will be leveraged by the existing benefits of Analysis
Services. As an example, it would not be unusual to use recent stock data for
calculations within MDX queries or expressions. By building a UDF to collect
and pass along relevant data, your MDX query can reflect such up-to-date in-
formation.
Two types of external functions are described and demonstrated in this
chapter: COM-based UDFs and .NET-based UDFs (commonly referred to as .
NET assemblies). There are some crucial nuggets of data any Business Intelli-
gence informavore will want to consume. You should already be aware that
COM UDFs are created using C or C++ or even VB6, the output of which are
COM DLLs. This functionality was available in Analysis Services 2000 — so
there is nothing new there and is supported in Analysis Services 2005 for
backwards compatibility of existing applications. On the other hand, the relat-
ively new technology called .NET assemblies is supported with Analysis Ser-
vices 2005. Your custom function written in .NET language, like VB.Net, C#, or
even managed C++ for that matter needs to be compiled as a DLL (Dynamic
Link Library).
Analysis Services provides native support for .NET assemblies and therefore
debugging these procedures is quite straightforward within an instance of Ana-
lysis Services. Typically a person other than the administrator of the instance
creates the UDFs. In such a case the administrator might not trust the coding
 
Search WWH ::




Custom Search