Пример #1
0
        public int Guardar(DsGuiasPendientesTrasbordo dsPendientes, bool modifica, int usuario)
        {
            using (SqlConnection conexion = new SqlConnection())
            {
                SqlTransaction transaccion = null;
                conexion.ConnectionString = Config.ConnectionString;
                int estadoMovimiento = 0;
                int estadoEstatico   = 0;
                try
                {
                    conexion.Open();
                    transaccion = conexion.BeginTransaction();
                    if (this.PlanillaTrasbordoID == 0)                    //aun no ha sido creada
                    {
                        //seteo el estado de la planilla nueva a "Generada"
                        this.EstadoPlanillaTrasbordoID = (int)SisPack.EstadoPlanillaTrasbordo.Generada;
                        this.PlanillaTrasbordoID       = Convert.ToInt32(Config.Conexion.EjecutarResultadoUnico(transaccion, "PlanillaTrasbordoINS", this.PlanillaTrasbordoDescrip, this.EstadoPlanillaTrasbordoID, this.AgenciaDestinoID, this.AgenciaOrigenID));
                        this.PlanillaTrasbordoNro      = this.PlanillaTrasbordoID;
                    }
                    else
                    {
                        //si existe ya la planilla modifica los datos del encabezado
                        Config.Conexion.EjecutarSinResultados(transaccion, "PlanillaTrasbordoUPD", this.PlanillaTrasbordoID, this.PlanillaTrasbordoDescrip, this.EstadoPlanillaTrasbordoID);
                    }
                    if (modifica)                     //si se modifica, se eliminan lo detalles existentes y se crean los nuevos
                    //para cuando se habilite la modificacion
                    {
                        Config.Conexion.EjecutarSinResultados(transaccion, "PlanillaTrasbordoDetalleDEL", this.PlanillaTrasbordoID);
                    }
                    for (int i = 0; i < dsPendientes.Datos.Count; i++)
                    {
                        IPlanillaTrasbordoDetalle           detalle = new PlanillaTrasbordoDetalle();
                        DsGuiasPendientesTrasbordo.DatosRow dr      = (DsGuiasPendientesTrasbordo.DatosRow)dsPendientes.Datos.Rows[i];
                        detalle.GuiaID = dr.GuiaID;
                        detalle.PlanillaTrasbordoID = this.PlanillaTrasbordoID;
                        if (dr.Asignada == true)
                        {
                            //si fue asignada, toma un nuevo valor
                            //En Planilla de Trasbordo (estado movimiento ) y ninguno en (estado movimiento)
                            estadoMovimiento = (int)SisPack.ValorEstadoMovimiento.EnPlanillaTrasbordo;
                            estadoEstatico   = (int)SisPack.ValorEstadoEstatico.Ninguno;
                            detalle.Guardar(transaccion, estadoMovimiento, estadoEstatico, dr.Asignada,
                                            this.AgenciaOrigenID, usuario);            //solo guarda los asignados
                        }
                    }

                    transaccion.Commit();
                    return(this.PlanillaTrasbordoID);
                }
                catch (Exception ex)
                {
                    transaccion.Rollback();
                    throw ex;
                }
            }
        }
Пример #2
0
        private bool Guardar()
        {
            //genera la nueva planilla de trasbordo y las guias elegidas pasan
            //a tener el estado "Trasbordadas"
            IPlanillaTrasbordo planilla = PlanillaTrasbordoFactory.GetPlanillaTrasbordoFactory();

            planilla.PlanillaTrasbordoDescrip = txtDescripcion.Text.Trim();
            planilla.AgenciaDestinoID         = Utiles.Validaciones.obtieneEntero(busqAgencia.AgenciaID);
            planilla.AgenciaOrigenID          = this.AgenciaConectadaID;   //la agencia conectada es la agencia de origen de la planilla
            DsGuiasPendientesTrasbordo dsPendientes = new DsGuiasPendientesTrasbordo();

            dsPendientes = (DsGuiasPendientesTrasbordo)Session["DsGuiasPendientes"];

            foreach (DataGridItem item in dtgGuiasAsociadas.Items)
            {
                if (((CheckBox)item.FindControl("chkGuia")).Checked == true)
                {
                    DsGuiasPendientesTrasbordo.DatosRow drGuia = (DsGuiasPendientesTrasbordo.DatosRow)dsPendientes.Datos.Rows[item.DataSetIndex];
                    drGuia.Asignada = true;
                    hayAsignadas    = true;
                }
            }
            if (hayAsignadas)
            {
                if (dsPendientes.Datos.Count > 0)
                {
                    id = planilla.Guardar(dsPendientes, modifica, this.usuario.UsuarioID);
                }
            }
            else
            {
                throw new Exception("Debe elegir al menos una guía para generar la planilla");
            }

            if (id > 0)                  //guardamos las tildadas
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #3
0
        public void BindGrid(int currentPage)
        {
            DsGuiasPendientesTrasbordo ds = new DsGuiasPendientesTrasbordo();

            //bindea la grilla con las guias pendientes de trasbordo
            if (Session["chkElegidas"] == null)
            {
                IAgencia agencia = AgenciaFactory.GetAgencia();
                agencia.AgenciaID = this.AgenciaConectadaID;
                agencia.ConsultarBasicoByAgenciaID();
                lblAgenciaConectadaDescrip.Text = agencia.Nombre;
                lblFechaActual.Text             = DateTime.Now.ToShortDateString();

                IGuia guias = GuiaFactory.GetGuia();
                guias.AgenciaDestinoID = Utiles.Validaciones.obtieneEntero(busqAgencia.AgenciaID);
                AdministrarGrillas.Configurar(dtgGuiasAsociadas, "GuiaID", CantidadOpciones, true, false);
                ds = guias.GetGuiasPendTrasbordo();
                if (ds.Datos.Count > 0)
                {
                    butGenerar.Enabled = true;
                }
                dsGuias = ds;
            }
            else
            {
                this.dsGuias = (DsGuiasPendientesTrasbordo)Session["chkElegidas"];
                foreach (DataGridItem item in dtgGuiasAsociadas.Items)
                {
                    DsGuiasPendientesTrasbordo.DatosRow dr = (DsGuiasPendientesTrasbordo.DatosRow) this.dsGuias.Datos.Rows[item.DataSetIndex];

                    CheckBox chk = (CheckBox)item.FindControl("chkGuia");
                    dr.Asignada = chk.Checked;
                }
            }
            dtgGuiasAsociadas.DataSource       = dsGuias;
            Session ["DsGuiasPendientes"]      = dsGuias;
            Session["chkElegidas"]             = dsGuias;
            dtgGuiasAsociadas.CurrentPageIndex = currentPage;
            dtgGuiasAsociadas.DataBind();
            RegistrarScriptsGuias();
            RegistrarInhabilitaAgencia();
        }