Cmdlets PowerShell para Modo do SharePoint do Reporting Services

Quando você instala SQL Server 2014 Reporting Services modo do SharePoint, os cmdlets do PowerShell são instalados para dar suporte a servidores de relatório no modo do SharePoint. Os cmdlets abrangem três categorias de funcionalidade.

  • Instalação do serviço compartilhado e proxy do SharePoint do Reporting Services.

  • Provisionamento e gerenciamento de aplicativos de serviço do Reporting Services e proxies associados.

  • Gerenciamento de recursos do Reporting Services, por exemplo, extensões e chaves de criptografia.

Aplica-se a: Reporting Services modo do SharePoint

Este tópico inclui o seguinte:

Resumo do cmdlet

Para executar os cmdlets, é necessário abrir o Shell de Gerenciamento do SharePoint. Você também pode usar o editor de interface gráfica do usuário incluído no Microsoft Windows, o Ambiente de Script Integrado do Windows PowerShell (ISE) . Para obter mais informações, consulte Starting Windows PowerShell on Windows Server (Iniciando o Windows PowerShell no Windows Server). Nos resumos de cmdlet a seguir, as referências a ‘bancos de dados’ do aplicativo de serviço referem-se a todos os bancos de dados criados e usados por um aplicativo de serviço do Reporting Services. Isso inclui a os bancos de dados de configuração, alerta e temp.

Se uma mensagem de erro semelhante à seguinte for exibida quando você digitar os exemplos do PowerShell:

  • Install-SPRSService: o termo "Install-SPRSService" não é reconhecido como
    nome de cmdlet, função, arquivo de script ou programa operável. Verifique a ortografia do nome ou se um caminho foi incluído, verifique se ele está correto e tente novamente.

Um destes problemas está ocorrendo:

  • O modo do SharePoint do Reporting Services não está instalado e, portanto, os cmdlets do Reporting Services não estão instalados.

  • Você executou o comando do PowerShell no Windows PowerShell ou no ISE do Windows PowerShell, e não no Shell de Gerenciamento do SharePoint. Use o Shell de Gerenciamento do SharePoint ou adicione o Snap-in do SharePoint à janela do Windows PowerShell com o seguinte comando:

    Add-PSSnapin Microsoft.SharePoint.PowerShell  
    

Para obter mais informações, consulte Usar Windows PowerShell para administrar o SharePoint 2013 (https://technet.microsoft.com/library/ee806878.aspx).

Para abrir p Shell de Gerenciamento do SharePoint e executar cmdlets

  1. Clique no botão Iniciar

  2. Clique no grupo Produtos do Microsoft SharePoint .

  3. Abra o Shell de Gerenciamento do SharePoint.

Para exibir a ajuda da linha de comando de um cmdlet, use o comando 'Get-Help' do PowerShell no prompt de comando do PowerShell. Por exemplo:

Get-Help Get-SPRSServiceApplicationServers

Cmdlets de serviço compartilhado e proxy

A tabela a seguir contém os cmdlets do PowerShell do serviço compartilhado SharePoint e Reporting Services.

Cmdlet Descrição
Install-SPRSService Instala e registra, ou desinstala, o serviço compartilhado Reporting Services. Isso só pode ser feito em um computador que tem o SQL Server Reporting Services instalado no modo do SharePoint. Para instalação, há duas operações:

1) O serviço Reporting Services está instalado no farm.

2) A instância de serviço Reporting Services é instalada no computador atual.

Para desinstalação, há duas operações:
1) O serviço Reporting Services é desinstalado do computador atual.
2) O serviço Reporting Services é desinstalado do farm.



OBSERVAÇÃO: se houver outros computadores no farm que tenham o serviço Reporting Services instalado ou se ainda houver aplicativos de serviço Reporting Services em execução no farm, uma mensagem de aviso será exibida.
Install-SPRSServiceProxy Instala e registra, ou desinstala, o proxy do serviço Reporting Services no farm do SharePoint.
Obtém-SPRSProxyUrl Obtém a(s) URL(s) de acesso ao serviço do Reporting Services.
Get-SPRSServiceApplicationServers Acessa todos os servidores no farm local do SharePoint que contém uma instalação do serviço compartilhado Reporting Services. Esse cmdlet é útil para upgrades do Reporting Services, para determinar quais servidores executam o serviço compartilhado e, portanto, quais precisam ser atualizados.

Cmdlets de serviço de aplicativo e proxy

A tabela a seguir contém cmdlets do PowerShell para aplicativos do serviço Reporting Services e seus proxies associados.

