El siguiente código genera un reporte que tiene todas las provincias como filas, y todas las categorías de la dimensión Ventas como columnas (obj.Columns.Item(1))
*********************************************
1 Dim objSet obj =
CreateObject("CognosPowerPlay.Report")
2 obj.Open("D:\001Proyectos\ReportCN_mv.ppr")
3 obj.ExplorerMode = false
4 obj.Rows.Remove
5 dim listCat
6 set listCat = obj.CategoryList()
7
8 listCat.Add 3, "Ubigeo", "Departamento", "Provincia"
9 obj.Rows.Add listCat
10
11 If obj.Columns.Item(1).CanDrillDown Then
12 obj.Columns.Item(1).DrillDown
13 End If
14
15 obj.Save
16 obj.Close
17 Set obj = Nothing
*********************************************
Para este ejemplo se plantea que se tiene un reporte con solo un registro habilitado, que en realidad es una medida (Measure) que corresponde a las ventas (Venta).Descripción:============
1.- Se crea el objeto de tipo Reporte.2.- Se abre el reporte existente3.- ExplorerMode, si es Verdadero se restringe algunas funciones del reporte, si es falso se habilitan todas las funciones y propiedades en el reporte.4.- Borramos todas las filas del reporte. 5.- Definimos un objeto de una lista de categorías. 6.- Pasamos al objeto la lista de categorías del objeto reporte.8.- Agregamos a la lista de categorías todas las categorias que pertenecen al nivel de "Provincia" de la dimensión Ubigeo. objetoCategoriaLista.Add recibe de parámetros el número del nivel y los nombres de las categorías hasta donde se quiere llegar.9.- Adicionamos la lista de categorías al reporte.11.- Verificamos si se puede realizar un drill down en la dimensión, o nivel, que existe en el reporte.12.- Realizamos el DrilDown en ese nivel. DrillDown despliega todas las categorías que existen en el nivel especificado.15.- Guardamos el reporte. Save guarda el reporte actual, tal y como está definida al momento de abrir el reporte.16.- Se cierra el objeto reporte.