Использование хранимых процедур (многомерных выражений)

Вы можете расширить функциональность аналитических сервисов и многомерных выражений (MDX), записывая .NET-хранимые процедуры или пользовательские функции. Для получения дополнительной информации см. ADOMD.NET Server Programming

Когда вы ссылаетесь или вызываете сохранённую процедуру, вы указываете имя функции, за которым следуют скобки. В скобках можно указать выражения, называемые аргументами, которые предоставляют данные для передачи в параметры. При вызове функции необходимо предоставить значения аргументов для всех параметров и указать значения аргументов в той же последовательности, в которой параметры определены в пользовательской функции.

Следующий пример запроса предполагает, что у вас зарегистрирована ассемблея с названием SampleAssembly на вашем сервере Analysis Services:

SELECT SampleAssembly.RandomSample([Geography].[State-Province].Members, 5) on ROWS,   
[Date].[Calendar].[Calendar Year] on COLUMNS  
FROM [Adventure Works]  
WHERE [Measures].[Reseller Freight Cost]  

Замечание

Сохранённая процедура — это терминология, используемая в аналитических сервисах для таких функций. Ранние версии Analysis Services называли эти типы функций пользовательскими.

Типы хранимых процедур

Analysis Services поддерживает как сборки COM, так и CLR. CLR-сборки рекомендуются из-за повышенной безопасности, доступной для CLR-сборок. Если Microsoft Office Excel установлен на сервере, Excel функции также доступны.

Замечание

Microsoft Visual Basic для приложений (VBA) сборки COM регистрируются автоматически.