ButterflyEffect
Power Member
Preciso de a informação processada numa form seja enviada para impressora com um botao imprimir ou gerar um pdf. Em aspnet. Alguém pode ajudarm!!!!
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript">
if(window.history.forward(1) != null)
{
window.history.forward(1);
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>
public partial class recibopdf : System.Web.UI.Page
{
#region Objectos
/*cria uma var do tipo recigopdf*/
reclicenca crReportDocument = new reclicenca();
protected CrystalDecisions.CrystalReports.Engine.ReportDocument reportDocument1 = new ReportDocument();
//criação dos parametros
//informação pessoal
CrystalDecisions.Shared.ParameterField paramnome;
CrystalDecisions.Shared.ParameterField parammorada;
CrystalDecisions.Shared.ParameterField paramlocalidade;
CrystalDecisions.Shared.ParameterField paramcodpostal;
CrystalDecisions.Shared.ParameterField paramident;
CrystalDecisions.Shared.ParameterField paramnumero;
CrystalDecisions.Shared.ParameterField paramnacionalidade;
CrystalDecisions.Shared.ParameterField paramdatanasc;
CrystalDecisions.Shared.ParameterField paramemail;
//situação profissional
CrystalDecisions.Shared.ParameterField paramtipoprovimento;
CrystalDecisions.Shared.ParameterField paramqzp;
CrystalDecisions.Shared.ParameterField paramnumescprovimento;
CrystalDecisions.Shared.ParameterField paramnomeescprovimento;
CrystalDecisions.Shared.ParameterField paradreescprovimento;
CrystalDecisions.Shared.ParameterField paramqzpescprovimento;
CrystalDecisions.Shared.ParameterField paramnumescexerce;
CrystalDecisions.Shared.ParameterField paramnomeescexerce;
CrystalDecisions.Shared.ParameterField paradreescexerce;
CrystalDecisions.Shared.ParameterField paramqzpescexerce;
CrystalDecisions.Shared.ParameterField paramgruporecrutamento;
CrystalDecisions.Shared.ParameterField parammodalidadeensino;
CrystalDecisions.Shared.ParameterField paramnivelensino;
//identificação de pedido
CrystalDecisions.Shared.ParameterField paramduracao;
CrystalDecisions.Shared.ParameterField parampartirde;
CrystalDecisions.Shared.ParameterField paramdatasub;
#endregion
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
base.OnInit(e);
}
#endregion
#region Eventos
private void Page_Load(object sender, System.EventArgs e)
{
if (Session["candidato"] != null)
{
Load_Data();
}
else
Response.Redirect("default.aspx");
}
#endregion
#region Métodos
private void Load_Data()
{
MemoryStream oStream = new MemoryStream();
InicializaReport(crReportDocument);
oStream = (MemoryStream)reportDocument1.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";
Response.BinaryWrite(oStream.ToArray());
Response.End();
}
//Funções Genéricas
private void InicializaReport(ReportClass crReportDocument)
{
Dados d = new Dados();
DataRow dr;
DataRow dr2,dr3,dr4;
dr = d.dadosDocente(Session["candidato"].ToString());
dr2 = d.Licenca(Session["candidato"].ToString ());
//grupo recrutamento
Session["grupo"] = dr2[6].ToString();
d.nome_gruporecrutamento(Session["grupo"].ToString());
Session["nome"] = d.gruporecrutamento;
dr3 = d.Escola_Qzp_DRE(Session["idqzp"].ToString ());
dr4 = d.Escola_Qzp_DRE(Session["idqzp2"].ToString());
reportDocument1.Load(@"C:\projectos\licensas_sem_venc_projs\Licencas\Licencas\reclicenca.rpt");
//chamada de parameterfields do crystal
paramnome = reportDocument1.ParameterFields["Nome"];
parammorada = reportDocument1.ParameterFields["morada"];
paramlocalidade = reportDocument1.ParameterFields["localidade"];
paramcodpostal = reportDocument1.ParameterFields["codigopostal"];
paramident = reportDocument1.ParameterFields["identificacao"];
paramnumero = reportDocument1.ParameterFields["numero"];
paramnacionalidade = reportDocument1.ParameterFields["nacionalidade"];
paramdatanasc = reportDocument1.ParameterFields["datanascimento"];
paramemail = reportDocument1.ParameterFields["email"];
//situação prof
paramtipoprovimento = reportDocument1.ParameterFields["tipoprovimento"]; ;
paramqzp = reportDocument1.ParameterFields["qzp"];
paramnumescprovimento = reportDocument1.ParameterFields["numescolaprovimento"]; ;
paramnomeescprovimento = reportDocument1.ParameterFields["nomeescolaprovimento"]; ;
paradreescprovimento = reportDocument1.ParameterFields["dreescolaprovimento"]; ;
paramqzpescprovimento = reportDocument1.ParameterFields["qzpescolaprovimento"]; ;
paramnumescexerce = reportDocument1.ParameterFields["numescolaexerce"];
paramnomeescexerce = reportDocument1.ParameterFields["nomeescolaexerce"];
paradreescexerce = reportDocument1.ParameterFields["dreescolaexerce"];
paramqzpescexerce = reportDocument1.ParameterFields["qzpescolaexerce"];
paramgruporecrutamento = reportDocument1.ParameterFields["gruporecrutamento"];
parammodalidadeensino = reportDocument1.ParameterFields["modalidadeensino"];
paramnivelensino = reportDocument1.ParameterFields["nivelensino"];
//identificação de pedido
paramduracao = reportDocument1.ParameterFields["duracao"];
parampartirde = reportDocument1.ParameterFields["efeitoapartir"];
paramdatasub = reportDocument1.ParameterFields["data"];
//info pessoal
if (dr != null)
{
//atribuição do valor ao parametro
paramnome.CurrentValues.AddValue("" + dr[1].ToString());
parammorada.CurrentValues.AddValue("" + dr[10].ToString());
paramlocalidade.CurrentValues.AddValue("" + dr[12].ToString());
paramcodpostal.CurrentValues.AddValue("" + dr[13].ToString());
paramident.CurrentValues.AddValue("" + dr[2].ToString());
paramnumero.CurrentValues.AddValue(""+dr[3].ToString());
paramnacionalidade.CurrentValues.AddValue(""+dr[7].ToString());
paramdatanasc.CurrentValues.AddValue("" + dr[4].ToString().Substring(0, 10));
paramemail.CurrentValues.AddValue("" + dr[20].ToString());
}
// sit prof
if (dr2 != null)
{
if (dr2[2].ToString().Trim() == "QE")
{
paramtipoprovimento.CurrentValues.AddValue("Quadro Escola");
paramqzp.CurrentValues.AddValue(" Não avaliado");
}
if (dr2[2].ToString().Trim() == "QZP")
{
paramtipoprovimento.CurrentValues.AddValue("Quadro zona pedagógica");
// qzp
//Session["idqzp"] = dr[3].ToString();
d.nomeqzp(Session["ddlQZP"].ToString ());
Session["nomeqzp"] = d.nome_qzp;
paramqzp.CurrentValues.AddValue(""+ Session["nomeqzp"].ToString());
}
paramnumescprovimento.CurrentValues.AddValue("" + Session["idqzp"].ToString());
paramnomeescprovimento.CurrentValues.AddValue(""+dr3[1].ToString());
paradreescprovimento.CurrentValues.AddValue("" + dr3[3].ToString());
paramqzpescprovimento.CurrentValues.AddValue(""+dr3[2].ToString());
paramnumescexerce.CurrentValues.AddValue("" + Session["idqzp2"].ToString());
paramnomeescexerce.CurrentValues.AddValue("" + dr4[1].ToString());
paradreescexerce.CurrentValues.AddValue("" + dr4[3].ToString());
paramqzpescexerce.CurrentValues.AddValue("" + dr4[2].ToString());
}
paramgruporecrutamento.CurrentValues.AddValue("" + Session["nome"].ToString());
if (dr2[7].ToString() == "2")
{
parammodalidadeensino.CurrentValues.AddValue("Especial");
}
if (dr2[7].ToString() == "1")
{
parammodalidadeensino.CurrentValues.AddValue("regular");
}
if (dr2[8].ToString() == "1")
paramnivelensino.CurrentValues.AddValue("Educação pré escolar");
if (dr2[8].ToString() == "2")
paramnivelensino.CurrentValues.AddValue("1º ciclo");
if (dr2[8].ToString() == "3")
paramnivelensino.CurrentValues.AddValue("2º ciclo");
if (dr2[8].ToString() == "4")
paramnivelensino.CurrentValues.AddValue("Secundário");
//identificação de pedido
if (dr2[9].ToString() == "1")
{
paramduracao.CurrentValues.AddValue("Um ano");
}
if (dr2[9].ToString() == "2")
{
paramduracao.CurrentValues.AddValue("Longa Duração");
}
parampartirde.CurrentValues.AddValue("" + dr2[10].ToString().Substring(0, 10));
paramdatasub.CurrentValues.AddValue("" + dr2[11].ToString().Substring(0, 10));
}
#endregion
}
CrystalDecisions.Shared.ParameterField paramnome;
paramnome = reportDocument1.ParameterFields["Nome"];
paramnome.CurrentValues.AddValue("" + dr[1].ToString());
reclicenca crReportDocument = new reclicenca();
protected CrystalDecisions.CrystalReports.Engine.ReportDocument reportDocument1 = new ReportDocument();
private void Load_Data()
{
MemoryStream oStream = new MemoryStream();
InicializaReport(crReportDocument);
oStream = (MemoryStream)reportDocument1.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/pdf";
Response.BinaryWrite(oStream.ToArray());
Response.End();
}
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using CrystalDecisions.Enterprise;
using System.IO;