protected void BtngEnviar_Click(object sender, EventArgs e)
        {
            string sLicenciatario  = string.Empty;
            string sNoContrato     = string.Empty;
            string sTxtComentarios = txtcomentarios.Text;

            if (!string.IsNullOrEmpty(numcontrato.Value))
            {
                DBConn oConn = new DBConn();
                if (oConn.Open())
                {
                    cReporteVenta oReporteVenta = new cReporteVenta(ref oConn);
                    oReporteVenta.NumContrato = numcontrato.Value;
                    oReporteVenta.Periodo     = periodo.Value;
                    oReporteVenta.AnoReporte  = ano_reporte.Value;
                    oReporteVenta.EstReporte  = "C";
                    DataTable dtReporteVenta = oReporteVenta.Get();
                    if (dtReporteVenta != null)
                    {
                        if (dtReporteVenta.Rows.Count > 0)
                        {
                            foreach (DataRow oRow in dtReporteVenta.Rows)
                            {
                                oReporteVenta.CodigoReporteVenta = oRow["cod_reporte_venta"].ToString();
                                oReporteVenta.EstReporte         = "P";
                                oReporteVenta.Accion             = "EDITAR";
                                oReporteVenta.Put();
                            }
                        }
                    }
                    dtReporteVenta = null;

                    cContratos oContratos = new cContratos(ref oConn);
                    oContratos.NumContrato = numcontrato.Value;
                    DataTable dtContrato = oContratos.Get();
                    if (dtContrato != null)
                    {
                        if (dtContrato.Rows.Count > 0)
                        {
                            sNoContrato = dtContrato.Rows[0]["no_contrato"].ToString();

                            cDeudor oDeudor = new cDeudor(ref oConn);
                            oDeudor.NKeyDeudor = dtContrato.Rows[0]["nkey_deudor"].ToString();
                            DataTable dtDeudor = oDeudor.Get();
                            if (dtDeudor != null)
                            {
                                if (dtDeudor.Rows.Count > 0)
                                {
                                    sLicenciatario = dtDeudor.Rows[0]["snombre"].ToString();
                                }
                            }
                            dtDeudor = null;
                        }
                    }
                    dtContrato = null;
                }
                oConn.Close();
            }
            else
            {
                DBConn oConn = new DBConn();
                if (oConn.Open())
                {
                    cReporteVenta oReporteVenta = new cReporteVenta(ref oConn);
                    oReporteVenta.EstReporte = "C";
                    DataTable dtReporteVenta = oReporteVenta.GettingForInvoice();
                    if (dtReporteVenta != null)
                    {
                        if (dtReporteVenta.Rows.Count > 0)
                        {
                            foreach (DataRow oRow in dtReporteVenta.Rows)
                            {
                                oReporteVenta.NumContrato = oRow["num_contrato"].ToString();
                                oReporteVenta.Periodo     = oRow["periodo_q"].ToString();
                                oReporteVenta.AnoReporte  = oRow["ano_reporte"].ToString();
                                oReporteVenta.EstReporte  = "C";
                                DataTable dtVenta = oReporteVenta.Get();
                                if (dtVenta != null)
                                {
                                    if (dtVenta.Rows.Count > 0)
                                    {
                                        foreach (DataRow oRowVenta in dtVenta.Rows)
                                        {
                                            oReporteVenta.CodigoReporteVenta = oRowVenta["cod_reporte_venta"].ToString();
                                            oReporteVenta.EstReporte         = "P";
                                            oReporteVenta.Accion             = "EDITAR";
                                            oReporteVenta.Put();
                                        }
                                    }
                                }
                                dtVenta = null;
                            }
                        }
                    }
                    dtReporteVenta = null;
                }
                oConn.Close();
            }

            StringBuilder sMensaje = new StringBuilder();

            sMensaje.Append("<html>");
            sMensaje.Append("<body>");
            if (!string.IsNullOrEmpty(numcontrato.Value))
            {
                sMensaje.Append("Licenciatario : ").Append(sLicenciatario).Append("<br>");
                sMensaje.Append("Contrato : ").Append(sNoContrato).Append("<br>");
                sMensaje.Append("Periodo : ").Append(periodo.Value).Append("<br>");
            }
            sMensaje.Append("Motivo Rechazo : ").Append(sTxtComentarios).Append("<br>");
            sMensaje.Append("</body>");
            sMensaje.Append("</html>");

            Emailing oEmailing = new Emailing();

            oEmailing.FromName = Application["NameSender"].ToString();
            oEmailing.From     = Application["EmailSender"].ToString();
            oEmailing.Address  = Application["EmailSender"].ToString();
            if (!string.IsNullOrEmpty(numcontrato.Value))
            {
                oEmailing.Subject = "Rechazo de factura periodo " + periodo.Value + ", contrato " + sNoContrato + " de Licenciatario " + sLicenciatario;
            }
            else
            {
                oEmailing.Subject = "Rechazo de todas las facturas de periodos del sistema Licenciatario ";
            }
            oEmailing.Body = sMensaje;

            StringBuilder js = new StringBuilder();

            js.Append("function LgRespuesta() {");
            if (oEmailing.EmailSend())
            {
                js.Append(" window.radalert('El rechazo fue enviado exitosamente.', 400, 100,''); ");
            }
            else
            {
                js.Append(" window.radalert('El rechazo no pudo ser enviado, intente más tarde.', 400, 100,''); ");
            }
            js.Append(" Sys.Application.remove_load(LgRespuesta); ");
            js.Append("};");
            js.Append("Sys.Application.add_load(LgRespuesta);");
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "LgRespuesta", js.ToString(), true);

            txtcomentarios.Text    = string.Empty;
            bx_msRechazo.Visible   = false;
            bx_msRealizado.Visible = true;
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            oWeb.ValidaSession();
            oUsuario = oWeb.GetObjUsuario();

            if (!IsPostBack)
            {
                hddCodReporteVenta.Value = oWeb.GetData("CodReporteVenta");
                hddMesReporte.Value      = oWeb.GetData("MesReporte");
                hddAnoReporte.Value      = oWeb.GetData("AnoReporte");
                lblmesventa.Text         = "Mes de venta: " + oWeb.getMes(int.Parse(hddMesReporte.Value)).ToUpper() + " / " + hddAnoReporte.Value;

                DBConn oConn = new DBConn();
                if (oConn.Open())
                {
                    cReporteVenta oReporteVenta = new cReporteVenta(ref oConn);
                    oReporteVenta.CodigoReporteVenta = hddCodReporteVenta.Value;
                    DataTable tblReporteVenta = oReporteVenta.Get();
                    if (tblReporteVenta != null)
                    {
                        if (tblReporteVenta.Rows.Count > 0)
                        {
                            cContratos oContratos = new cContratos(ref oConn);
                            oContratos.NumContrato = tblReporteVenta.Rows[0]["num_contrato"].ToString();
                            DataTable dtContrato = oContratos.Get();
                            if (dtContrato != null)
                            {
                                if (dtContrato.Rows.Count > 0)
                                {
                                    lblcontrato.Text     = "Contrato: " + dtContrato.Rows[0]["no_contrato"].ToString();
                                    hddNumContrato.Value = tblReporteVenta.Rows[0]["num_contrato"].ToString();
                                    hddNoContrato.Value  = dtContrato.Rows[0]["no_contrato"].ToString();
                                }
                            }
                            dtContrato = null;
                        }
                    }
                    tblReporteVenta = null;
                }
                oConn.Close();


                if (!string.IsNullOrEmpty(oWeb.GetData("indVentaAnterio")))
                {
                    oConn = new DBConn();
                    if (oConn.Open())
                    {
                        cDetalleVenta DetalleVenta = new cDetalleVenta(ref oConn);
                        DetalleVenta.CodigoReporteVenta = hddCodReporteVenta.Value;
                        DataTable td = DetalleVenta.Get();
                        if (td != null)
                        {
                            if (td.Rows.Count == 0)
                            {
                                btnGuardar.Visible = false;
                                lblAlerta.Text     = "<strong>ATENCION!</strong> Se ha detectado un ingreso erroneo de ventas para el mes de <strong>" + oWeb.getMes(int.Parse(hddMesReporte.Value)).ToUpper() + "</strong>. Para corregirlo por favor presione el botón <strong>Cancelar</strong>, y luego vuelva a cargar las ventas.";
                            }
                            else
                            {
                                lblAlerta.Text = "<strong>ATENCION!</strong> Usted tiene ventas ingresadas para el mes de <strong>" + oWeb.getMes(int.Parse(hddMesReporte.Value)).ToUpper() + "</strong>, si esta de acuerdo con estas, presione el botón <strong>Autorizar Periodo</strong> para terminar con el proceso de lo contrario presione el botón <strong>Cancelar</strong>.";
                            }
                        }
                        td = null;
                    }
                    oConn.Close();
                }
                else
                {
                    lblAlerta.Text = "<strong>ATENCION!</strong> Para terminar el proceso, presione el botón <strong>Autorizar Periodo</strong>, de lo contrario presione el botón <strong>Cancelar</strong>.";
                }
            }
        }