private void butAceptar_Click(object sender, System.EventArgs e)
        {
            try
            {
                DsGuiasPlanillaRemitoCliente dsGuias   = (DsGuiasPlanillaRemitoCliente)Session["DsGuiasPlanillaRemitoCliente"];
                IPlanillaRemitoCliente       oPlanilla = PlanillaRemitoClienteFactory.GetPlanillaRemitoCliente();
                oPlanilla.ClienteID             = Convert.ToInt32(this.txtClienteID.Text);
                oPlanilla.FechaRecepcionCliente = Utiles.Fechas.FormatFechaYYYYMMDD("19000101");                        //Ya que esta fecha se seteará cuando se entregue la planilla al cliente

                foreach (DsGuiasPlanillaRemitoCliente.GuiasRow dr in dsGuias.Guias.Rows)
                {
                    IPlanillaRemitoClienteGuias oGuiaPlanilla = oPlanilla.GuiasPlanilla.AddGuiaPlanillaRemitoCliente();
                    oGuiaPlanilla.GuiaID          = dr.GuiaID;
                    oGuiaPlanilla.GuiaRendicionID = dr.GuiaRendicionID;
                }
                if (oPlanilla.Guardar(this.AgenciaConectadaID, this.usuario))
                {
                    this.txtPlanillaRemitoClienteID.Text  = oPlanilla.PlanillaRemitoClienteID.ToString();
                    this.lblNroPlanillaRemitoCliente.Text = Utiles.Formatos.CerosIzq(Convert.ToInt32(oPlanilla.NroPlanillaRemito), 5);
                    this.Imprimir();
                    this.BindGrillas();

                    /*string mensaje = "Los datos se guardaron correctamente. ";
                     *
                     * string script = "<script language='javascript'>\n";
                     * script += "alert('" + mensaje + "');";
                     * //script += "window.location.href = 'RecibirGuiaRendicion.aspx';\n";
                     * script += "</script>";
                     *
                     * Page.RegisterStartupScript("scriptOk", script);*/
                }
            }
            catch (Exception ex)
            {
                ((ErrorWeb)this.phErrores.FindControl("Error")).setMensaje(this.TraducirTexto(ex.Message));
            }
        }
        private void butAceptar_Click(object sender, System.EventArgs e)
        {
            Page.Validate();
            if (!Page.IsValid)
            {
                return;
            }

            IPlanillaRemitoCliente oPlanilla = PlanillaRemitoClienteFactory.GetPlanillaRemitoCliente();

            oPlanilla.PlanillaRemitoClienteID = Convert.ToInt32(this.txtPlanillaRemitoClienteID.Text);
            oPlanilla.Apellido              = this.txtApellido.Text;
            oPlanilla.Nombre                = this.txtNombre.Text;
            oPlanilla.TipoDocumentoID       = (NegociosSisPackInterface.SisPack.TipoDocumento)Convert.ToInt32(this.ddlTipoDoc.SelectedValue);
            oPlanilla.NroDocumento          = Convert.ToInt32(this.txtNroDoc.Text);
            oPlanilla.FechaRecepcionCliente = Convert.ToDateTime(this.txtFechaRecepcion.Text);
            oPlanilla.NroCajaArchivo        = this.txtNroCajaGuias.Text;
            try
            {
                if (oPlanilla.Guardar(this.AgenciaConectadaID, this.usuario))
                {
                    if (this.txtNroCajaGuias.Text != "")
                    {
                        this.ActivarCampos(false);
                    }

                    string mensaje = "Los datos se guardaron correctamente. ";

                    string script = "<script language='javascript'>\n";
                    script += "alert('" + mensaje + "');";
                    //script += "window.location.href = 'AgenciasConsul.aspx?OpcionEstado=agencias';\n";
                    script += "</script>";

                    Page.RegisterStartupScript("scriptOk", script);
                }
                else
                {
                    string script = "<script language='javascript'>\n";
                    script += "alert('Los datos no se guardaron debido a errores.');\n";
                    script += "</script>";

                    Page.RegisterStartupScript("scriptError", script);
                }
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    mensaje = this.TraducirTexto(ex.Message);
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }
        private void BindGrillas()
        {
            DataSet ds = new DataSet();

            SisPackController.AdministrarGrillas.Configurar(this.dtgGuiasAcuse, "GuiaID", this.CantidadOpciones);
            SisPackController.AdministrarGrillas.Configurar(this.hgGuiasContrar, "GuiaID", this.CantidadOpciones);

            IPlanillaRemitoCliente oPlanilla = PlanillaRemitoClienteFactory.GetPlanillaRemitoCliente();

            oPlanilla.ClienteID = Convert.ToInt32(this.txtClienteID.Text);

            DsGuiasPlanillaRemitoCliente dsGuias;

            if (this.planillaRemitoClienteID == 0)
            {
                dsGuias = oPlanilla.GetGuiasPendAsigPlanillaRemito();
                this.butAceptar.Visible = true;
            }
            else
            {
                IPlanillaRemitoCliente planilla = PlanillaRemitoClienteFactory.GetPlanillaRemitoCliente();
                planilla.PlanillaRemitoClienteID = this.planillaRemitoClienteID;
                planilla.ConsultarById();
                this.lblNroPlanillaRemitoCliente.Text    = Utiles.Formatos.CerosIzq(Convert.ToInt32(planilla.NroPlanillaRemito), 5);
                this.lblNroPlanillaRemitoCliente.Visible = true;
                this.lblNro.Visible = true;
                oPlanilla.PlanillaRemitoClienteID = this.planillaRemitoClienteID;
                dsGuias = oPlanilla.GetGuiasPlanillaRemitoClienteDataSet();
                this.butAceptar.Visible = false;
            }

            //DsGuiasPlanillaRemitoCliente.GuiasRow[] drAcuse = (DsGuiasPlanillaRemitoCliente.GuiasRow[])dsGuias.Guias.Select("Servicios=1");//Servicio de acuse o cualquier otro servicio que no sea contrareembolso.
            DsGuiasPlanillaRemitoCliente.GuiasRow[] drAcuse = (DsGuiasPlanillaRemitoCliente.GuiasRow[])dsGuias.Guias.Select("Servicios=0");//Servicio de acuse o cualquier otro servicio que no sea contrareembolso.

            this.dtgGuiasAcuse.DataSource = drAcuse;
            this.DataBind();

            //DsGuiasPlanillaRemitoCliente.GuiasRow[] drContrar = (DsGuiasPlanillaRemitoCliente.GuiasRow[])dsGuias.Guias.Select("Servicios=2 or Servicios=3");//Servicio de contrareembolso solamente o guias que tienen tanto contrareembolso y acuse
            DsGuiasPlanillaRemitoCliente.GuiasRow[] drContrar = (DsGuiasPlanillaRemitoCliente.GuiasRow[])dsGuias.Guias.Select("Servicios=1");//Servicio de contrareembolso solamente o guias que tienen tanto contrareembolso y acuse

            ds.Tables.Add(dsGuias.Guias.Clone());
            ds.Tables[0].TableName = "Guias";
            foreach (System.Data.DataRow row in drContrar)
            {
                ds.Tables["Guias"].ImportRow(row);
            }

            ds.Tables.Add(dsGuias.Comprobantes.Clone());
            ds.Tables[1].TableName = "Comprobantes";
            foreach (System.Data.DataRow row in dsGuias.Comprobantes.Rows)
            {
                ds.Tables["Comprobantes"].ImportRow(row);
            }

            DataColumn dc1  = ds.Tables["Guias"].Columns["GuiaID"],
                       dc2  = ds.Tables["Comprobantes"].Columns["GuiaID"];
            DataRelation dr = new DataRelation("GuiasComprobantes", dc1, dc2, false);

            ds.Relations.Add(dr);



            this.hgGuiasContrar.DataSource = ds;
            this.hgGuiasContrar.DataMember = "Guias";
            this.hgGuiasContrar.DataBind();
            this.hgGuiasContrar.RowExpanded.ExpandAll();

            Session["DsGuiasPlanillaRemitoCliente"] = dsGuias;
            if (dsGuias.Guias.Count == 0)
            {
                this.butAceptar.Enabled  = false;
                this.butImprimir.Enabled = false;
            }
            else
            {
                this.butAceptar.Enabled  = true;
                this.butImprimir.Enabled = true;
            }
        }
        private void butBuscar_Click(object sender, System.EventArgs e)
        {
            BaseValidator bv;

            bv         = (BaseValidator)this.phValidPlanillaRemitoNro.FindControl("ReqPlaRemNro");
            bv.Enabled = true;
            bv.Validate();
            if (!bv.IsValid)
            {
                return;
            }
            bv         = (BaseValidator)this.phValidPlanillaRemitoNro.FindControl("ValPlaRemNro");
            bv.Enabled = true;
            bv.Validate();
            if (!bv.IsValid)
            {
                return;
            }
            try
            {
                IPlanillaRemitoCliente oPlanilla = PlanillaRemitoClienteFactory.GetPlanillaRemitoCliente();
                oPlanilla.ClienteID         = Convert.ToInt32(this.txtClienteID.Text);
                oPlanilla.NroPlanillaRemito = Convert.ToInt32(this.txtPlanillaRemitoNro.Text);
                if (oPlanilla.Consultar())
                {
                    if (oPlanilla.FechaRecepcionCliente.ToString("dd/MM/yyyy") != "01/01/1900" && oPlanilla.FechaRecepcionCliente.ToString("dd/MM/yyyy") != "01/01/0001")
                    {
                        this.txtFechaRecepcion.Text = oPlanilla.FechaRecepcionCliente.ToString("dd/MM/yyyy");
                    }
                    this.txtNombre.Text                  = oPlanilla.Nombre;
                    this.txtApellido.Text                = oPlanilla.Apellido;
                    this.txtNroDoc.Text                  = oPlanilla.NroDocumento == 0?"" : oPlanilla.NroDocumento.ToString();
                    this.ddlTipoDoc.SelectedValue        = oPlanilla.TipoDocumentoID == 0 ? "" :((int)oPlanilla.TipoDocumentoID).ToString();
                    this.txtNroCajaGuias.Text            = oPlanilla.NroCajaArchivo;
                    this.txtPlanillaRemitoClienteID.Text = oPlanilla.PlanillaRemitoClienteID.ToString();
                    if (this.txtNroCajaGuias.Text == "")
                    {
                        ActivarCampos(true);
                    }
                }
                else
                {
                    this.Limpiar();
                    ((ErrorWeb)this.phErrores.Controls[0]).setMensaje("La planilla ingresada no existe.");
                }
            }
            catch (Exception ex)
            {
                string mensaje = ex.Message;
                try
                {
                    mensaje = this.TraducirTexto(ex.Message);
                    if (mensaje == "" || mensaje == null)
                    {
                        mensaje = ex.Message;
                    }
                }
                catch (Exception)
                {
                    mensaje = ex.Message;
                }
                ((ErrorWeb)this.phErrores.Controls[0]).setMensaje(mensaje);
            }
        }