public static string Gravar(TRegistro_OrdemServico val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_OrdemServico qtb_os = new TCD_OrdemServico(); try { if (banco == null) { st_transacao = qtb_os.CriarBanco_Dados(true); } else { qtb_os.Banco_Dados = banco; } //Data Ordem val.Dt_ordem = CamadaDados.UtilData.Data_Servidor(qtb_os.Banco_Dados); //Gravar Ordem val.Id_ordemstr = CamadaDados.TDataQuery.getPubVariavel(qtb_os.Gravar(val), "@P_ID_ORDEM"); //Excluir item ordem servico val.lItensDel.ForEach(p => TCN_ItensOrdemServico.Excluir(p, qtb_os.Banco_Dados)); //Gravar item ordem servico val.lItens.ForEach(p => { p.Cd_empresa = val.Cd_empresa; p.Id_ordem = val.Id_ordem; TCN_ItensOrdemServico.Gravar(p, qtb_os.Banco_Dados); }); if (st_transacao) { qtb_os.Banco_Dados.Commit_Tran(); } return(val.Id_ordemstr); } catch (Exception ex) { if (st_transacao) { qtb_os.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar OS: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_os.deletarBanco_Dados(); } } }
public static string Excluir(TRegistro_OrdemServico val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_OrdemServico qtb_os = new TCD_OrdemServico(); try { if (banco == null) { st_transacao = qtb_os.CriarBanco_Dados(true); } else { qtb_os.Banco_Dados = banco; } //Excluir itens da ordem val.lItens.ForEach(p => TCN_ItensOrdemServico.Excluir(p, qtb_os.Banco_Dados)); qtb_os.Excluir(val); if (st_transacao) { qtb_os.Banco_Dados.Commit_Tran(); } return(val.Id_ordemstr); } catch (Exception ex) { if (st_transacao) { qtb_os.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro excluir OS: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_os.deletarBanco_Dados(); } } }