Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Marianna Gonçalves

[Resolvido] Relatório gerando página duplcicada

Mensagens Recomendadas

Marianna Gonçalves

Bom dia pessoal,

Estou gerando um relatório .pdf a partir do visual studio ultimate 2013, mas quando ele gera o pdf cria um página em branco, com cabeçalho e rodapé, já tentei alterar as configurações, até consegui gerar mais páginas em branco, mas não consigo resolver esse bug que gera a segunda página.

Grata,

Marianna.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Boa tarde,

Coloca cá o código que gera o relatório.

Cordiais cumprimentos,

Apcosantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Marianna Gonçalves
using Microsoft.Reporting.WebForms;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Projeto___SIMP
{
public partial class frmHistoriaClinica : Form
{
	public frmHistoriaClinica()
	{
		InitializeComponent();
	}

	private void button7_Click(object sender, EventArgs e)
	{
		//adicionar uma nova linha entre "___"
		richHistoriaClinica.AppendText(System.Environment.NewLine + "_____" +

		//pegar data e hora atual + adicionar nova linha
		DateTime.Now.ToString() + "_____" + System.Environment.NewLine);

		//pular cursor para linha debaixo
		richHistoriaClinica.Focus();
		richHistoriaClinica.SelectionLength = 0;

	}

	private void button3_Click(object sender, EventArgs e)
	{
		frmSolicitarExame novofrm = new frmSolicitarExame();
		novofrm.ShowDialog();
	}

	private void richHistoriaClinica_TextChanged(object sender, EventArgs e)
	{

	}

	private void btnSolicitarExame_Click(object sender, EventArgs e)
	{
		frmSolicitarExame novofrm = new frmSolicitarExame();
		novofrm.ShowDialog();
	}

	private void btnAtestadoMedico_Click(object sender, EventArgs e)
	{
		var frmQD = new frmQuantidadeDias();
		DialogResult dr = frmQD.ShowDialog();
		if (dr == DialogResult.OK)
		{
			ReportViewer reportViewer = new ReportViewer();
			reportViewer.ProcessingMode = ProcessingMode.Local;

			//caminho para encontrar o relatório
			reportViewer.LocalReport.ReportEmbeddedResource = "Projeto___SIMP.MeuRelatorio.rdlc";

			//parametros do relatório
			List<ReportParameter> listReportParameter =
			new List<ReportParameter>();
			listReportParameter.Add(new ReportParameter("Nome", txtNome.Text));
			listReportParameter.Add(new ReportParameter("Dias", frmQD.Dias.ToString()));
			reportViewer.LocalReport.SetParameters(listReportParameter);

			//renderizar para PDF
			Warning[] warnings;
			string[] streamids;
			string mimeType;
			string encoding;
			string extension;

			byte[] bytePDF = reportViewer.LocalReport.Render(
				"Pdf", null, out mimeType, out encoding, out extension, out streamids, out warnings
				);


			FileStream fileStreamPDF = null;
			string nomeArquivoPDF = Path.GetTempPath() + "RelatorioAtestado" + DateTime.Now.ToString("dd_MM_yyyy - HH_mm_ss") + ".pdf";
			fileStreamPDF = new FileStream(nomeArquivoPDF, FileMode.Create);
			fileStreamPDF.Write(bytePDF, 0, bytePDF.Length);
			fileStreamPDF.Close();
			Process.Start(nomeArquivoPDF);

		}
	}

	private void frmHistoriaClinica_Load(object sender, EventArgs e)
	{

	}


}
}

Editado por apocsantos
geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
apocsantos

Boa noite,

private void btnAtestadoMedico_Click(object sender, EventArgs e)
               {
                       var frmQD = new frmQuantidadeDias();
                       DialogResult dr = frmQD.ShowDialog();
                       if (dr == DialogResult.OK)
                       {
                               ReportViewer reportViewer = new ReportViewer();
                               reportViewer.ProcessingMode = ProcessingMode.Local;
                               //caminho para encontrar o relatório
                               reportViewer.LocalReport.ReportEmbeddedResource = "Projeto___SIMP.MeuRelatorio.rdlc";
                               //parametros do relatório
                               List<ReportParameter> listReportParameter =
                               new List<ReportParameter>();
                               listReportParameter.Add(new ReportParameter("Nome", txtNome.Text));
                               listReportParameter.Add(new ReportParameter("Dias", frmQD.Dias.ToString()));
                               reportViewer.LocalReport.SetParameters(listReportParameter);
                                //Altera a proriedade  ConsumeContainerWhiteSpace, para true.
                                 reportViewer.ConsumeContainerWhiteSpace = true;
                               //renderizar o pdf
                       }
               }

Não tenho a certeza se irá produzir o efeito desejado, pois não consegui replicar a situação.

Cordiais cumprimentos,

Apocsantos


"A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"

assinatura.jpg

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.