Cmdlets de PowerShell (modo de SharePoint de Reporting Services)
Al instalar SQL Server 2012 Reporting Services en modo de SharePoint, se instalan cmdlets de PowerShell para admitir servidores de informes en modo de SharePoint. Los cmdlets abarcan tres categorías de funcionalidad.
La instalación del proxy y el servicio compartido de SharePoint de Reporting Services.
El aprovisionamiento y administración de las aplicaciones de servicio de Reporting Services y servidores proxy asociados.
La administración de las características de Reporting Services, como las extensiones y las clave de cifrado.
Este tema contiene lo siguiente:
Cmdlet Summary
Shared Service Cmdlets
Service Application Cmdlets
Reporting Services functionality related Cmdlets
Basic Samples
Detailed Samples
Create a service application and proxy
Review and update a delivery extension
Get and set Properties of the Reporting Service Application Database
List Data Extensions
Change and list subscription owners
Resumen de los cmdlets
Para ejecutar los cmdlets es necesario abrir el Shell de administración de SharePoint. También puede usar el editor de la interfaz gráfica de usuario que se incluye con Microsoft Windows, Entorno de script integrado de Windows PowerShell (ISE). Para obtener más información, vea Iniciar Windows PowerShell en Windows Server (https://technet.microsoft.com/library/hh847814.aspx). En los resúmenes siguientes de cmdlet, las referencias a la aplicación de servicio 'bases de datos' se aplican a todas las bases de datos creadas y usadas por una aplicación de servicio de Reporting Services. Esto incluye la configuración, la creación de alertas y las bases de datos temporales.
Si ve un mensaje de error similar al siguiente al escribir los ejemplos de PowerShell:
- Install-SPRSService: El término "Install-SPRSService" no se reconoce como el nombre de un cmdlet, función, archivo de script o programa ejecutable. Compruebe la ortografía del nombre o si una ruta de acceso se incluyó, compruebe que la ruta de acceso es correcta e inténtelo de nuevo.
Se está produciendo uno de los problemas siguientes:
El modo de Reporting Services SharePoint no está instalado y, por tanto, los cmdlets de Reporting Services no están instalados.
Ejecutó el comando de PowerShell en Windows Powershell o Windows PowerShell ISE en lugar del Shell de administración de SharePoint. Use el Shell de administración de SharePoint o agregue el Complemento de SharePoint a la ventana de Windows PowerShell con el comando siguiente:
Add-PSSnapin Microsoft.SharePoint.PowerShell
Para obtener más información, vea Usar Windows PowerShell para administrar SharePoint 2013 (https://technet.microsoft.com/library/ee806878.aspx).
Para abrir el Shell de administración de SharePoint y ejecutar cmdlets
Haga clic en el botón Inicio.
Haga clic en el grupo Productos de Microsoft SharePoint.
Haga clic en Shell de administración de SharePoint.
Para ver la ayuda de la línea de comandos para un cmdlet, utilice el comando ‘Get-Help’ de PowerShell en el símbolo del sistema de PowerShell. Por ejemplo:
Get-Help Get-SPRSServiceApplicationServers
Top
Cmdlets de servicios compartidos y servidores proxy
La tabla siguiente contiene los cmdlets de PowerShell para el servicio compartido de SharePoint de Reporting Services.
Cmdlet |
Descripción |
---|---|
Install-SPRSService |
Instala y registra, o desinstala, el servicio compartido de Reporting Services. Esta operación solo se puede realizar en el equipo que tiene una instalación de SQL Server Reporting Services en modo de SharePoint. Para la instalación, se producen dos operaciones:
Para la desinstalación, se producen dos operaciones:
NOTA: Si hay otros equipos en la granja que tengan el servicio Reporting Services instalado o si todavía hay aplicaciones de servicio Reporting Services ejecutándose en la granja, se mostrará un mensaje de advertencia. |
Install-SPRSServiceProxy |
Instala y registra, o desinstala, el proxy de servicio de Reporting Services en la granja de SharePoint. |
Get-SPRSProxyUrl |
Obtiene las direcciones URL para acceder al servicio de Reporting Services. |
Get-SPRSServiceApplicationServers |
Obtiene todos los servidores de la granja de SharePoint que contienen una instalación del servicio compartido de Reporting Services. |
Top
Cmdlets de aplicaciones de servicio y servidores proxy
La tabla siguiente contiene los cmdlets de PowerShell para las aplicaciones de servicio de Reporting Services y sus servidores proxy asociados.
cmdlet |
Descripción |
---|---|
Get-SPRSServiceApplication |
Obtiene una o varias aplicaciones de servicio de Reporting Services. |
New-SPRSServiceApplication |
Crea una nueva aplicación de servicio de Reporting Services y las bases de datos asociadas. Parámetro LogonType: Especifica si el servidor de informes usa la cuenta del grupo de aplicaciones SSRS o un inicio de sesión de SQL Server para acceder a la base de datos del servidor de informes. Puede tener uno de los valores siguientes:
|
Remove-SPRSServiceApplication |
Quita la aplicación de servicio de Reporting Services especificada. También se quitarán las bases de datos asociadas. |
Set-SPRSServiceApplication |
Edita las propiedades de una aplicación de servicio de Reporting Services existente. |
New-SPRSServiceApplicationProxy |
Crea un nuevo proxy de aplicación de servicio de Reporting Services. |
Get-SPRSServiceApplicationProxy |
Obtiene uno o varios servidores proxy de la aplicación de servicio de Reporting Services. |
Dismount-SPRSDatabase |
Desmonta las bases de datos de la aplicación de servicio de Reporting Services. |
Remove-SPRSDatabase |
Quita las bases de datos de la aplicación de servicio de Reporting Services. |
Set-SPRSDatabase |
Establece las propiedades de las bases de datos asociadas a una aplicación de servicio de Reporting Services. |
Mount-SPRSDatabase |
Monta las bases de datos de una aplicación de servicio de Reporting Services. |
New-SPRSDatabase |
Crea las nuevas bases de datos para la aplicación de servicio de Reporting Services especificada. |
Get-SPRSDatabaseCreationScript |
Muestra el script de creación de bases de datos en la pantalla para una aplicación de servicio de Reporting Services. Este script se puede ejecutar a continuación en SQL Server Management Studio. |
Get-SPRSDatabase |
Obtiene una o varias bases de datos de la aplicación de servicio de Reporting Services. |
Get-SPRSDatabaseRightsScript |
Muestra el script de permisos de base de datos en la pantalla para una aplicación de servicio de Reporting Services. Solicita el usuario y la base de datos, y luego devuelve Transact-SQL que se puede ejecutar para modificar los permisos. Este script se puede ejecutar a continuación en SQL Server Management Studio. |
Get-SPRSDatabaseUpgradeScript |
Muestra el script de actualización de bases de datos en la pantalla. El script actualizará las bases de datos de la aplicación de servicio de Reporting Services a la versión de base de datos de la instalación de Reporting Services actual. |
Top
Cmdlets de funcionalidad personalizada de Reporting Services
Cmdlet |
Descripción |
---|---|
Update-SPRSEncryptionKey |
Actualiza la clave de cifrado para la aplicación de servicio de Reporting Services especificada y cifra de nuevo sus datos. |
Restore-SPRSEncryptionKey |
Restaura una clave de cifrado de la que se hizo copia de seguridad anteriormente para una aplicación de servicio de Reporting Services. |
Remove-SPRSEncryptedData |
Elimina los datos cifrados para la aplicación de servicio de Reporting Services especificada. |
Backup-SPRSEncryptionKey |
Realiza una copia de seguridad de la clave de cifrado para la aplicación de servicio de Reporting Services especificada. |
New-SPRSExtension |
Registra una nueva extensión con una aplicación de servicio de Reporting Services. |
Set-SPRSExtension |
Establece las propiedades de una extensión de Reporting Services existente. |
Remove-SPRSExtension |
Quita una extensión de una aplicación de servicio de Reporting Services. |
Get-SPRSExtension |
Obtiene una o varias extensiones de Reporting Services para una aplicación de servicio de Reporting Services. |
Get-SPRSSite |
Obtiene los sitios de SharePoint basándose en si está habilitada la característica "ReportingService". De forma predeterminada, se devuelven los sitios que habilitan la característica "ReportingService". |
Ejemplos básicos
Devolver una lista de cmdlets cuyo nombre contiene ‘SPRS’. Será la lista completa de cmdlets de Reporting Services.
Get-command –noun *SPRS*
O con un poco más detalle, enviar la salida a un archivo de texto denominado commandlist.txt
Get-command -noun *SPRS*| select name, definition |Format-list | Out-File c:\commandlist.txt
Instalar el servicio de SharePoint de Reporting Services y el proxy del servicio.
Install-SPRSService
Install-SPRSServiceProxy
Iniciar el servicio Reporting Services
get-spserviceinstance -all |where {$_.TypeName -like "SQL Server Reporting*"} | Start-SPServiceInstance
Escriba el siguiente comando desde el Shell de administración de SharePoint para devolver una lista filtrada de filas de un archivo de registro. El comando filtrará las líneas que contengan “ssrscustomactionerror”. En este ejemplo se examina el archivo de registro creado cuando se instaló rssharepoint.msi.
Get-content -path C:\Users\testuser\AppData\Local\Temp\rs_sp_0.log | select-string "ssrscustomactionerror"
Top
Ejemplos detallados
Además de los ejemplos siguientes, vea la sección "Script de Windows PowerShell" en el tema (Steps 1-4) Windows PowerShell script for Steps 1–4.
Crear una aplicación de servicio y un proxy
Este script de ejemplo realiza las tareas siguientes:
Crea una aplicación de servicio de Reporting Services y un proxy. El script asume que el grupo de aplicaciones “My App Pool” ya existe.
Agrega el proxy al grupo de servidores proxy predeterminado.
Concede acceso a la aplicación de servicio al puerto 80 de la base de datos de contenido de la aplicación web. El script asume que el sitio “http://sitename” ya existe.
# Create service application and service application proxy
$appPool = Get-SPServiceApplicationPool “My App Pool”
$serviceApp = New-SPRSServiceApplication “My RS Service App” –ApplicationPool $appPool
$serviceAppProxy = New-SPRSServiceApplicationProxy –Name “My RS Service App Proxy” –ServiceApplication $serviceApp
# Add service application proxy to default proxy group. Any web application that uses the default proxy group will now be able to use this service application.
Get-SPServiceApplicationProxyGroup –default | Add-SPServiceApplicationProxyGroupMember –Member $serviceAppProxy
# Grant application pool account access to the port 80 web application’s content database.
$webApp = Get-SPWebApplication “http://sitename”
$appPoolAccountName = $appPool.ProcessAccount.LookupName()
$webApp.GrantAccessToProcessIdentity($appPoolAccountName)
Revisar y actualizar una extensión de entrega
En el ejemplo siguiente de script de PowerShell se actualiza la configuración de la extensión de entrega por correo electrónico del servidor de informes para la aplicación de servicio denominada My RS Service App. Actualice los valores del nombre del servidor SMTP (<email server name>) y el alias de correo electrónico FROM (<your FROM email address>).
$app=get-sprsserviceapplication -Name "My RS Service App"
$emailCfg = Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
$emailXml = [xml]$emailCfg
$emailXml.SelectSingleNode("//SMTPServer").InnerText = “<email server name>”
$emailXml.SelectSingleNode("//SendUsing").InnerText = "2"
$emailXml.SelectSingleNode("//SMTPAuthenticate").InnerText = "2"
$emailXml.SelectSingleNode("//From").InnerText = '<your FROM email address>'
Set-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" -ExtensionConfiguration $emailXml.OuterXml
En el ejemplo anterior, si no supiera el nombre exacto de la aplicación de servicio, podría reescribir la primera instrucción para obtener la aplicación de servicio a partir de una búsqueda del nombre parcial. Por ejemplo:
$app=get-sprsserviceapplication | where {$_.name -like " My RS Ser *"}
El siguiente script devolverá los valores de configuración actual de la extensión de entrega por correo electrónico del servidor de informes para la aplicación de servicio denominada “My RS Service App”. El primer paso establece el valor de la variable $app en el objeto de la aplicación de servicio denominada "My RS Service App".
La segunda instrucción obtendrá la extensión de entrega por correo electrónico del servidor de informes para el objeto de aplicación de servicio de la variable $app, y seleccionará el XML de configuración.
$app=get-sprsserviceapplication –Name "My RS Service App"
Get-SPRSExtension -identity $app -ExtensionType "Delivery" -name "Report Server Email" | select -ExpandProperty ConfigurationXml
Top
Obtener y establecer las propiedades de la base de datos de la aplicación de servicio de informes
En primer lugar, en el ejemplo siguiente se devuelve una lista de las bases de datos y propiedades para que pueda determinar el GUID (identificador) de la base de datos que, a continuación, se proporcionará al comando establecido. Para obtener una lista completa de las propiedades, use Get-SPRSDatabase | format-list.
get-SPRSDatabase | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
A continuación se muestra un ejemplo de la salida. Determine el identificador de la base de datos que desea modificar y use el identificador en el cmdlet SET.
Id : 56f8d1bc-cb04-44cf-bd41-a873643c5a14
QueryTimeout : 120
ConnectionTimeout : 15
Status : Online
Server : SPServer Name=uetestb01
ServiceInstance : SPDatabaseServiceInstance
Set-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 -QueryTimeout 300
Para comprobar que el valor esté establecido, vuelva a ejecutar el cmdlet GET.
Get-SPRSDatabase –identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 | select id, querytimeout,connectiontimeout, status, server, ServiceInstance
Top
Elaborar una lista de extensiones de datos
En el siguiente ejemplo se recorre cada aplicación de servicio Reporting Services y se ofrece una lista de las extensiones de datos actuales para cada una.
$apps = Get-SPRSServiceApplication
foreach ($app in $apps)
{
Write-host -ForegroundColor "yellow" Service App Name $app.Name
Get-SPRSExtension -identity $app -ExtensionType “Data” | select name,extensiontype | Format-Table -AutoSize
}
Salida de ejemplo:
Name ExtensionType
---- -------------
SQL Data
SQLAZURE Data
SQLPDW Data
OLEDB Data
OLEDB-MD Data
ORACLE Data
ODBC Data
XML Data
SHAREPOINTLIST Data
Top
Cambios y la lista de propietarios de la suscripción
Vea Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription.
Top
Vea también
Conceptos
Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription
Obtener ayuda de SQL Server PowerShell
Otros recursos
Scripts de PowerShell de Administración de SharePoint de CodePlex