public Decimal AdicionarGrupoEmpresarialConEmpresas(String NOMBRE , List <grupoEmpresarial> listEmpresas) { Decimal ID_GRUPOEMPRESARIAL = 0; Boolean correcto = true; Conexion conexion = new Conexion(Empresa); conexion.IniciarTransaccion(); try { ID_GRUPOEMPRESARIAL = AdicionarGrupoEmpresarial(NOMBRE, conexion); if (ID_GRUPOEMPRESARIAL <= 0) { correcto = false; conexion.DeshacerTransaccion(); ID_GRUPOEMPRESARIAL = 0; } else { if (listEmpresas.Count > 0) { cliente _cliente = new cliente(Empresa, Usuario); foreach (grupoEmpresarial empresa in listEmpresas) { if (_cliente.ActualizarGrupoEmpresarialCliente(empresa.ID_EMPRESA, ID_GRUPOEMPRESARIAL, conexion) == false) { correcto = false; conexion.DeshacerTransaccion(); ID_GRUPOEMPRESARIAL = 0; } } } } if (correcto == true) { conexion.AceptarTransaccion(); } } catch { conexion.DeshacerTransaccion(); ID_GRUPOEMPRESARIAL = 0; correcto = false; } finally { conexion.Desconectar(); } return(ID_GRUPOEMPRESARIAL); }
public Boolean ActualizarGrupoEmpresarialConEMpresas(Decimal ID_GRUPOEMPRESARIAL , String NOMBRE , List <grupoEmpresarial> listaEmpresas) { Conexion conexion = new Conexion(Empresa); conexion.IniciarTransaccion(); Boolean correcto = true; try { if (ActualizarGrupoEmpresarial(ID_GRUPOEMPRESARIAL, NOMBRE, conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; } else { cliente _cliente = new cliente(Empresa, Usuario); DataTable tablaEmpresasAsociadas = _cliente.ObtenerEmpresasAsociadasAGrupo(ID_GRUPOEMPRESARIAL, conexion); Boolean existeEmpresa = false; if (tablaEmpresasAsociadas.Rows.Count > 0) { foreach (DataRow fila in tablaEmpresasAsociadas.Rows) { existeEmpresa = false; foreach (grupoEmpresarial empresa in listaEmpresas) { if (empresa.ID_EMPRESA == Convert.ToDecimal(fila["ID_EMPRESA"])) { existeEmpresa = true; break; } } if (existeEmpresa == false) { if (_cliente.DesligarEmpresaDeGrupoEmpresarial(Convert.ToDecimal(fila["ID_EMPRESA"]), conexion) == false) { conexion.DeshacerTransaccion(); correcto = false; break; } } } } if (correcto == true) { foreach (grupoEmpresarial empresa in listaEmpresas) { if (_cliente.ActualizarGrupoEmpresarialCliente(empresa.ID_EMPRESA, ID_GRUPOEMPRESARIAL, conexion) == false) { correcto = false; conexion.DeshacerTransaccion(); } } } } if (correcto == true) { conexion.AceptarTransaccion(); } } catch (Exception ex) { conexion.DeshacerTransaccion(); correcto = false; MensajeError = ex.Message; } finally { conexion.Desconectar(); } return(correcto); }