Compartilhar via


Cmdlets do PowerShell para o modo do Reporting Services no SharePoint

Quando você instala o modo do SharePoint do SQL Server 2014 Reporting Services, 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: Modo do SharePoint do Reporting Services

Este tópico contém o seguinte:

Resumo do Cmdlet

Para executar os cmdlets, você precisa 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 aos '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 você vir uma mensagem de erro semelhante à seguinte ao digitar os exemplos do PowerShell:

  • Install-SPRSService: o termo 'Install-SPRSService' não é reconhecido como o
    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 o caminho 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 o Windows PowerShell para administrar o SharePoint 2013 (https://technet.microsoft.com/library/ee806878.aspx).

Para abrir o Shell de Gerenciamento do SharePoint e executar cmdlets

  1. Clique no botão Iniciar

  2. Clique no grupo Produtos do Microsoft SharePoint .

  3. Clique no Shell de Gerenciamento do SharePoint.

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

Get-Help Get-SPRSServiceApplicationServers

Cmdlets de Serviços Compartilhados 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 no computador que tem uma instalação do SQL Server Reporting Services no modo do SharePoint. Para instalação, há duas operações:

1) O serviço Reporting Services está instalado na fazenda.

2) A instância do 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 da fazenda.



OBSERVAÇÃO: se houver outros computadores no farm que tenham o serviço Reporting Services instalado ou se ainda houver aplicativos de serviço do 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 Aplicação de Serviço 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 modificar propriedades, por exemplo, o querytimeout. Veja o exemplo neste tópico, Obter e definir propriedades do banco de dados do aplicativo Reporting Servicea, por exemplo, tempo limite do banco de dados.
Get-SPRSDatabaseRightsScript Gera o script de direitos de banco de dados na tela de um aplicativo do serviço Reporting Services. Ele solicitará o usuário e o banco de dados desejados e, em seguida, retornará o SQL de transação que você pode executar para modificar as permissões. 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 de aplicativo do serviço Reporting Services para a versão do 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

renderizar

Dados

Segurança

Autenticação

EventProcessing

Itens de Relatório

Desenhista

ReportItemDesigner

ReportItemConverter

PersonalizaçãoDaDefiniçãoDeRelatório
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, sendo direcionado para um arquivo de texto chamado 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 comando a seguir do Shell de Gerenciamento do SharePoint para retornar uma lista filtrada de linhas de um arquivo de log. O comando filtrará as 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 dos exemplos a seguir, consulte a seção "Script do Windows PowerShell" no tópico script do Windows PowerShell para 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 do PowerShell a seguir atualiza a configuração da extensão de entrega de email do servidor de relatório para o aplicativo de serviço chamado 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 souber o nome exato do aplicativo de serviço, poderá reescrever a primeira instrução para localizar o aplicativo de serviço com base em uma pesquisa do nome parcial. Por exemplo:

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

O script a seguir retornará os valores de configuração atuais para a extensão de entrega de e-mail do servidor de relatórios para o aplicativo de serviço chamado "Reporting Services Application". A primeira etapa define o valor da variável $app para o objeto do aplicativo de serviço que tem um nome de " My RS Service App"

A segunda instrução obterá a extensão de entrega 'Email do Servidor de Relatório' para o objeto de aplicativo de serviço na variável $app e selecionará o 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 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 Servicea, por exemplo, tempo limite do 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

Veja a seguir um exemplo da 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 proprietários de assinatura do Reporting Services e executar uma assinatura.

Consulte Também

Usar o PowerShell para alterar e listar proprietários de assinatura do Reporting Services e executar uma assinatura
CheckList: usar o PowerShell para verificar o PowerPivot no SharePoint
Scripts do PowerShell de Gerenciamento do SharePoint CodePlex