Compartir a través de


Ejemplo de CubeDef (VBScript)

Se aplica a: Access 2013 | Access 2016

En este ejemplo, se muestran metadatos de cubo en una página Web.

<%@ Language=VBScript %> 
<% 
Response.Buffer=True 
'Response.Expires=0 
%> 
<html> 
<head> 
<meta NAME="GENERATOR" Content="Microsoft Visual Studio 6.0"> 
</head> 
<body> 
 
<% 
Server.ScriptTimeout=360 
Dim cat,cdf,di,hi,le,mem,strServer,strSource,strCubeName 
 
'************************************************************************ 
'*** Set Session Variables 
'************************************************************************ 
Session("CubeName") = Request.Form("strCubeName") 
Session("CatalogName") = Request.Form("strCatalogName") 
Session("ServerName") = Request.Form("strServerName") 
Session("chkDim") = Request.Form("chkDimension") 
Session("chkHier") =  Request.Form("chkHierarchy") 
Session("chkLev") =  Request.Form("chkLevel") 
 
'************************************************************************ 
'*** Create Catalog Object 
'************************************************************************************ 
Set cat = Server.CreateObject("ADOMD.Catalog") 
 
If Len(Session("ServerName")) > 0 Then 
   cat.ActiveConnection = "Data Source='" & Session("ServerName") & "';Initial Catalog='" & Session("CatalogName") & "';Provider='msolap';" 
Else 
'************************************************************************************ 
'*** Must set OLAPServerName to OLAP Server that is 
'*** present on network 
'************************************************************************ 
OLAPServerName = "Please set to present OLAP Server" 
   cat.ActiveConnection = "Data Source=" & OLAPServerName & _ 
      ";Initial Catalog=FoodMart;Provider=msolap;" 
   Session("ServerName") = OLAPServerName 
   Session("InitialCatalog") = "FoodMart" 
End if 
 
If Len(Session("CubeName")) > 0 Then 
   Set cdf = cat.CubeDefs(Session("CubeName")) 
Else 
   Set cdf = cat.CubeDefs("Sales") 
   Session("CubeName")="Sales" 
End if 
 
'************************************************************************ 
'*** Collect Information in HTML Form 
'************************************************************************ 
%> 
<form action="ASPADOCubeDoc.asp" method="post" id="form1" name="form1"> 
<table> 
   <tr> 
      <td> 
      <b>Olap Server name:  </b><br><input type="text" id="strServerName" name="strServerName" value="<%=Session("ServerName")%>" size="20"><br> 
 
      <b>Catalog Name:  </b><br><input type="text" id="strCatalogName" name="strCatalogName" value="<%=Session("CatalogName")%>" size="20"><br> 
 
      <b>Cube Name:  </b><br><input type="text" id="strCubeName" name="strCubeName" value="<%=Session("CubeName")%>" size="20"> 
      </td> 
      <td <TD> 
         <b>Add Property Detail:  </b><br> 
         Dimension Detail: <input type="checkbox" id="chkDimension" name="chkDimension"><br> 
 
         Hierarchy Detail: <input type="checkbox" id="chkHierarchy" name="chkHierarchy"><br> 
 
         Level Detail: <input type="checkbox" id="chkLevel" name="chkLevel"> 
      </td>  
   </tr> 
</table> 
<input type="submit" value="Cube Information" id="submit1" name="submit1"><input type="reset" value="Reset" id="reset1" name="reset1"> 
</form> 
<% 
 
'************************************************************************ 
'*** Start of Report 
'************************************************************************ 
Response.Write "<H3>Report for " & Session("CubeName") & " Cube</H3>" 
Response.Write "<OL TYPE='i'>" 
 
'************************************************************************ 
'*** Show properties of Cube 
'************************************************************************ 
            For i = 0 To cdf.Properties.Count - 1 
               Response.Write "<LI>" 
               Response.Write "<FONT size=-2>" & cdf.Properties(i).Name & ": " & cdf.Properties(i).Value & "</FONT>" 
            Next 
            Response.Write "</OL>" 
            Response.Write "<UL TYPE='SQUARE'>"    
 '************************************************************************ 
'*** Loop to display Dimension Name and Properties if Check box is  
'*** Checked 
'************************************************************************ 
      For di = 0 To cdf.Dimensions.Count - 1 
         Response.Write "<LI>" 
         Response.Write "<FONT size=4><B>Dimension: " & _ 
            cdf.Dimensions(di).Name & "</B></FONT>" 
         If Request.Form("chkDimension") = "on" Then 
            Response.Write "<OL TYPE='1'>" 
            For i = 0 To cdf.Dimensions(di).Properties.Count - 1 
               Response.Write "<LI>" 
               Response.Write "<FONT size=-2>" & _ 
                  cdf.Dimensions(di).Properties(i).Name & ": " & _ 
                  cdf.Dimensions(di).Properties(i).Value & "</FONT>" 
            Next 
            Response.Write "</OL>" 
         End If 
         Response.Write "<UL TYPE= 'Circle'>" 
'************************************************************************ 
'*** Loop to display Hierarchy Name and Properties if Check box is  
'*** Checked 
'************************************************************************ 
         For hi = 0 To cdf.Dimensions(di).Hierarchies.Count - 1 
            Response.Write "<LI>" 
            Response.Write "<FONT size=3><B>Hierarchy: " & _ 
               cdf.Dimensions(di).Hierarchies(hi).Name & "</B></FONT>" 
            If Request.Form("chkHierarchy") = "on" Then 
               Response.Write "<OL TYPE='1'>" 
               For i = 0 To _ 
                  cdf.Dimensions(di).Hierarchies(hi).Properties.Count - 1 
                  Response.Write "<LI>" 
                  Response.Write "<FONT size=-2>" & _ 
                     cdf.Dimensions(di).Hierarchies(hi).Properties(i)._ 
                     Name & ": " & _ 
                     cdf.Dimensions(di).Hierarchies(hi).Properties(i)._ 
                     Value & "</FONT>" 
               Next 
               Response.Write "</OL>" 
            End If 
            Response.Write "<UL TYPE='Disc'>" 
'************************************************************************ 
'*** Loop to display Level Name and Properties if Check box is Checked 
'************************************************************************ 
      For le = 0 To cdf.Dimensions(di).Hierarchies(hi).Levels.Count - 1 
               Response.Write "<LI>" 
               Response.Write "<FONT size=2><B>Level: " & _ 
                  cdf.Dimensions(di).Hierarchies(hi).Levels(le).Name & _ 
                  " with a Member Count of: " & _ 
                  cdf.Dimensions(di).Hierarchies(hi).Levels(le)._ 
                  Properties("LEVEL_CARDINALITY") & "</B></FONT>" 
               If Request.Form("chkLevel") = "on" Then 
                  Response.Write "<OL TYPE='1'>" 
                  For i = 0 To  
                     cdf.Dimensions(di).Hierarchies(hi).Levels(le)._ 
                     Properties.Count - 1 
                     Response.Write "<LI>" 
                     Response.Write "<FONT size=-2>" & _ 
                        cdf.Dimensions(di).Hierarchies(hi).Levels(le)._ 
                        Properties(i).Name & ": " & _ 
                        cdf.Dimensions(di).Hierarchies(hi).Levels(le)._ 
                        Properties(i).Value & "</FONT>" 
                  Next 
                  Response.Write "</OL>" 
               End If 
            Next 
            Response.Write "</UL>" 
         Next 
         Response.Write "</UL>" 
      Next 
      Response.Write "</UL>" 
%> 
</body> 
</html> 

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.