StrToTuple (MDX)

Возвращает кортеж, заданный строкой в формате многомерных выражений (MDX).

Syntax

  
StrToTuple(Tuple_Specification [,CONSTRAINED] )   

Arguments

Tuple_Specification
Допустимое строковое выражение, указывающее прямо или косвенно кортеж.

Remarks

Функция StrToTuple возвращает указанное множество. Функция StrToTuple обычно используется с пользовательскими функциями для возврата спецификации кортежа из внешней функции обратно в оператор MDX.

  • При использовании флага CONSTRAINED спецификация кортежа должна содержать квалифицированные или неквалифицированные имена участников. Этот флаг используется для снижения риска инъекционных атак через указанную строку. Если предоставлена строка, которая напрямую не разрешается для квалифицированных или неквалифицированных имён участников, появляется следующая ошибка: «Ограничения, наложенные флагом CONSTRAINED в функции STRTOTUPLE, были нарушены.»

  • Когда флаг CONSTRAINED не используется, указанный кортеж может разрешиться в допустимое выражение MDX, возвращающее кортеж.

Примеры

Следующий пример возвращает показатель суммы продаж реселлером для члена «Баварии» за календарный 2004 год. Предоставленная спецификация кортежа содержит действительное выражение MDX-кортежа.

SELECT StrToTuple ('([Geography].[State-Province].[Bayern],[Date].[Calendar Year].[CY 2004], [Measures].[Reseller Sales Amount])')  
ON 0  
FROM [Adventure Works]  
  

Следующий пример возвращает показатель суммы продаж реселлером для члена «Баварии» за календарный 2004 год. Спецификация кортежа, которая предоставляется, содержит квалифицированные имена участников, как требует флаг CONSTRAINED.

SELECT StrToTuple ('([Geography].[State-Province].[Bayern],[Date].[Calendar Year].[CY 2004], [Measures].[Reseller Sales Amount])', CONSTRAINED)  
ON 0  
FROM [Adventure Works]  
  

Следующий пример возвращает показатель суммы продаж реселлером для члена «Баварии» за календарный 2004 год. Предоставленная спецификация кортежа содержит действительное выражение MDX-кортежа.

SELECT StrToTuple ('([Geography].[State-Province].[Bayern],[Date].[Calendar Year].&[2003].NEXTMEMBER, [Measures].[Reseller Sales Amount])')  
ON 0  
FROM [Adventure Works]  
  

Следующий пример возвращает ошибку из-за флага CONSTRAINED. Хотя предоставленная спецификация кортежа содержит действительное выражение MDX-кортежа, флаг CONSTRAINED требует квалифицированных или неквалифицированных имён членов в спецификации кортежа.

SELECT StrToTuple ('([Geography].[State-Province].[Bayern],[Date].[Calendar Year].&[2003].NEXTMEMBER, [Measures].[Reseller Sales Amount])', CONSTRAINED)  
ON 0  
FROM [Adventure Works]