InfoCity
InfoCity - виртуальный город компьютерной документации
Реклама на сайте







Размещение сквозной ссылки

 

Настройка характеристик показа данных


Листинг 1: Запрос и извлечение свойств ячеек


   Private Sub Form_Load()
     ` Открыть соединение с  OLAP Services на локальном компьютере
     Dim gConnection As Connection
     Set gConnection = New Connection
     gConnection.Open "Data Source=LocalHost;Provider=MSOLAP"
    
     ` Убедиться в том, что работаем с базой данных FoodMart 
     If gConnection.DefaultDatabase <> "FoodMart" Then
       gConnection.DefaultDatabase = "FoodMart 2000"
     End If
  
     ` Объявить переменные (набор ячеек) для хранения результатов запроса
     Dim oCellSet As Cellset
    
     ` Запустить простой одномерный запрос MDX
     Set oCellSet = New Cellset
     oCellSet.Open "WITH CELL CALCULATION Fred FOR 
	`({[Product].[Product Family].&[Food]})` " & _
       "AS `CalculationPassValue(Product.CurrentMember, 0 )`, " & _
       "CONDITION = `CalculationPassValue(Product.CurrentMember, 0 ) 
	> 12000`, " & _
       "FORE_COLOR = `255 * 256` " & _
       "SELECT [Product].[Product Family].Members on COLUMNS " & _
       "FROM Sales " & _
       "CELL PROPERTIES VALUE, FORMATTED_VALUE, 
		FORE_COLOR, BACK_COLOR", _
       gConnection
    
     ` Объявить переменные, необходимые для показа результатов
     Dim oAxis As Axis
     Dim nDim As Integer
     Dim oMember As Member
     Dim nCell As Integer
     Dim oCell As Cell
     Dim oProperty As Property
     Dim oPosition As Position
     
     ` Организовать цикл просмотра ячеек по столбцам результатов,
     ` выступающим в роли осей
     For nCell = 0 To oCellSet.Axes(0).Positions.Count - 1
       ` Получить ссылку на ячейку
       Set oCell = oCellSet(nCell)
       ` Получить ссылку на объект, позиционирующий ось
       Set oPosition = oCellSet.Axes(0).Positions(nCell)
      
       ` Вывести порядковый номер ячейки, имя члена и 
		число свойств для этой позиции
       Debug.Print "Cell(" & oCell.Ordinal & ") " & 
		oPosition.Members(0).Name & "=" & oCell.FormattedValue
    & " has " & oCell.Properties.Count & " Properties"
    
       ` Вывести в цикле свойства ячейки для этой позиции и их значения
       For Each oProperty In oCell.Properties
         Debug.Print "Property " & oProperty.Name & " = " & oProperty.Value
       Next
     Next nCell
    
     Set oCellSet = Nothing
     Set gConnection = Nothing
   End Sub


Реклама на InfoCity

Яндекс цитирования



Финансы: форекс для тебя








1999-2009 © InfoCity.kiev.ua