Este articulo explica cómo crear un procedimiento para mostrar las propiedades de Platform Analytics de cada proyecto gracias a la herramienta Command Manager y conocer así para que proyecto estan activadas y a que nivel. Puedes ver la explicación de todas las propiedades que devuelve haciendo clic aquí.
Especificaciones del entorno
- Microsoft Windows 10
- MicroStrategy 2021 update 3
Explicación del código
A continuación se explica el código linea a linea. Puedes copiar y pegar el código en Command Manager o abrir el procedimiento de ejemplo desde MicroStrategy Command Manager (Menú Archivo > Abrir Procedimiento)
//Creado por MiguelTroyano.com // Cabecera del fichero printOut("PROPIEDAD&VALOR"); printOut( "-------" ); // Obtenemos todos los atributos de un proyecto ResultSet rsProyectos = executeCapture("LIST ALL PROJECTS;"); ResultSet rsPropiedades = null; // Nos posicionamos en el primer proyecto encontrado rsProyectos.moveFirst(); // Mientras que existan proyectos entramos en el bucle while (!rsProyectos.isEof()){ // Se declara la varibable para guardar el nombre del proyecto String sNombreProyecto = rsProyectos.getFieldValueString(DisplayPropertyEnum.NAME); // Obtenemos todas las propiedades de las estadisticas de PA sobre el proyecto rsPropiedades = executeCapture("LIST ALL PROPERTIES FOR PASTATISTICS IN PROJECT '" + sNombreProyecto + "';"); // Nos posicionamos en la primera propiedad rsPropiedades.moveFirst(); while (!rsPropiedades.isEof()){ // Mostramos cada una de las propiedades por posición printOut( "Nombre del Proyecto: " + rsPropiedades.getFieldValueString( (0) ) ); printOut( "Estadisticas Basicas: " + rsPropiedades.getFieldValueString( (1) ) ); printOut( "Trabajos de informes detallados: " + rsPropiedades.getFieldValueString( (2) ) ); printOut( "Trabajos de documentos detallados: " + rsPropiedades.getFieldValueString( (3) ) ); printOut( "SQL del trabajo: " +rsPropiedades.getFieldValueString( (4) ) ); printOut( "Columnas/Tablas: " +rsPropiedades.getFieldValueString( (5) ) ); printOut( "Clientes de Mobile " + rsPropiedades.getFieldValueString( (6) ) ); printOut( "Manipulaciones de clientes de Mobile: " + rsPropiedades.getFieldValueString( (7) ) ); printOut( "Ubicación de os clientes Mobile: " + rsPropiedades.getFieldValueString( (8) ) ); printOut( "-------" ); rsPropiedades.moveNext(); } // Nos posicionamos en el siguiente proyecto por si tiene más de uno rsProyectos.moveNext(); }
Si se observa el código, el procedimiento primero lee todos los proyectos de tu entorno guardando su nombre para posteriormente leer todas las propiedades de PA (Platform Analytics) para cada proyecto.
![](https://www.migueltroyano.com/wp-content/uploads/2022/03/str_command_manager_list_pa.jpg)
Si tienes claro el proyecto que quieres consultar puedes ejecutar un script mucho más sencillo. Haz clic aquí para averiguar cómo hacerlo.
Ejemplo a descargar
Os podéis descargar el ejemplo completo haciendo clic en el botón descargar.
Buenas,
Me ha servido de mucha ayuda y he puesto tu web como referencia para temas de micro.
Solo un apunte:
En la línea 17 de este script se debe de cambiar la variable “rsAtributos” por “rsProyectos” para que no falle. Queda de la siguiente forma:
// Se declara la varibable para guardar el nombre del proyecto
String sNombreProyecto = rsProyectos.getFieldValueString(DisplayPropertyEnum.NAME);
Un saludo y muchas gracias por este conocimiento 🙂
Gracias por su visita y por su aporte. Ya se ha corregido el articulo. ¡nos vemos!