1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

crystal asp.net c#

Discussão em 'Web Development' iniciada por alfinete, 9 de Junho de 2008. (Respostas: 0; Visualizações: 820)

  1. alfinete

    alfinete Power Member

    estou em asp.net c#

    Código:
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using CrystalDecisions.CrystalReports.Engine;
    using CrystalDecisions.Shared;
    
    using CrystalDecisions.Enterprise;
    using System.IO;
    
    using System.Globalization;
    using System.Threading;
    
    namespace Sabatica
    {
        public partial class reciboteste : System.Web.UI.Page
        {
    
            #region Objectos
            /*cria uma var do tipo recigopdf*/
            rec_teste  crReportDocument = new rec_teste();
        
      
            CrystalDecisions.Shared.ParameterField paramn;
            CrystalDecisions.Shared.ParameterField paramescola;
            CrystalDecisions.Shared.ParameterField paramgrau;
            CrystalDecisions.Shared.ParameterField paramdesigna;
    
            
    
            #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)
            {
                Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("pt-PT");
                if (Session["user"] != null)
                {
    
                    Load_Data();
    
                }
                else
                    Response.Redirect("Default.aspx");
    
    
            }
    
            #endregion
    
    
            #region Métodos
    
    
    
            private void Load_Data()
            {
    
                MemoryStream oStream = new MemoryStream();
    
                InicializaReport(crReportDocument);
              
    
                oStream = (MemoryStream)crReportDocument.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat);
                //oStream = (MemoryStream)crReportDocumenthabilit.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 dr2;
               DataTable   dt;
                dr2 = d.dados_sit_cand(Session["user"].ToString());
                dt = d.habilitacoes_academicas(dr2[0].ToString()); 
    
                crReportDocument.Load(@"\rec_teste.rpt");
    
                paramn = crReportDocument.ParameterFields["numero"];
                paramescola = crReportDocument.ParameterFields["escolaexerce"];
                paramgrau = crReportDocument.ParameterFields["grau"];
                paramdesigna = crReportDocument.ParameterFields["designa"];
       
                 // sit prof
    
                if (dr2 != null)
                {
                    paramn.CurrentValues.AddValue("" + dr2[1].ToString());
                    paramescola.CurrentValues.AddValue("" + dr2[7].ToString());
    
    
                }
    
                foreach (DataRow row in dt.Rows )
                {
                  paramgrau.CurrentValues.AddValue("" + dt.Rows[0][1].ToString()  );
                  paramdesigna.CurrentValues.AddValue(""+ dt.Rows[0][2].ToString());
                }
          }
    
    
    
    
            #endregion
           
        }
    }
    tenho este code para chamar um rpt(crystal reports ) oq ual chama bem


    parametros normais

    paramn - parametro nome
    paramescola = parametro escola


    parametros que são colunas de uma tabela

    paramgrau
    paramdesigna
    ------------------------------------------------------------------

    dr2 = d.dados_sit_cand(Session["user"].ToString());

    cria um datarow atraves de um select criado nume store atraves do metodo "dados_sit_cand(string idcand)"

    dt = d.habilitacoes_academicas(dr2[0].ToString());

    cria um datatable atraves de um select criado nume store atraves do metodo "habilitacoes_academicas(string idsab)"





    os parametros paramn , paramescola chamam perfeitamente bem...

    so que os parametros paramgrau , paramdesigna como tem de formar uma linha com as colunas referentes a cada parametro, conforme o numero de registos da tabela , dão um pequeno problema so mostra o primeiro reg da tabela.

    gostava deum help
     

Partilhar esta Página