public static string Gravar(TRegistro_Lan_RetencaoFinanceiraGMO val, TObjetoBanco banco) { bool st_transacao = false; TCD_Lan_RetencaoFinanceiraGMO cd = new TCD_Lan_RetencaoFinanceiraGMO(); try { if (banco == null) { st_transacao = cd.CriarBanco_Dados(true); } else { cd.Banco_Dados = banco; } string retorno = cd.GravaRetencaoFinanceiraGMO(val); if (st_transacao) { cd.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (st_transacao) { cd.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar retenção: " + ex.Message.Trim()); } finally { if (st_transacao) { cd.deletarBanco_Dados(); } } }
public static string Deletar(TRegistro_Lan_RetencaoFinanceiraGMO val, TObjetoBanco banco) { bool st_transacao = false; TCD_Lan_RetencaoFinanceiraGMO cd = new TCD_Lan_RetencaoFinanceiraGMO(); try { if (banco == null) { st_transacao = cd.CriarBanco_Dados(true); } else { cd.Banco_Dados = banco; } cd.DeletarRetencaoFinanceiraGMO(val); //Excluir Royalties GMO TCN_LanRoyaltiesGMO.Buscar(val.Id_LanctoGMO.ToString(), string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, cd.Banco_Dados).ForEach(p => TCN_LanRoyaltiesGMO.DeletarLanRoyaltiesGMO(p, cd.Banco_Dados)); //Estornar caixa CamadaNegocio.Financeiro.Caixa.TCN_LanCaixa.Busca(val.Cd_ContaGer, val.Cd_LanctoCaixa.ToString(), val.Cd_Empresa, string.Empty, string.Empty, string.Empty, string.Empty, string.Empty, decimal.Zero, decimal.Zero, string.Empty, string.Empty, string.Empty, false, string.Empty, decimal.Zero, false, cd.Banco_Dados).ForEach(p => TCN_LanCaixa.EstornarCaixa(p, null, cd.Banco_Dados)); //Estornar liquidacao TCN_LanLiquidacao.Busca(val.Cd_Empresa, val.Nr_Lancto.Value, val.Cd_Parcela.Value, Convert.ToInt16(val.Id_Liquid), val.Cd_ContaGer, decimal.Zero, decimal.Zero, decimal.Zero, decimal.Zero, decimal.Zero, decimal.Zero, decimal.Zero, false, string.Empty, 0, string.Empty, cd.Banco_Dados).ForEach(p => TCN_LanLiquidacao.CancelarLiquidacao(p, null, cd.Banco_Dados)); if (st_transacao) { cd.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { cd.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro excluir retenção: " + ex.Message.Trim()); } finally { if (st_transacao) { cd.deletarBanco_Dados(); } } }