public static string Excluir(TRegistro_AbastFrota_X_CCusto val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_AbastFrota_X_CCusto qtb_custo = new TCD_AbastFrota_X_CCusto(); try { if (banco == null) { st_transacao = qtb_custo.CriarBanco_Dados(true); } else { qtb_custo.Banco_Dados = banco; } qtb_custo.Excluir(val); if (st_transacao) { qtb_custo.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_custo.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro excluir registro: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_custo.deletarBanco_Dados(); } } }
public static void ProcessarAbasCResultado(List <TRegistro_AbastVeiculo> lAbast, string CD_CentroResult, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_AbastFrota_X_CCusto qtb_desp = new TCD_AbastFrota_X_CCusto(); try { if (banco == null) { st_transacao = qtb_desp.CriarBanco_Dados(true); } else { qtb_desp.Banco_Dados = banco; } if (string.IsNullOrEmpty(CD_CentroResult)) { throw new Exception("Obrigatório informar centro de resultado."); } lAbast.ForEach(p => { //Verificar se despesa possui centro de resultado TCN_AbastFrota_X_CCusto.Buscar(p.Id_abastecimentostr, string.Empty, qtb_desp.Banco_Dados).ForEach(v => { TCN_AbastFrota_X_CCusto.Excluir(v, qtb_desp.Banco_Dados); CamadaNegocio.Financeiro.CCustoLan.TCN_LanCCustoLancto.Excluir( new CamadaDados.Financeiro.CCustoLan.TRegistro_LanCCustoLancto() { Id_ccustolan = v.Id_ccustolan }, qtb_desp.Banco_Dados); }); //Gravar Lancto Resultado string id = CamadaNegocio.Financeiro.CCustoLan.TCN_LanCCustoLancto.Gravar( new CamadaDados.Financeiro.CCustoLan.TRegistro_LanCCustoLancto() { Cd_empresa = p.Cd_empresa, Cd_centroresult = CD_CentroResult, Vl_lancto = p.Vl_subtotal, Dt_lancto = p.Dt_abastecimento }, qtb_desp.Banco_Dados); //Amarrar Lancto a Caixa Gravar(new TRegistro_AbastFrota_X_CCusto() { Id_abastecimento = p.Id_abastecimento, Id_ccustolan = decimal.Parse(id) }, qtb_desp.Banco_Dados); }); if (st_transacao) { qtb_desp.Banco_Dados.Commit_Tran(); } } catch (Exception ex) { if (st_transacao) { qtb_desp.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro processar abastecimentos: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_desp.deletarBanco_Dados(); } } }