Crear un paso de trabajo de Analysis Services

En este tema se describe cómo crear y definir los pasos de trabajo del Agente SQL Server en SQL Server 2012 que ejecutan comandos y consultas de SQL Server Analysis Services utilizando SQL Server Management Studio, Transact-SQL u Objetos de administración de SQL Server.

  • Antes de empezar:  

    Limitaciones y restricciones

    Seguridad

  • Para crear pasos de trabajo de SQL Server utilizando comandos y/o consultas de Analysis Services, con:

    SQL Server Management Studio

    Transact-SQL

    objetos de administración de SQL Server

Antes de empezar

Limitaciones y restricciones

  • Si el paso de trabajo utiliza un comando de Analysis Services, la instrucción de comando debe ser un método Execute de XML for Analysis Services. Puede que la instrucción no contenga un sobre SOAP (Protocolo simple de acceso a objetos) completo o un método Discover de XML for Analysis Services. Mientras SQL Server Management Studio admite sobres SOAP (Protocolo simple de acceso a objetos) completos y el método Discover, los pasos de trabajo del Agente SQL Server no los admiten. Para obtener más información sobre XML for Analysis Services, vea Información general de XML for Analysis (XMLA).

  • Si el paso de trabajo utiliza una consulta de Analysis Services, la instrucción de consulta debe ser una consulta de expresiones multidimensionales (MDX). Para obtener más información acerca de MDX, vea Aspectos básicos de las consultas MDX (Analysis Services).

Seguridad

Permisos

  • Para ejecutar un paso de trabajo que utilice el subsistema de Analysis Services, un usuario debe ser miembro del rol fijo de servidor sysadmin o tener acceso a una cuenta de proxy válida definida para utilizar este subsistema. Además, la cuenta de servicio o el proxy del Agente SQL Server deben ser un administrador de Analysis Services y una cuenta de dominio de Windows válida.

  • Los miembros del rol fijo de servidor sysadmin son los únicos que pueden escribir la salida de un paso de trabajo en un archivo. Si ejecutan el paso de trabajo usuarios miembros del rol de base de datos SQLAgentUserRole en la base de datos msdb, solo se podrá escribir la salida en una tabla. El Agente SQL Server escribe la salida del paso de trabajo en la tabla sysjobstepslog de la base de datos msdb.

  • Para obtener información detallada, vea Implementar la seguridad del Agente SQL Server.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar SQL Server Management Studio

Para crear un paso de trabajo de comando de Analysis Services

  1. En el Explorador de objetos, conéctese a una instancia de Motor de base de datos de SQL Server y, después, expándala.

  2. Expanda el Agente SQL Server, cree un nuevo trabajo o haga clic con el botón secundario en uno existente y, a continuación, haga clic en Propiedades. Para obtener más información acerca de cómo crear un trabajo, vea Crear trabajos.

  3. En el cuadro de diálogo Propiedades del trabajo, haga clic en la página Pasos y, a continuación, en Nuevo.

  4. En el cuadro de diálogo Nuevo paso de trabajo, escriba un Nombre del paso del trabajo.

  5. En la lista Tipo, haga clic en Comando de SQL Server Analysis Services.

  6. En la lista Ejecutar como, seleccione un proxy que se haya definido para utilizar el subsistema de comandos de Analysis Services. Los usuarios miembros del rol fijo de servidor sysadmin también pueden seleccionar Cuenta del servicio del Agente SQL para ejecutar este paso de trabajo.

  7. Seleccione el Servidor en el que se ejecutará el paso de trabajo o escriba su nombre.

  8. En el cuadro Comando, escriba la instrucción que se debe ejecutar o haga clic en Abrir para seleccionar una instrucción.

  9. Haga clic en la página Avanzadas para definir opciones para este paso de trabajo, como la acción que debe realizar el Agente SQL Server si el paso de trabajo se realiza correctamente o con errores, las veces que se debe intentar ejecutar el paso de trabajo y el lugar en el que se debe escribir la salida.

Icono de flecha usado con el vínculo Volver al principio[Top]

