Compartir a través de


Cómo enriquecer datos de BAM mediante búsquedas

Hay casos en los que los datos que están disponibles en el tiempo de funcionamiento no contienen todo lo necesario para realizar informes. Por ejemplo, puede que se haya instalado un ProductID pero no un ProductName en tiempo de ejecución. Ya que la actividad de BAM representa una abstracción independiente de cómo se recopilan los datos realmente, debería contener un elemento con el mismo nombre que los datos finales que desea ver en el “ProductName” del informe. Como el resto de elementos, puede utilizarse en construcciones interpretativas, como grupos de hitos, duraciones, dimensiones y medidas. Ya que ProductName no está disponible en tiempo de ejecución, debe obtener algunos datos adicionales que sean suficientes para realizar la búsqueda, como el ProductID.

Debe recopilar los datos de la misma columna, en lugar de los datos que necesita para los informes. Por ejemplo, debe recopilar el ProductID en lugar del ProductName en tiempo de ejecución. Si son necesarias más columnas, deberá crear más elementos en la actividad, pero no utilizarlos en ninguna vista.

Para enriquecer datos de BAM mediante búsquedas

  1. Implemente su definición de BAM.

  2. En SQL Server Management Studio, agregue el servidor que contiene los datos de interés como servidor remoto.

  3. Busque el paquete de análisis de datos denominado BAM_AN_<View Name>. Por ejemplo, si la vista es SalesMgr, será BAM_AN_SalesMgr.

  4. Aumente el zoom de la vista del paquete (p.ej. 100%).

  5. Agregue la conexión de SQL que utilizará en las búsquedas.

  6. Encuentre la tarea Transformar datos después del paso “Fase de limpieza”. En este momento se transportan los datos de la base de datos PrimaryImport a la base de datos StarSchema. Hay dos instancias de esta tarea: una para las actividades completadas y otra para la que está en curso. Aplique el resto de pasos a las dos tareas.

  7. Haga clic en la transformación.

  8. Seleccione Búsquedas y agregue su búsqueda “LookupProductByID” mediante la conexión de búsqueda (consulte Libros en pantalla de SQL Server para búsquedas). Por ejemplo, si la búsqueda es una tabla sencilla “LookupProduct”, con columnas ProductID y ProductName, el texto de la búsqueda será:

    SELECT ProductName  
    FROM   LookupProduct  
    WHERE ProductID=?  
    
  9. Haga clic en la pestaña Transformaciones. Elimine la transformación de datos predeterminada "Transformar" y cree la transformación ActiveX en su lugar. Haga clic en Columnas de origen y agregue todas las columnas. Haga clic en Columnas de destino y agregue todas las columnas.

  10. Haga clic en la pestaña General y, a continuación, en Propiedades. Esto da lugar a la generación automática de una secuencia de comandos que realiza una transformación trivial de la copia, tal como se muestra:

    Function Main()  
       ...  
       DTSDestination("ProductName") = DTSSource("ProductName")  
       ...  
       Main = DTSTransformStat_OK  
    End Function  
    
  11. Cambie el valor mediante la búsqueda, tal como se muestra:

    Function Main()  
       ...  
       DTSDestination("Product")= _  
                      DTSLookups( "LookupProductByID" ).Execute(  _                                  DTSSource("Product"))  
       ...  
       Main = DTSTransformStat_OK  
    End Function  
    
  12. Guarde y ejecute el paquete.

  13. Asegúrese de que el cubo OLAP recibe los datos apropiados. Debería guardar el paquete como VBScript o archivo de almacenamiento estructurado, ya que contiene su código personalizado, no solo el que se generó automáticamente desde BAM.

Nota

La búsqueda solo funciona para los informes programados que se realizan con DTS y OLAP. Si necesita datos diferentes de los que recopiló en la agregación en tiempo real, recupere los datos antes de llamar a la API de BAM.

Consulte también

Utilizar Supervisión de la actividad económica
Implementación de archivos XML de BAM localizados