protected override bool AccionGuardar()
        {
            // Se valida
            if (!this.Validar())
            {
                return(false);
            }

            Cargando.Mostrar();

            NominaOficialCuenta oReg;

            foreach (DataGridViewRow oFila in this.dgvDatos.Rows)
            {
                if (oFila.IsNewRow)
                {
                    continue;
                }

                int iId     = this.dgvDatos.ObtenerId(oFila);
                int iCambio = this.dgvDatos.ObtenerIdCambio(oFila);
                switch (iCambio)
                {
                case Cat.TiposDeAfectacion.Agregar:
                case Cat.TiposDeAfectacion.Modificar:
                    if (iCambio == Cat.TiposDeAfectacion.Agregar)
                    {
                        oReg = new NominaOficialCuenta();
                    }
                    else
                    {
                        oReg = Datos.GetEntity <NominaOficialCuenta>(c => c.NominaOficialCuentaID == iId);
                    }

                    // Se llenan los datos
                    oReg.ContaCuentaDeMayorID = Util.Entero(oFila.Cells["ContaCuentaDeMayorID"].Value);
                    oReg.Suma = (Util.Cadena(oFila.Cells["Suma"].Value) == "Suma");

                    Datos.Guardar <NominaOficialCuenta>(oReg);
                    break;

                case Cat.TiposDeAfectacion.Borrar:
                    oReg = Datos.GetEntity <NominaOficialCuenta>(c => c.NominaOficialCuentaID == iId);
                    Datos.Eliminar <NominaOficialCuenta>(oReg);
                    break;
                }
            }

            Cargando.Cerrar();
            this.CargarDatos();
            return(true);
        }
        protected override bool AccionGuardar()
        {
            // Se valida
            if (!this.Validar())
                return false;

            Cargando.Mostrar();

            NominaOficialCuenta oReg;
            foreach (DataGridViewRow oFila in this.dgvDatos.Rows)
            {
                if (oFila.IsNewRow) continue;

                int iId = this.dgvDatos.ObtenerId(oFila);
                int iCambio = this.dgvDatos.ObtenerIdCambio(oFila);
                switch (iCambio)
                {
                    case Cat.TiposDeAfectacion.Agregar:
                    case Cat.TiposDeAfectacion.Modificar:
                        if (iCambio == Cat.TiposDeAfectacion.Agregar)
                            oReg = new NominaOficialCuenta();
                        else
                            oReg = Datos.GetEntity<NominaOficialCuenta>(c => c.NominaOficialCuentaID == iId);

                        // Se llenan los datos
                        oReg.ContaCuentaDeMayorID = Util.Entero(oFila.Cells["ContaCuentaDeMayorID"].Value);
                        oReg.Suma = (Util.Cadena(oFila.Cells["Suma"].Value) == "Suma");

                        Datos.Guardar<NominaOficialCuenta>(oReg);
                        break;
                    case Cat.TiposDeAfectacion.Borrar:
                        oReg = Datos.GetEntity<NominaOficialCuenta>(c => c.NominaOficialCuentaID == iId);
                        Datos.Eliminar<NominaOficialCuenta>(oReg);
                        break;
                }
            }

            Cargando.Cerrar();
            this.CargarDatos();
            return true;
        }