Manipulation des données MDX - DRILLTHROUGH

Récupère les lignes de table sous-jacentes qui ont servi à créer une cellule spécifiée dans un cube.

Syntax

  
DRILLTHROUGH[MAXROWSUnsigned_Integer]   
      <MDX SELECT statement>   
      [RETURNSet_of_Attributes_and_Measures   
            [,Set_of_Attributes_and_Measures ...]  
      ]  

Arguments

Unsigned_Integer
Une valeur entière positive.

Instruction MDX SELECT
Toute instruction SELECT valide des expressions multidimensionnelles (MDX).

Set_of_Attributes_and_Measures
Une liste séparée par virgules des attributs et mesures de dimension.

Remarks

Le drillthrough est une opération dans laquelle un utilisateur final sélectionne une seule cellule dans un cube et récupère un ensemble de résultats à partir des données sources de cette cellule afin d’obtenir des informations plus détaillées. Par défaut, un ensemble de résultats de drillthrough est dérivé des lignes de table évaluées pour calculer la valeur de la cellule du cube sélectionnée. Pour que les utilisateurs finaux puissent approfondir, leurs applications clientes doivent prendre en charge cette capacité. Dans Analysis Services, les résultats sont récupérés directement depuis le stockage MOLAP, sauf si les partitions ROLAP ou les dimensions sont interrogées.

Important

La sécurité de drillthrough est basée sur les options générales de sécurité définies sur le cube. Si un utilisateur ne peut pas obtenir certaines données en utilisant MDX, le drillthrough restreint également l’utilisateur de la même manière.

Une instruction MDX spécifie la cellule sujet. La valeur spécifiée par l’argument MAXROWS indique le nombre maximal de lignes qui doivent être retournées par l’ensemble de lignes résultant.

Par défaut, le nombre maximal de lignes retournées est de 10 000 lignes. Cela signifie que si vous laissez les MAXROWS non spécifiés, vous obtiendrez 10 000 lignes ou moins. Si cette valeur est trop basse pour votre scénario, vous pouvez définir MAXROWS à un nombre plus élevé, comme MAXROWS 20000. Si elle est trop basse globalement, vous pouvez augmenter le défaut en modifiant la propriété serveur OLAP\Query\DefaultDrillthroughMaxRows . Pour plus d’informations sur la modification de cette propriété, voir Propriétés du serveur dans les services d’analyse.

Sauf indication contraire, les colonnes retournées incluent tous les attributs de granularité pour toutes les dimensions liées au groupe de mesures de la mesure spécifiée, à l’exception des dimensions de plusieurs à plusieurs. Les dimensions du cube sont précédées de $ pour distinguer les dimensions et les groupes de mesures. La clause RETURN sert à spécifier les colonnes retournées par la requête de drillthrough. Les fonctions suivantes peuvent être appliquées à un seul attribut ou mesure par la clause RETURN .

Nom(attribute_name)
Retourne le nom du membre d’attribut spécifié.

UniqueName(attribute_name)
Retourne le nom unique du membre d’attribut spécifié.

Clé(attribute_name[, N])
Retourne la clé de l’élément d’attribut spécifié, où N spécifie la colonne dans la clé composite (le cas échéant). La valeur par défaut pour N est 1.

Légende(attribute_name)
Retourne la légende du membre d’attribut spécifié.

ValorMembre(attribute_name)
Retourne la valeur de l’élément d’attribut spécifié.

CustomRollup(attribute_name)
Retourne l’expression de rollup personnalisée du membre d’attribut spécifié.

CustomRollupProperties(attribute_name)
Retourne les propriétés de rollup personnalisées du membre d’attribut spécifié.

UnaryOperator(attribute_name)
Retourne l’opérateur unaire du membre d’attribut spécifié.

Example

L’exemple suivant spécifie la cellule pour le mois de juillet 2007 pour la mesure du montant des ventes des revendeurs (la mesure par défaut) pour l’Australie. La clause RETURN précise que la date de chaque vente, le nom du modèle du produit, le nom de l’employé, le montant de la vente, le montant de la taxe et les valeurs du coût du produit sous-jacentes à cette cellule doivent être retournés.

DRILLTHROUGH  
SELECT  
   ([Date].[Calendar].[Month].[July 2007])  
ON 0   
FROM [Adventure Works]  
WHERE [Geography].[Country].[Australia]  
RETURN   
  [$Date].[Date]  
  ,KEY([$Product].[Model Name])  
  ,NAME([$Employee].[Employee])  
  ,[Reseller Sales].[Reseller Sales Amount]  
  ,[Reseller Sales].[Reseller Tax Amount]  
  ,[Reseller Sales].[Reseller Standard Product Cost]