cmdlet Descrição
Get-SPRSServiceApplication Obtém um ou mais objetos de aplicativo do serviço Reporting Services.
New-SPRSServiceApplication Cria um novo aplicativo do serviço Reporting Services e os bancos de dados associados.

Parâmetro LogonType: especifica se o servidor de relatório usa a conta do Pool de Aplicativos do SSRS ou um logon do SQL Server para acessar o banco de dados do servidor de relatório. Pode ser um dos seguintes:

0 Autenticação do Windows

1 SQL Server

2 Conta do pool de aplicativos (padrão)
Remove-SPRSServiceApplication Remove o aplicativo do serviço Reporting Services especificado. Isso também removerá os bancos de dados associados.
Set-SPRSServiceApplication Edita as propriedades de um aplicativo do serviço Reporting Services existente.
New-SPRSServiceApplicationProxy Cria um novo proxy do aplicativo do serviço Reporting Services.
Get-SPRSServiceApplicationProxy Obtém um ou mais proxies de aplicativo do serviço Reporting Services.
Dismount-SPRSDatabase Desmonta os bancos de dados do aplicativo de serviço de um aplicativo do serviço Reporting Services.
Remove-SPRSDatabase Remove os bancos de dados do aplicativo de serviço de um aplicativo do serviço Reporting Services.
Set-SPRSDatabase Define as propriedades dos bancos de dados associados a um aplicativo do serviço Reporting Services.
Mount-SPRSDatabase Monta os bancos de dados de um aplicativo do serviço Reporting Services.
New-SPRSDatabase Cria novos bancos de dados do aplicativo de serviço para o aplicativo do serviço Reporting Services especificado.
Get-SPRSDatabaseCreationScript Gera o script de criação de banco de dados na tela de um aplicativo do serviço Reporting Services. Assim, você pode executar o script no SQL Server Management Studio.
Get-SPRSDatabase Obtém um ou mais bancos de dados de aplicativo do serviço Reporting Services. Use o comando para obter a ID do banco de dados do aplicativo de serviço para que você possa usar o comdlet Set-SPRSDatabase para alterar as propriedades, por exemplo querytimeout. Veja os exemplos neste tópico, Obter e definir propriedades do banco de dados do aplicativo Reporting Services, por exemplo, limite de banco de dados.
Get-SPRSDatabaseRightsScript Gera o script de direitos de banco de dados na tela de um aplicativo do serviço Reporting Services. O usuário e o banco de dados desejados serão solicitados e o transact SQL que você pode executar para modificar permissões é retornado. Assim, você pode executar esse script no SQL Server Management Studio.
Get-SPRSDatabaseUpgradeScript Gera um script de atualização de banco de dados na tela. O script atualizará os bancos de dados do aplicativo do serviço Reporting Services para a versão de banco de dados da instalação atual do Reporting Services.

Cmdlets de funcionalidade personalizada do Reporting Services

Cmdlet Descrição
Update-SPRSEncryptionKey Atualiza a chave de criptografia do aplicativo do serviço Reporting Services especificado e recriptografa seus dados.
Restore-SPRSEncryptionKey Restaura a chave de criptografia com backup anterior para um aplicativo do serviço Reporting Services.
Remove-SPRSEncryptedData Exclui os dados criptografados do aplicativo do serviço Reporting Services especificado.
Backup-SPRSEncryptionKey Atualiza a chave de criptografia do aplicativo de serviço especificado do Reporting Services e recriptografa seus dados.
New-SPRSExtension Registra uma nova extensão com um aplicativo do serviço Reporting Services.
Set-SPRSExtension Define as propriedades de uma extensão existente do Reporting Services.
Remove-SPRSExtension Remove uma extensão de um aplicativo do serviço Reporting Services.
Get-SPRSExtension Obtém uma ou mais extensões do Reporting Services para um aplicativo do serviço Reporting Services.

Os valores válidos são:

Entrega

DeliveryUI

Render

Dados

Segurança

Autenticação

EventProcessing

ReportItems

Designer

ReportItemDesigner

ReportItemConverter

ReportDefinitionCustomization
Get-SPRSSite Acessa sites do SharePoint com base na habilitação ou não do recurso "ReportingService". Por padrão, os sites que habilitam o recurso "ReportingService" são retornados.

Exemplos básicos

Retorne uma lista de cmdlets que contém 'SPRS' no nome. Esta será a lista completa de cmdlets do Reporting Services.

Get-command -noun *SPRS*  

Ou com um pouco mais de detalhes, conectada a um arquivo de texto denominado commandlist.txt

Get-Command -Noun *SPRS* | Select name, definition | Format-List | Out-File c:\commandlist.txt  

Instale o serviço SharePoint do Reporting Services e o proxy de serviço.

