public static string Gravar(TRegistro_MovLMC val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_MovLMC qtb_mov = new TCD_MovLMC(); try { if (banco == null) { st_transacao = qtb_mov.CriarBanco_Dados(true); } else { qtb_mov.Banco_Dados = banco; } val.Id_movtostr = CamadaDados.TDataQuery.getPubVariavel(qtb_mov.Gravar(val), "@P_ID_MOVTO"); //Gravar Rec val.lRec.ForEach(p => { p.Cd_empresa = val.Cd_empresa; p.Id_lmc = val.Id_lmc; p.Id_movto = val.Id_movto; TCN_MovRec.Gravar(p, qtb_mov.Banco_Dados); }); //Gravar Vendas val.lVend.ForEach(p => { p.Cd_empresa = val.Cd_empresa; p.Id_lmc = val.Id_lmc; p.Id_movto = val.Id_movto; TCN_MovVend.Gravar(p, qtb_mov.Banco_Dados); }); if (st_transacao) { qtb_mov.Banco_Dados.Commit_Tran(); } return(val.Id_movtostr); } catch (Exception ex) { if (st_transacao) { qtb_mov.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar movimento: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_mov.deletarBanco_Dados(); } } }
public static string Excluir(TRegistro_MovLMC val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_MovLMC qtb_mov = new TCD_MovLMC(); try { if (banco == null) { st_transacao = qtb_mov.CriarBanco_Dados(true); } else { qtb_mov.Banco_Dados = banco; } //Excluir Vendas val.lVend.ForEach(p => TCN_MovVend.Excluir(p, qtb_mov.Banco_Dados)); //Excluir Rec val.lRec.ForEach(p => TCN_MovRec.Excluir(p, qtb_mov.Banco_Dados)); qtb_mov.Excluir(val); if (st_transacao) { qtb_mov.Banco_Dados.Commit_Tran(); } return(val.Id_movtostr); } catch (Exception ex) { if (st_transacao) { qtb_mov.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro excluir movimento: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_mov.deletarBanco_Dados(); } } }