private void Eliminar()
        {
            foreach (DataGridItem item in dtgLocalidadesCodigoPostal.Items)
            {
                CheckBox chk = (CheckBox)item.FindControl("chkEliminar");
                if (chk.Checked == true)
                {
                    ICodigoPostalRetiroCliente codigoPostalRetiro = CodigoPostalRetiroClienteFactory.GetCodigoPostalRetiroCliente();
                    codigoPostalRetiro.CodigoPostalRetiroClienteID = Utiles.Validaciones.obtieneEntero(item.Cells[0].Text);
                    codigoPostalRetiro.Eliminar(this.usuario);
                }
            }
            HGDataBind(false);
            LimpiarSeleccion();

            string script = "";

            script += "			alert('Los datos se guardaron correctamente.');\n";

            ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                    UpdatePanel2.GetType(),
                                                    "muestraMensajeEliminar",
                                                    script,
                                                    true);
            Consultar();
            ConsultarAsignadas();
        }
        private void Editar()
        {
            if (Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaEditarID.Text) != 0)
            {
                Page.Validate();
                if (!Page.IsValid)
                {
                    return;
                }
                //Validaciones();

                foreach (DataGridItem item in dtgLocalidadesCodigoPostal.Items)
                {
                    CheckBox chk = (CheckBox)item.FindControl("chkEliminar");
                    if (chk.Checked == true)
                    {
                        ICodigoPostalRetiroCliente codigoPostalRetiro = CodigoPostalRetiroClienteFactory.GetCodigoPostalRetiroCliente();
                        codigoPostalRetiro.CodigoPostalRetiroClienteID = Utiles.Validaciones.obtieneEntero(item.Cells[0].Text);
                        codigoPostalRetiro.LocalidadID    = Utiles.Validaciones.obtieneEntero(item.Cells[1].Text);
                        codigoPostalRetiro.CodigoPostalID = Utiles.Validaciones.obtieneEntero(item.Cells[2].Text);
                        codigoPostalRetiro.TarifarioClienteRetiroEntregaID = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaEditarID.Text) == -1 ? 0 : Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaEditarID.Text);
                        codigoPostalRetiro.ClienteID = ClienteID;
                        codigoPostalRetiro.Guardar(this.usuario);
                    }
                }
                HGDataBind(false);
                LimpiarSeleccion();

                string script = "";
                script += "			alert('Los datos se guardaron correctamente.');\n";
                ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                        UpdatePanel2.GetType(),
                                                        "muestraMensajeEdicion",
                                                        script,
                                                        true);
                Consultar();
                ConsultarAsignadas();
            }
        }
        private void HGDataBind(bool configurarExportarExcel)
        {
            SisPackController.AdministrarGrillas.Configurar(this.dtgLocalidadesCodigoPostal, "CodigoPostalRetiroClienteID", 400);

            if (configurarExportarExcel == true)
            {
                // Tengo qu econfigurar para exportar a excel
                dtgLocalidadesCodigoPostal.AllowPaging         = false;
                dtgLocalidadesCodigoPostal.Columns[14].Visible = false;
                dtgLocalidadesCodigoPostal.BorderWidth         = Unit.Pixel(0);
                dtgLocalidadesCodigoPostal.BorderColor         = System.Drawing.Color.White;
                dtgLocalidadesCodigoPostal.BorderStyle         = BorderStyle.None;
            }

            ICodigoPostalRetiroCliente codigoPostalRetiro = CodigoPostalRetiroClienteFactory.GetCodigoPostalRetiroCliente();

            codigoPostalRetiro.ProvinciaID   = Utiles.Validaciones.obtieneEntero(ddlProvincia.SelectedValue);
            codigoPostalRetiro.ClienteID     = ClienteID;
            codigoPostalRetiro.CPDesdeFiltro = this.txtCPDesdeFiltro.Text;
            codigoPostalRetiro.CPHastaFiltro = this.txtCPHastaFiltro.Text;
            string localidadDescrip   = this.txtLocalidadEditar.Text;
            string unidadVentaDescrip = this.txtUnidadVenta.Text;
            string tarifarioDescrip   = this.txtTarifarioDescrip.Text;
            string agrupacionDescrip  = this.txtAgrupacionEditar.Text;
            DsCodigoPostalRetiroCliente dsLocalidades = codigoPostalRetiro.GetCodigoPostalRetiroCliente(localidadDescrip, unidadVentaDescrip, tarifarioDescrip, UnidadVentaID, agrupacionDescrip);

            this.dtgLocalidadesCodigoPostal.DataSource = dsLocalidades;
            this.dtgLocalidadesCodigoPostal.DataBind();

            if (Utiles.Validaciones.obtieneEntero(this.ddlProvincia.SelectedValue) == (int)NegociosSisPackInterface.SisPack.Provincia.BsAs)
            {
                dtgLocalidadesCodigoPostal.Columns[5].Visible = true;
            }
            else
            {
                dtgLocalidadesCodigoPostal.Columns[5].Visible = false;
            }
        }
        private void Guardar()
        {
            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }
            Validaciones();

            DsCodigoPostalRetiro ds = (DsCodigoPostalRetiro)Session["DsCodigoPostalRetiroCliente"];

            foreach (DataGridItem item in dtgLocalidades.Items)
            {
                DsCodigoPostalRetiro.DatosRow dr = (DsCodigoPostalRetiro.DatosRow)ds.Datos.Rows[item.DataSetIndex];
                CheckBox chk = (CheckBox)item.FindControl("chkAsignar");
                dr.Seleccionado = chk.Checked;
            }
            Session["DsCodigoPostalRetiroCliente"] = ds;

            ICodigoPostalRetiroCliente codigoPostalRetiro = CodigoPostalRetiroClienteFactory.GetCodigoPostalRetiroCliente();

            codigoPostalRetiro.CodigoPostalRetiroClienteID     = 0;
            codigoPostalRetiro.TarifarioClienteRetiroEntregaID = Utiles.Validaciones.obtieneEntero(this.txtTarifarioRetiroEntregaID.Text);
            codigoPostalRetiro.UnidadesVentas.Add(UnidadVentaID);
            codigoPostalRetiro.ClienteID = ClienteID;
            //Se guarda la provincia como entrega
            if (chkProvincia.Checked)
            {
                if (Utiles.Validaciones.obtieneEntero(txtProvinciaSel.Text) == 0)
                {
                    throw new Exception("Debe seleccionar la provincia.");
                }
                else
                {
                    codigoPostalRetiro.ProvinciaID = Utiles.Validaciones.obtieneEntero(txtProvinciaSel.Text);
                }
            }

            //Se guarda el pais como entrega
            if (chkPais.Checked)
            {
                if (Utiles.Validaciones.obtieneEntero(txtPaisSel.Text) == 0)
                {
                    throw new Exception("Debe seleccionar el pais.");
                }
                else
                {
                    codigoPostalRetiro.PaisID = Utiles.Validaciones.obtieneEntero(txtPaisSel.Text);
                }
            }

            // Se guardan las agrupaciones como entregas
            for (int i = 0; i < lstAgrupacionRetiroEntrega.Items.Count; i++)
            {
                if (lstAgrupacionRetiroEntrega.Items[i].Selected)
                {
                    codigoPostalRetiro.Agrupaciones.Add(Utiles.Validaciones.obtieneEntero(lstAgrupacionRetiroEntrega.Items[i].Value));
                }
            }

            // Se guardan las localidades como entregas
            if (ds != null)
            {
                foreach (DsCodigoPostalRetiro.DatosRow dr in ds.Datos)
                {
                    if ((dr.IsSeleccionadoNull() ? false : dr.Seleccionado) == true)
                    {
                        codigoPostalRetiro.Localidades.Add(dr.LocalidadID);
                        codigoPostalRetiro.CodigosPostales.Add(dr.IsCodigoPostalIDNull() ? 0 : dr.CodigoPostalID);
                    }
                }
            }

            codigoPostalRetiro.Guardar(usuario);

            HGDataBind(false);
            LimpiarSeleccion();

            string script = "";

            script += "			alert('Los datos se guardaron correctamente.');\n";

            ScriptManager.RegisterClientScriptBlock(this.UpdatePanel2,
                                                    UpdatePanel2.GetType(),
                                                    "muestraMensaje",
                                                    script,
                                                    true);

            Consultar();
            ConsultarAsignadas();
        }