Install-SPRSService  
Install-SPRSServiceProxy  

Iniciar o serviço Reporting Services

Get-SPServiceInstance -all | where {$_.TypeName -like "SQL Server Reporting*"} | Start-SPServiceInstance  

Digite o seguinte comando do SharePoint Management Shell para retornar uma lista filtrada de linhas de um arquivo de log. O comando filtrará por linhas que contêm "ssrscustomactionerror". Este exemplo examina o arquivo de log criado quando o rssharepoint.msi foi instalado.

Get-Content -Path C:\Users\testuser\AppData\Local\Temp\rs_sp_0.log | Select-String "ssrscustomactionerror"  

Exemplos detalhados

Além das amostras a seguir, confira a seção "Script do Windows PowerShell" no tópico Scripts do Windows PowerShell para as Etapas 1 a 4.

Criar um aplicativo de serviço e proxy do Reporting Services

Este script de exemplo conclui as tarefas seguintes:

  1. Cria um aplicativo de serviço e proxy Reporting Services. O script supõe que o pool de aplicativos "My App Pool" já existe.

  2. Adicione o proxy ao grupo proxy padrão.

  3. Permita para o aplicativo de serviço o acesso ao banco de dados de conteúdo do aplicativo Web na porta 80. O script pressupõe o site "http://sitename" já 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 e atualizar uma extensão de entrega do Reporting Services

O exemplo de script PowerShell a seguir atualiza a configuração completa da extensão de entrega de email do servidor de relatório para o aplicativo de serviço denominado My RS Service App. Atualize os valores do servidor SMTP (<email server name>) e o alias de email 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  

No exemplo acima, se você não sabia o nome exato do aplicativo de serviço, poderia reescrever a primeira instrução para obter o aplicativo de serviço com base em uma pesquisa de nome parcial. Por exemplo:

$app = Get-SPRSServiceApplication | Where {$_.name -like " ssrs_testapp *"}  

O script a seguir retornará os valores de configuração atuais da extensão de entrega de email do servidor de relatório para o aplicativo de serviço denominado “Aplicativo Reporting Services”. A primeira etapa define o valor da variável $app para o objeto do aplicativo de serviço denominado "My RS Service App"

A segunda instrução obterá a extensão de entrega 'Report Server Email' para o objeto de aplicativo de serviço na variável $app e selecionará configurationXML

$app = Get-SPRSServiceapplication -Name "Reporting Services Application"  
Get-SPRSExtension -Identity $app -ExtensionType "Delivery" -Name "Report Server Email" | Select -ExpandProperty ConfigurationXml  

Você também pode reescrever as duas instruções acima como se fossem uma:

Get-SPRSServiceApplication -Name "Reporting Services Application" | Get-SPRSExtension -ExtensionType "Delivery" -Name "Report Server Email" | Select -ExpandProperty ConfigurationXml  

Obter e definir propriedades do banco de dados do aplicativo Reporting Services, por exemplo, limite de banco de dados

O seguinte exemplo retorna primeiro uma lista de banco de dados e propriedades, de forma que é possível determinar o banco de dados guid (ID) que você fornecerá ao comando do conjunto. Para obter uma lista completa das propriedades, consulte Get-SPRSDatabase | format-list.

Get-SPRSDatabase | Select id, querytimeout,connectiontimeout, status, server, ServiceInstance

O item a seguir é um exemplo de saída. Determine a ID para o banco de dados que você deseja modificar e use a ID no 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 verificar se o valor está definido, execute o cmdlet GET novamente.

Get-SPRSDatabase -Identity 56f8d1bc-cb04-44cf-bd41-a873643c5a14 | Select id, querytimeout,connectiontimeout, status, server, ServiceInstance  

Listar extensões de dados do Reporting Services – modo do SharePoint

O exemplo a seguir executa um loop em cada aplicativo do serviço Reporting Services e lista as extensões de dados atuais de cada um.

$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  
}  

Exemplo de saída:

  • Name ExtensionType

    ---- -------------

    SQL Data

    SQLAZURE Data

    SQLPDW Data

    OLEDB Data

    OLEDB-MD Data

    ORACLE Data

    ODBC Data

    XML Data

    SHAREPOINTLIST Data

Alterar e listar proprietários de assinatura

Consulte Usar o PowerShell para alterar e listar Reporting Services proprietários de assinatura e executar uma assinatura.

Consulte Também

Use PowerShell to Change and List Reporting Services Subscription Owners and Run a Subscription
Lista de verificação: use o PowerShell para verificar o PowerPivot para SharePoint
Scripts PowerShell scripts de gerenciamento do CodePlex SharePoint