Para crear un paso de trabajo de consulta de Analysis Services

  1. En el Explorador de objetos, conéctese a una instancia de Motor de base de datos de SQL Server y, después, expándala.

  2. Expanda el Agente SQL Server, cree un nuevo trabajo o haga clic con el botón secundario en uno existente y, a continuación, haga clic en Propiedades. Para obtener más información acerca de cómo crear un trabajo, vea Crear trabajos.

  3. En el cuadro de diálogo Propiedades del trabajo, haga clic en la página Pasos y, a continuación, en Nuevo.

  4. En el cuadro de diálogo Nuevo paso de trabajo, escriba un Nombre del paso del trabajo.

  5. En la lista Tipo, haga clic en Consulta de SQL Server Analysis Services.

  6. En la lista Ejecutar como, seleccione un proxy que se haya definido para utilizar el subsistema de consultas de Analysis Services. Los usuarios miembros del rol fijo de servidor sysadmin también pueden seleccionar Cuenta del servicio del Agente SQL para ejecutar este paso de trabajo.

  7. Seleccione el Servidor y la Base de datos en los que se ejecutará el paso de trabajo o escriba sus nombres.

  8. En el cuadro Comando, escriba la instrucción que se debe ejecutar o haga clic en Abrir para seleccionar una instrucción.

  9. Haga clic en la página Avanzadas para definir opciones para este paso de trabajo, como la acción que debe realizar el Agente SQL Server si el paso de trabajo se realiza correctamente o con errores, las veces que se debe intentar ejecutar el paso de trabajo y el lugar en el que se debe escribir la salida.

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar Transact-SQL

Para crear un paso de trabajo de comando de Analysis Services

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.

    -- Creates a job step that uses XMLA to create a relational data source that references the AdventureWorks2012 Microsoft SQL Server database
    USE msdb;
    GO
    EXEC sp_add_jobstep
        @job_name = N'Weekly Sales Data Backup',
        @step_name = N'Create a relational data source that references the AdventureWorks2012 Microsoft SQL Server database ',
        @subsystem = N'ANALYSISCOMMAND',
        @command = N' <Create xmlns="https://schemas.microsoft.com/analysisservices/2003/engine">
        <ParentObject>
            <DatabaseID>AdventureWorks2012</DatabaseID>
        </ParentObject>
        <ObjectDefinition>
            <DataSource xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="RelationalDataSource">
                <ID>AdventureWorks2012</ID>
                <Name>Adventure Works 2012</Name>
                <ConnectionString>Data Source=localhost;Initial Catalog=AdventureWorks2012;Integrated Security=True</ConnectionString>
                <ImpersonationInfo>
                    <ImpersonationMode>ImpersonateServiceAccount</ImpersonationMode>
                </ImpersonationInfo>
                <ManagedProvider>System.Data.SqlClient</ManagedProvider>
                <Timeout>PT0S</Timeout>
            </DataSource>
        </ObjectDefinition>
    </Create>', ;
    GO
    

Para obtener más información, vea sp_add_jobstep (Transact-SQL).

Icono de flecha usado con el vínculo Volver al principio[Top]

Para crear un paso de trabajo de consulta de Analysis Services

  1. En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.

  2. En la barra Estándar, haga clic en Nueva consulta.

  3. Copie y pegue el siguiente ejemplo en la ventana de consulta y haga clic en Ejecutar.

    -- Creates a job step that uses MDX to return data
    USE msdb;
    GO
    EXEC sp_add_jobstep
        @job_name = N'Weekly Sales Data Backup',
        @step_name = N'Returns the Internet sales amount by state',
        @subsystem = N'ANALYSISQUERY',
        @command = N' SELECT
       [Measures].[Internet Sales Amount] ON COLUMNS,
       [Customer].[State-Province].Members ON ROWS
    FROM [AdventureWorks2012]', 
        @retry_attempts = 5,
        @retry_interval = 5 ;
    GO
    

Para obtener más información, vea sp_add_jobstep (Transact-SQL).

Icono de flecha usado con el vínculo Volver al principio[Top]

Usar Objetos de administración de SQL Server

Para crear un paso de trabajo para script de PowerShell

Utilice la clase JobStep con un lenguaje de programación que seleccione, por ejemplo XMLA o MDX. Para obtener más información, vea Objetos de administración de SQL Server (SMO).

Icono de flecha usado con el vínculo Volver al principio[Top]