Construire un cube local
Question
Je dois créer un fichier .cub local pour mes clients utilisant Excel.
J'ai mélangé du code VB mais cela a échoué:
ConnLocation = "LOCATION=C:\test.cub;"
ConnDSN = "SOURCE_DSN=DSN=TEST;UID=test;PWD=pass;"
ConnCreateCube = _
"CREATECUBE=CREATE CUBE [TestCube] (" & _
"DIMENSION [account_code]);"
Connection = CreateObject("ADODB.Connection")
Connection.Provider = "msolap"
Connection.ConnectionString = _
ConnLocation & _
ConnDSN & _
ConnCreateCube
J'ai réduit ce code au code ci-dessus et j'obtiens un mystérieux erreur OLE DB: erreur OLE DB ou ODBC.
" quand j'essaie de l'exécuter.
Toute aide sur ce qui précède ou des suggestions sur une approche différente de celle-ci me seraient fort appréciées.
La solution
Votre propriété DSN de chaîne de connexion semble erronée:
ConnDSN = "SOURCE_DSN=""DSN=TEST;UID=test;PWD=pass;"""
Notez les guillemets.
Je recommanderais un petit changement de code pour le rendre plus intuitif et sans faille:
ConnLoc = "C:\test.cub"
ConnDSN = "DSN=TEST;UID=test;PWD=pass"
ConnSQL = "CREATE CUBE [TestCube] (DIMENSION [account_code])"
Connection = CreateObject("ADODB.Connection")
Connection.Provider = "msolap"
Connection.ConnectionString = "LOCATION=""" & ConnLoc & """;" & _
"SOURCE_DSN=""" & ConnDSN & """;" & _
"CREATECUBE=""" & ConnSQL & """;"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow