public bool Guardar(ProductoAlmacenBe registro, SqlConnection cn) { bool seGuardo = false; try { using (SqlCommand cmd = new SqlCommand("usp_productoalmacen_guardar", cn)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@EmpresaId", registro.EmpresaId.GetNullable()); cmd.Parameters.AddWithValue("@ProductoId", registro.ProductoId.GetNullable()); cmd.Parameters.AddWithValue("@AlmacenId", registro.AlmacenId.GetNullable()); cmd.Parameters.AddWithValue("@TipoMovimiento", registro.TipoMovimientoId.GetNullable()); cmd.Parameters.AddWithValue("@Monto", registro.Monto.GetNullable()); cmd.Parameters.AddWithValue("@Usuario", registro.Usuario.GetNullable()); int filasAfectadas = cmd.ExecuteNonQuery(); seGuardo = filasAfectadas > 0; } } catch (Exception ex) { seGuardo = false; } return(seGuardo); }
public bool Guardar(MovimientoBe registro) { int? movimientoId = null; bool seGuardo = false; { try { using (TransactionScope scope = new TransactionScope()) { cn.Open(); seGuardo = movimientoDa.Guardar(registro, cn, out movimientoId); // Si seGuardo es True entonces if (seGuardo) { if (registro.ListaMovimientoDetalleEliminados != null) { foreach (int movimientoDetalleId in registro.ListaMovimientoDetalleEliminados) { MovimientoDetalleBe registroDetalleEliminar = new MovimientoDetalleBe(); registroDetalleEliminar.EmpresaId = registro.EmpresaId; registroDetalleEliminar.MovimientoId = (int)movimientoId; registroDetalleEliminar.MovimientoDetalleId = movimientoDetalleId; registroDetalleEliminar.Usuario = registro.Usuario; seGuardo = movimientoDetalleDa.Eliminar(registroDetalleEliminar, cn); if (!seGuardo) { break; } } } // Si la Lista de Detalle es diferente de Null if (registro.ListaMovimientoDetalle != null) { //Entonces recorro la misma Lista de detalle con el Item foreach (var item in registro.ListaMovimientoDetalle) { item.MovimientoId = (int)movimientoId; item.EmpresaId = registro.EmpresaId; item.Usuario = registro.Usuario; seGuardo = movimientoDetalleDa.Guardar(item, cn); //seGuardo = new if (!seGuardo) { break; } ProductoAlmacenBe paBe = new ProductoAlmacenBe(); paBe.EmpresaId = registro.EmpresaId; paBe.AlmacenId = registro.SedeAlmacenId; paBe.ProductoId = item.ProductoId; paBe.Monto = item.Cantidad; paBe.TipoMovimientoId = registro.TipoMovimientoId; paBe.Usuario = registro.Usuario; seGuardo = productoAlmacenDa.Guardar(paBe, cn); if (!seGuardo) { break; } } } } if (seGuardo) { scope.Complete(); } cn.Close(); } } catch (Exception ex) { seGuardo = false; } finally { if (cn.State == ConnectionState.Open) { cn.Close(); } } } return(seGuardo); }