Partilhar via


Manipulação de dados MDX - Recuperar dados de origem usando DRILLTHROUGH

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Expressões Multidimensionais (MDX) utiliza a instrução DRILLTHROUGHpara recuperar um conjunto de linhas a partir dos dados de origem de uma célula cubo.

Para executar uma instrução DRILLTHROUGH num cubo, deve ser definida uma ação drillthrough para esse cubo. Para definir uma ação de detalhamento, no SQL Server Data Tools, no Cube Designer, no painel de Ações, na barra de ferramentas, clique em Nova Ação de Detalhamento. Na nova ação de drillthrough, especifique o nome da ação, o destino, a condição e as colunas devolvidas por uma instrução DRILLTHROUGH.

Sintaxe da Sentença DRILLTHROUGH

A instrução DRILLTHROUGH utiliza a seguinte sintaxe:

<drillthrough> ::= DRILLTHROUGH [<Max_Rows>] [<First_Rowset>] <MDX select> [<Return_Columns>]  
   < Max_Rows> ::= MAXROWS <positive number>  
   <First_Rowset> ::= FIRSTROWSET <positive number>  
   <Return_Columns> ::= RETURN <member or attribute> [, <member or attribute>]  

A cláusula SELECT identifica a célula do cubo que contém os dados de origem a serem recuperados. Esta cláusula SELECT é igual a uma instrução MDX SELECT comum, exceto que na cláusula SELECT apenas um membro pode ser especificado em cada eixo. Se for especificado mais do que um elemento num eixo, ocorre um erro.

A <Max_Rows> sintaxe especifica o número máximo de linhas em cada conjunto de linhas devolvido. Se o fornecedor OLE DB usado para ligar à fonte de dados não suportar DBPROP_MAXROWS, a <Max_Rows> definição é ignorada.

A <First_Rowset> sintaxe identifica a partição cujo conjunto de linhas é devolvido primeiro.

A <Return_Columns> sintaxe identifica as colunas subjacentes da base de dados a serem devolvidas.

Exemplo de Instrução DRILLTHROUGH

O exemplo seguinte demonstra a utilização da instrução DRILLTHROUGH . Neste exemplo, a instrução DRILLTHROUGH consulta as folhas das dimensões Store, Product e Time ao longo da dimensão Stores (o eixo do slicer), e depois devolve o grupo de medidas do departamento, o ID do departamento e o primeiro nome do funcionário.

DRILLTHROUGH  
Select {Leaves(Store), Leaves(Product), Leaves(Time),*} on 0  
From Stores  
RETURN [Department MeasureGroup].[Department Id], [Employee].[First Name]  

Ver também

Manipulação de Dados (MDX)