Como imprimir um relatório ReportViewer sem mostrar um formulário
-
06-09-2019 - |
Pergunta
Enquanto eu percebo que eu pudesse mostrar a forma fora da tela e escondê-lo, juntamente com muitas outras formas de WinForms feitiçaria hackish, eu prefiro ficar com o caminho zen e obter este direito fazer. Eu tenho um relatório local SSRS (de modo nenhum servidor) que eu quero dar ao usuário a opção de visualização ou impressão (em outras palavras, eu não quero forçá-los a visualizar para imprimir). Infelizmente, o controle ReportViewer reclama de seu "estado" quando tento imprimi-lo tanto como um componente Estou criando explicitamente no meu código (dentro de um bloco usando (), é claro) ou se eu tentar instanciar minha forma espectador e basta imprimir sem nunca mostrá-lo.
Existe um meio de fazer isso que vai sentar-se bem comigo, ou devo apenas mostrá-lo fora da tela e seguir em frente com a minha vida?
Solução
Eu tenho uma amostra que faz isso postado no meu blog aqui: http://blogs.msdn.com/brianhartman/archive/2009/02/27/manually-printing-a-report.aspx
O objecto LocalReport pode ser instanciada independentemente do controlo ReportViewer e utilizado directamente no código de amostra ligado a esse post. Ou você pode passar em ReportViewer.LocalReport mesmo se você não primeiro exibir o relatório na interface do usuário.
Outras dicas
Verifique isso e ver se isso ajuda ... http://scruffylookingcatherder.com/archive/2007/12/07/printing-reporting-services-2005-reports.aspx
Uma pequena explicação:. Ele está usando o serviço de web SSRS para processar o relatório de uma imagem EMF, em seguida, enviar a imagem para a impressora
Por favor, veja o link abaixo muito útil para você http: / /social.msdn.microsoft.com/Forums/en-US/9f52d79d-5baf-4e84-97d5-7dbba6623b89/printing-without-the-reportviewer