Share via


execute2D : méthodes execute2D d’olapR

Accepte un objet de requête ou une chaîne MDX et retourne le résultat sous la forme d’une trame de données.

Utilisation

  execute2D(olapCnn, query)
  execute2D(olapCnn, mdx)

Arguments

olapCnn

Objet de la classe « OlapConnection » retourné par OlapConnection()

query

Objet de la classe « Query » retourné par Query()

mdx

Chaîne spécifiant une requête MDX valide

Détails

Si une requête est fournie : execute2D valide un objet de requête (facultatif), génère une chaîne de requête MDX à partir de l’objet de requête, exécute la requête et retourne le résultat sous la forme d’une trame de données.

Si une chaîne MDX est fournie : execute2D exécute la requête MDX et retourne le résultat sous la forme d’une trame de données.

Valeur

Trame de données si la commande MDX a retourné un jeu de résultats. TRUE et un avertissement si la requête n’a retourné aucune donnée. Une erreur si la requête n’est pas valide

Notes

Les résultats multidimensionnels des requêtes sont aplatis en 2D à l’aide d’un algorithme de mise à plat standard.

References

Création d’un cube OLAP de démonstration (identique à celui utilisé dans les exemples) :

Voir aussi

Query, OlapConnection, executeMD, explore, data.frame

Exemples


 cnnstr <- "Data Source=localhost; Provider=MSOLAP;"
 olapCnn <- OlapConnection(cnnstr)

 qry <- Query()

 cube(qry) <- "[Analysis Services Tutorial]"
 columns(qry) <- c("[Measures].[Internet Sales Count]", "[Measures].[Internet Sales-Sales Amount]")
 rows(qry) <- c("[Product].[Product Line].[Product Line].MEMBERS") 
 pages(qry) <- c("[Sales Territory].[Sales Territory Region].[Sales Territory Region].MEMBERS")

 result1 <- execute2D(olapCnn, qry)

 mdx <- "SELECT {[Measures].[Internet Sales Count], [Measures].[Internet Sales-Sales Amount]} ON AXIS(0), {[Product].[Product Line].[Product Line].MEMBERS} ON AXIS(1), {[Sales Territory].[Sales Territory Region].[Sales Territory Region].MEMBERS} ON AXIS(2) FROM [Analysis Services Tutorial]"

 result2 <- execute2D(olapCnn, mdx)