public void SalvarItem(Item item) { try { if (_validarItem.Salvar(item)) { //nao remova item.Condicionante = item.Condicionante ?? string.Empty; Mensagem msg; if (item.Id > 0) { msg = Mensagem.Item.EditarSucesso; } else { msg = Mensagem.Item.CadastrarSucesso; } GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { bancoDeDados.IniciarTransacao(); int itemIdOriginal = item.Id; _da.SalvarItem(item); if (itemIdOriginal > 0) { List <int> idRoteirosComItem = _da.ObterRoteirosDeItem(item.Id, bancoDeDados); AlterarSituacaoChecagensComRoteiros(idRoteirosComItem, 3, bancoDeDados); } item.Tid = GerenciadorTransacao.ObterIDAtual(); bancoDeDados.Commit(); } Validacao.Add(msg); } } catch (Exception exc) { Validacao.AddErro(exc); } }