public ZoSolicitud TraerFactura(int codigo)
        {
            ZoSolicitud solicitud  = new ZoSolicitud();
            AdoConn     ado        = new AdoConn();
            DataSet     ds         = new DataSet();
            ArrayList   parametros = new ArrayList();

            parametros.Add(codigo);
            ds = ado.ExecuteStoredProcedureDS("SP_SELECT_ZOSOLICITUD", parametros);
            if (ds.Tables[0].Rows.Count > 0)
            {
                solicitud.CodSolicitud = Convert.ToInt32(ds.Tables[0].Rows[0]["CodSolicitud"]);
                solicitud.CodAgrup     = Convert.ToInt32(ds.Tables[0].Rows[0]["CodAgrup"]);
                solicitud.Ip           = ds.Tables[0].Rows[0]["Ip"].ToString();
                solicitud.Pais         = ds.Tables[0].Rows[0]["Pais"].ToString();
                solicitud.CodClie      = ds.Tables[0].Rows[0]["CodClie"].ToString();
                solicitud.FechaCompra  = Convert.ToDateTime(ds.Tables[0].Rows[0]["FechaCompra"]);
                solicitud.Cantidad     = Convert.ToInt32(ds.Tables[0].Rows[0]["Cantidad"]);
                solicitud.NroFactura   = ds.Tables[0].Rows[0]["NroFactura"].ToString();
                solicitud.NroTicket    = Convert.ToInt32(ds.Tables[0].Rows[0]["NroTicket"]);
                solicitud.NroCom       = ds.Tables[0].Rows[0]["NroCom"].ToString();
                solicitud.NroTarjeta   = Convert.ToInt32(ds.Tables[0].Rows[0]["NroTarjeta"]);
                solicitud.NroAuto      = Convert.ToInt32(ds.Tables[0].Rows[0]["NroAuto"]);
                solicitud.NombreUsu    = ds.Tables[0].Rows[0]["NombreUsu"].ToString();
                solicitud.DirUsu       = ds.Tables[0].Rows[0]["DirUsu"].ToString();
                solicitud.Nro          = ds.Tables[0].Rows[0]["Nro"].ToString();
                solicitud.Dpto         = ds.Tables[0].Rows[0]["Dpto"].ToString();
                solicitud.Piso         = ds.Tables[0].Rows[0]["Piso"].ToString();
                solicitud.Ciudad       = ds.Tables[0].Rows[0]["Ciudad"].ToString();
                solicitud.CodProv      = ds.Tables[0].Rows[0]["CodProv"].ToString();
                solicitud.Vehiculo     = ds.Tables[0].Rows[0]["Vehiculo"].ToString();
                solicitud.Cuotas       = Convert.ToInt32(ds.Tables[0].Rows[0]["Cuotas"]);
                solicitud.Telefono     = ds.Tables[0].Rows[0]["Telefono"].ToString();
                solicitud.CodPos       = ds.Tables[0].Rows[0]["CodPos"].ToString();
                solicitud.Precio       = Convert.ToDouble(ds.Tables[0].Rows[0]["Precio"]);
                solicitud.FlgProcesado = ds.Tables[0].Rows[0]["FlgProcesado"].ToString();
                solicitud.CodPromo     = Convert.ToInt32(ds.Tables[0].Rows[0]["CodPromo"]);
                solicitud.Descuento    = Convert.ToInt32(ds.Tables[0].Rows[0]["Descuento"]);
                solicitud.CodAux       = ds.Tables[0].Rows[0]["CodAux"].ToString();
                if (ds.Tables[0].Rows[0]["FecAlta"] != DBNull.Value)
                {
                    solicitud.FecAlta = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecAlta"]);
                }
                solicitud.UsuAlta = ds.Tables[0].Rows[0]["UsuAlta"].ToString();
                if (ds.Tables[0].Rows[0]["FecUltAct"] != DBNull.Value)
                {
                    solicitud.FecUltAct = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecUltAct"]);
                }
                solicitud.UsuUltAct = ds.Tables[0].Rows[0]["UsuUltAct"].ToString();
                if (ds.Tables[0].Rows[0]["FecSubSAP"] != DBNull.Value)
                {
                    solicitud.FecSubSAP = Convert.ToDateTime(ds.Tables[0].Rows[0]["FecSubSAP"]);
                }
                solicitud.Nota       = ds.Tables[0].Rows[0]["Nota"].ToString();
                solicitud.Esker_Link = ds.Tables[0].Rows[0]["Esker_Link"].ToString();
                solicitud.Esker_ID   = ds.Tables[0].Rows[0]["Esker_ID"].ToString();
            }

            return(solicitud);
        }
        protected void btnLeerSolicitudes_Click(object sender, EventArgs e)
        {
            conSolicitud.BorrarSolicitudes();
            if (File.Exists(HDrutaArchivoSubido.Value))
            {
                FileInfo fi = new FileInfo(HDrutaArchivoSubido.Value);
                // Se consulta el tamaño del archivo en bytes
                if (fi.Length > 0 && (fi.Extension.ToUpper() == "TXT" || fi.Extension.ToUpper() == ".TXT"))
                {
                    try
                    {
                        using (StreamReader lector = new StreamReader(HDrutaArchivoSubido.Value))
                        {
                            // Se comienza a leer el archivo
                            while (lector.Peek() > -1)
                            {
                                string linea = lector.ReadLine();
                                if (!String.IsNullOrEmpty(linea))
                                {
                                    ZoSolicitud solicitud   = new ZoSolicitud();
                                    string[]    componentes = linea.Split(',');
                                    solicitud.CodSolicitud = Convert.ToInt32(componentes[0]);
                                    solicitud.Ip           = componentes[1];
                                    solicitud.Pais         = componentes[2];
                                    solicitud.Nota         = componentes[3];

                                    solicitudes.Add(solicitud);
                                }
                            }
                            if (solicitudes.Count > 0)
                            {
                                conSolicitud.InsertarSolicitudes(solicitudes);
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        lblMensaje.Text = "Error: " + ex.Message;
                        ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
                        ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
                    }
                    // Se agregan las solicitudes de la tabla temporal a la grilla
                    gvListadoSolicitudes.DataSource = conSolicitud.ListadoDeSolicitudes();
                    gvListadoSolicitudes.DataBind();
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
                }
                else
                {
                    lblMensaje.Text = "No hay ninguna solicitud o el tipo de archivo es erroneo. Solo se permiten archivos de texto .txt";
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
                }
            }
        }
        //protected void ddlEditarCliente_SelectedIndexChanged(object sender, EventArgs e)
        //{
        //    DataSet ds = new DataSet();
        //    ZoRegion reg = new ZoRegion();
        //    reg = conClientes.RegionDelCliente(ddlEditarCliente.SelectedValue);
        //    txtEditarRegion.Text = "(" + reg.Reg_code + ") " + reg.Descripcion;

        //}
        protected void btnEditarAceptar_Click(object sender, EventArgs e)
        {
            solicitud = new ZoSolicitud();

            solicitud.Ip      = ddlEditarMedida.SelectedValue.ToString();
            solicitud.Pais    = HDPais.Value;
            solicitud.CodClie = ddlEditarCliente.SelectedValue.ToString();
            //solicitud.FechaCompra = Convert.ToDateTime(pMetodos.ConvertmmddyyyyToyyyymmdd(dpEditarFecha.Text));
            solicitud.FechaCompra  = Convert.ToDateTime(pMetodos.ConvertddmmyyyyToyyyymmdd(dpEditarFecha.Text));
            solicitud.Cantidad     = Convert.ToInt32(txtEditarCantidad.Text);
            solicitud.NroFactura   = txtEditarNumFactura.Text;
            solicitud.NombreUsu    = txtEditarNombre.Text;
            solicitud.DirUsu       = txtEditarDireccion.Text;
            solicitud.Nro          = txtEditarNumero.Text;
            solicitud.Dpto         = "";
            solicitud.Piso         = txtEditarPiso.Text;
            solicitud.CodProv      = ddlEditarProvincia.SelectedValue.ToString();
            solicitud.Ciudad       = txtEditarCiudad.Text;
            solicitud.Vehiculo     = txtEditarVehiculo.Text;
            solicitud.Cuotas       = Convert.ToInt32(txtEditCuota.Text);
            solicitud.FlgProcesado = "0";
            solicitud.FecAlta      = DateTime.Now;
            solicitud.UsuAlta      = User.Usu_id;
            solicitud.Telefono     = txtEditarTelefono.Text;
            solicitud.CodPos       = txtEditarCodigoPostal.Text;
            solicitud.NroTicket    = Convert.ToInt32(txtEditarticket.Text);
            solicitud.NroCom       = txtEditarNumCompra.Text;
            solicitud.NroTarjeta   = Convert.ToInt32(txtEditarTarjeta.Text);
            solicitud.NroAuto      = 0;
            solicitud.Precio       = Convert.ToDouble(txtEditarPrecio.Text.Replace(".", ","));
            solicitud.CodPromo     = Convert.ToInt32(ddlEditarTipoPromo.SelectedValue);
            solicitud.Descuento    = Convert.ToDouble(txtDescuento.Text.Replace(".", ","));
            solicitud.CodAux       = "";
            solicitud.Nota         = txtEditarNota.Text;

            if (string.IsNullOrEmpty(HDCodSolicitud.Value))
            {
                conFacturas.InsertarFactura(solicitud);
                lblMensaje.Text = "Facturas creada con exito";
            }
            else
            {
                solicitud.CodSolicitud = Convert.ToInt32(HDCodSolicitud.Value);
                conFacturas.ModificarFactura(solicitud);
                lblMensaje.Text = "Facturas modifica con exito";
            }

            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "openModal();", true);
            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "desactivarSpinner();", true);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (!String.IsNullOrEmpty(Page.Request["CodSolicitud"]))
                {
                    HDCodSolicitud.Value = Page.Request["CodSolicitud"];
                    solicitud            = new ZoSolicitud();
                    solicitud            = conFacturas.TraerFactura(Convert.ToInt32(Page.Request["CodSolicitud"]));
                    HDCliente.Value      = solicitud.CodClie;
                    HDMedida.Value       = solicitud.Ip;
                    HDProvincia.Value    = solicitud.CodProv;
                    HDPromo.Value        = solicitud.CodPromo.ToString();

                    txtEditarCantidad.Text   = solicitud.Cantidad.ToString();
                    txtEditarPrecio.Text     = solicitud.Precio.ToString().Replace(",", ".");;
                    txtEditarNumFactura.Text = solicitud.NroFactura.ToString();
                    txtEditarticket.Text     = solicitud.NroTicket.ToString();
                    txtEditarTarjeta.Text    = solicitud.NroTarjeta.ToString();
                    txtEditarNumCompra.Text  = solicitud.NroCom.ToString();

                    txtEditarNombre.Text       = solicitud.NombreUsu;
                    txtEditarDireccion.Text    = solicitud.DirUsu;
                    txtEditarTelefono.Text     = solicitud.Telefono;
                    txtEditarNumero.Text       = solicitud.Nro.ToString();
                    txtEditarPiso.Text         = solicitud.Piso;
                    txtEditarCiudad.Text       = solicitud.Ciudad;
                    txtEditarCodigoPostal.Text = solicitud.CodPos;
                    txtEditarVehiculo.Text     = solicitud.Vehiculo;
                    txtEditarNota.Text         = solicitud.Nota;
                    dpEditarFecha.Text         = solicitud.FechaCompra.ToString("dd/MM/yyyy");
                    dpEditarFecha_TextChanged(sender, e);
                    cargarCuotaDescuentoDePromo();
                }
                cargarClientes(ddlEditarCliente);
                cargarMedidas(ddlEditarMedida);
                cargarProvincia(ddlEditarProvincia);
                //dpEditarFecha_TextChanged(sender, e);
                //cargarRegion(ddlEditarRegion);
                ddlEditarMedida_SelectedIndexChanged(sender, e);
                ddlEditarCliente_SelectedIndexChanged(sender, e);
                //ddlEditarCliente_SelectedIndexChanged(sender, e);
            }
        }
        public void ModificarFactura(ZoSolicitud solicitud)
        {
            AdoConn   ado        = new AdoConn();
            ArrayList parametros = new ArrayList();

            parametros.Add(solicitud.CodSolicitud);
            parametros.Add(solicitud.Ip);
            parametros.Add(solicitud.Pais);
            parametros.Add(solicitud.CodClie);
            parametros.Add(solicitud.FechaCompra);
            parametros.Add(solicitud.Cantidad);
            parametros.Add(solicitud.NroFactura);
            parametros.Add(solicitud.NombreUsu);
            parametros.Add(solicitud.DirUsu);
            parametros.Add(solicitud.Nro);
            parametros.Add(solicitud.Dpto);
            parametros.Add(solicitud.Piso);
            parametros.Add(solicitud.CodProv);
            parametros.Add(solicitud.Ciudad);
            parametros.Add(solicitud.Vehiculo);
            parametros.Add(solicitud.Cuotas);
            parametros.Add(solicitud.FlgProcesado);
            parametros.Add(solicitud.FecAlta);
            parametros.Add(solicitud.UsuAlta);
            parametros.Add(solicitud.Telefono);
            parametros.Add(solicitud.CodPos);
            parametros.Add(solicitud.NroTicket);
            parametros.Add(solicitud.NroCom);
            parametros.Add(solicitud.NroTarjeta);
            parametros.Add(solicitud.NroAuto);
            parametros.Add(solicitud.Precio);
            parametros.Add(solicitud.CodPromo);
            parametros.Add(solicitud.Descuento);
            parametros.Add(solicitud.CodAux);
            parametros.Add(solicitud.Nota);
            ado.ExecuteNonStoredProcedure("SP_UPDATE_ZOSOLICITUD", parametros);
        }