Pergunta

Posso usar um Powershell para gerar e imprimir um relatório SSRS (com parâmetros) em uma impressora de rede.

Usarei um trabalho do SQL Agent para pesquisar uma tabela para novas entradas de pedidos.Quando um pedido chega, quero gerar um relatório SSRS e imprimi-lo em uma das muitas impressoras remotas (a impressora será um dos parâmetros de entrada) em nossa rede, por exemplo, imprimir um ticket de coleta no armazém apropriado quando um pedido for feito .

Atualmente usamos arquivos em lote para imprimir em impressoras locais, mas o programa trava com frequência e não é bem dimensionado.

Foi útil?

Solução

Nesse caso:
Nome do relatório:Sistema de ingressos
Os parâmetros são:Data e Departamento
Formato do relatório:PDF

#Place adobe in your path
$env:Path = $env:Path + ";C:\Program Files (x86)\Adobe\Reader 11.0\Reader"

#Specify variables and pass parameters and specify format of report PDF (to keep things simple)
$url = "http://$serverName/ReportServer?/$reportFolder/Ticket+System&Date=3-31-2014&Department=Finance&rs:Format=PDF"

#Use alternative credentials as needed to access report server
$webclient = New-Object System.Net.WebClient
$webclient.UseDefaultCredentials = $TRUE

$file = "C:\temp\report.pdf"
$webclient.DownloadFile($url,$file)

#Specify printer \\server\name
$printer = "\\NorthSide\SharpPrinter"

#The /s /o switch may not be necessary. You can test it out.
AcroRd32.exe /s /o /t $file $printer

Get-Process AcroRd32.exe | kill

Referências:Este link indicará como passar parâmetros para um relatório via urlhttp://msdn.microsoft.com/en-us/library/ms155391.aspx

Este link indicará como acessar um relatório em formato imprimível via urlhttp://msdn.microsoft.com/en-us/library/ms154040.aspx

Este link mostrará como usar o PowerShell para gravar este arquivo no sistema de arquivos via URL.http://teusje.wordpress.com/2011/02/19/download-file-with-powershell/

Este link mostrará como enviar o trabalho para o spooler.Usando Powershell versão 4.0http://technet.microsoft.com/en-us/library/hh849886.aspx

Se você estiver tendo problemas para usar o PowerShell em um trabalho de agente SQL, como alternativa, eu faria a pesquisa com um trabalho do Agendador de tarefas e consultaria seu banco de dados usando o módulo SQLPS.

Espero que ajude.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top