/// <summary> /// Método encargado de Insertar los Detalles de la Devolución /// </summary> /// <param name="id_devolucion_faltante">Devolución Faltante</param> /// <param name="cantidad">Cantidad</param> /// <param name="estatus">Estatus del Detalle</param> /// <param name="id_producto_devolucion">Producto de la Devolución</param> /// <param name="id_unidad">Unidad</param> /// <param name="codigo_producto">Código del Producto</param> /// <param name="descripcion_producto">Descripción del Producto</param> /// <param name="razon_detalle">Razon del Detalle</param> /// <param name="id_usuario">Usuario que Actualiza el Registro</param> /// <returns></returns> public RetornoOperacion EditaDevolucionFaltanteDetalle(int id_devolucion_faltante, EstatusDevolucionDetalle estatus, int id_producto_devolucion, decimal cantidad, byte id_unidad, string codigo_producto, string descripcion_producto, RazonDetalle razon_detalle, int id_usuario) { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Declarando Variable Auxliar int id_detalle = 0; //Inicializando Bloque Transaccional using (TransactionScope trans = Transaccion.InicializaBloqueTransaccional(System.Transactions.IsolationLevel.ReadCommitted)) { //Invocando Método de Actualización result = this.actualizaRegistrosBD(id_devolucion_faltante, (byte)estatus, id_producto_devolucion, cantidad, id_unidad, codigo_producto, descripcion_producto, (byte)razon_detalle, id_usuario, this._habilitar); //Validando Operación Exitosa if (result.OperacionExitosa) { //Obteniendo Detalle id_detalle = result.IdRegistro; //Validando que el Estatus sea Distinto if ((EstatusDevolucionDetalle)this._id_estatus != estatus) { //Instanciando Devolución using (DevolucionFaltante devolucion = new DevolucionFaltante(id_devolucion_faltante)) { //Validando existencia if (devolucion.habilitar) { //Actualizando Estatus result = devolucion.ActualizaEstatusDevolucionFaltante(ObtieneEstatusDevolucion(id_devolucion_faltante), id_usuario); } else { //Instanciando Excepción result = new RetornoOperacion("No existe la Devolución"); } } } } //Validando Operación Exitosa if (result.OperacionExitosa) { //Instanciando Registro result = new RetornoOperacion(id_detalle); //Completando transacción trans.Complete(); } } //Devolviendo Resultado Obtenido return(result); }
/// <summary> /// Método encargado de Insertar los Detalles de la Devolución /// </summary> /// <param name="id_devolucion_faltante">Devolución Faltante</param> /// <param name="id_producto_devolucion">Producto de la Devolución</param> /// <param name="cantidad">Cantidad</param> /// <param name="id_unidad">Unidad</param> /// <param name="codigo_producto">Código del Producto</param> /// <param name="descripcion_producto">Descripción del Producto</param> /// <param name="razon_detalle">Razon del Detalle</param> /// <param name="id_usuario">Usuario que Actualiza el Registro</param> /// <returns></returns> public static RetornoOperacion InsertaDevolucionFaltanteDetalle(int id_devolucion_faltante, int id_producto_devolucion, decimal cantidad, byte id_unidad, string codigo_producto, string descripcion_producto, RazonDetalle razon_detalle, int id_usuario) { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Armando Arreglo de Parametros object[] param = { 1, 0, id_devolucion_faltante, (byte)EstatusDevolucionDetalle.Registrado, id_producto_devolucion, cantidad, id_unidad, codigo_producto, descripcion_producto, (byte)razon_detalle, id_usuario, true, "", "" }; //Ejecutando SP result = CapaDatos.m_capaDeDatos.EjecutaProcAlmacenadoObjeto(_nom_sp, param); //Devolviendo Resultado Obtenido return(result); }