La herramienta de Cognos tiene una herramienta llamada CognosScript Editor que, básicamente, te permite escribir código en Visual Basic Script para hacer uso de los cubos que se leen con la herramienta Cognos PowerPlay.
Lo primero que hay que hacer es crear un objeto que sea del tipo de un reporte, en este caso del tipo "CognosPowerPlay.Report". Luego una vez creado este objeto existen métodos y funciones con los cuales puedes realizar búsquedas, filtros, drill-down, drill-up, etc.
Ejemplo
Dim obj
Set obj = CreateObject("CognosPowerPlay.Report")
obj.Open("D:\Proyectos\PruebasScripts\Reportes\prueba1.ppr")
'MsgBox("realizado con éxito")
Dim dimension
Set dimension = obj.DimensionLine.Item("DProductos")
dimension.change("Enlatados")
obj.DimensionLine.Item("DTiempo").change("2005")
MsgBox("Valor: " & obj.cellvalue(obj.rows.item(3), obj.columns.item(1)))
obj.close()
En este ejemplo el resultado es mostrar un valor (del reporte) que es la intersección de la tercera fila y primera columna, además el valor ah sido filtrado por dos dimensiones. La primera forma crea un objeto llamado dimensión al cual lo cambia por la categoría de "Enlatados". La segunda forma lo hace directo del objeto reporte y cambia la dimensión de tiempo (DTiempo) a la categoría 2005.
El reporte puede tener la estructura de mostrar los datos por otras la dimensión sector (DUbigeo) como columnas y Clientes (DClientes) como filas y una medida (measure) de Ventas en dólares, entonces el valor arrojado será las ventas realizadas al cliente de la fila 3 para el sector de la columna 1, pero filtrado por por productos enlatados y realizadas en el año 2005.
Lo primero que hay que hacer es crear un objeto que sea del tipo de un reporte, en este caso del tipo "CognosPowerPlay.Report". Luego una vez creado este objeto existen métodos y funciones con los cuales puedes realizar búsquedas, filtros, drill-down, drill-up, etc.
Ejemplo
Dim obj
Set obj = CreateObject("CognosPowerPlay.Report")
obj.Open("D:\Proyectos\PruebasScripts\Reportes\prueba1.ppr")
'MsgBox("realizado con éxito")
Dim dimension
Set dimension = obj.DimensionLine.Item("DProductos")
dimension.change("Enlatados")
obj.DimensionLine.Item("DTiempo").change("2005")
MsgBox("Valor: " & obj.cellvalue(obj.rows.item(3), obj.columns.item(1)))
obj.close()
En este ejemplo el resultado es mostrar un valor (del reporte) que es la intersección de la tercera fila y primera columna, además el valor ah sido filtrado por dos dimensiones. La primera forma crea un objeto llamado dimensión al cual lo cambia por la categoría de "Enlatados". La segunda forma lo hace directo del objeto reporte y cambia la dimensión de tiempo (DTiempo) a la categoría 2005.
El reporte puede tener la estructura de mostrar los datos por otras la dimensión sector (DUbigeo) como columnas y Clientes (DClientes) como filas y una medida (measure) de Ventas en dólares, entonces el valor arrojado será las ventas realizadas al cliente de la fila 3 para el sector de la columna 1, pero filtrado por por productos enlatados y realizadas en el año 2005.
No hay comentarios.:
Publicar un comentario