Ejemplo n.º 1
0
        protected void btnAceptar_Click(object sender, EventArgs e)
        {
            if (!string.IsNullOrWhiteSpace(txtContrato.Text))
            {
                hidContrato.Value = txtContrato.Text;
                DataRow   drCabecera = _contratoBll.ContratoCabecera(hidContrato.Value.ToString());
                DataTable dtDetalle  = _contratoBll.ContratoDetalle(hidContrato.Value.ToString());
                if (drCabecera != null && dtDetalle.Rows.Count > 0)
                {
                    lblError.Visible = false;
                    ReportDataSource rdsCabecera = new ReportDataSource();
                    rdsCabecera.Name  = "dsRepContratoCab";
                    rdsCabecera.Value = drCabecera.Table;

                    ReportDataSource rdsDetalle = new ReportDataSource();
                    rdsDetalle.Name  = "dsRepContratoDet";
                    rdsDetalle.Value = dtDetalle;

                    rptViewContrato.LocalReport.DataSources.Clear();
                    rptViewContrato.LocalReport.DataSources.Add(rdsCabecera);
                    rptViewContrato.LocalReport.DataSources.Add(rdsDetalle);
                    rptViewContrato.LocalReport.Refresh();

                    //Si no existe, creamos el documento
                    string nombrepdf = ExportReportToPDF("RepContratoSAP_" + hidContrato.Value.ToString() + "_" + usuarioActual);
                    if (nombrepdf != string.Empty)
                    {
                        //Cargamos el PDFViewer
                        string server = ConfigurationManager.AppSettings["servidor"];
                        ScriptManager.RegisterStartupScript(this, typeof(Page), "invocarfuncion", "CargarDocumento('" + nombrepdf + "', '" + server + "');", true);
                    }
                    else
                    {
                        ScriptManager.RegisterStartupScript(this, typeof(Page), "invocarfuncion", "CargarDocumento();", true);
                    }
                }
                else
                {
                    lblError.Text    = "No hay Ninguna Coincidencia para el Numero de Contrato";
                    lblError.Visible = true;
                    rptViewContrato.LocalReport.DataSources.Clear();
                }
            }
        }