public static string Excluir(TRegistro_Pergunta val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Pergunta qtb = new TCD_Pergunta(); try { if (banco == null) { st_transacao = qtb.CriarBanco_Dados(true); } else { qtb.Banco_Dados = banco; } //Validar se pergunta está sendo utilizada TpBusca[] tpBuscas = new TpBusca[0]; Estruturas.CriarParametro(ref tpBuscas, "a.id_pergunta", "'" + val.Id_perguntastr + "'"); if (new TCD_Questionario_X_Pergunta().BuscarEscalar(tpBuscas, "1") != null) { throw new Exception("Está pergunta está sendo utilizada, não será possível excluir."); } qtb.Excluir(val); if (st_transacao) { qtb.Banco_Dados.Commit_Tran(); } return(val.Id_perguntastr); } catch (Exception ex) { if (st_transacao) { qtb.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro ao excluir a pergunta: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb.deletarBanco_Dados(); } } }
public static string Gravar(TRegistro_Pergunta val, BancoDados.TObjetoBanco banco) { bool st_transacao = false; TCD_Pergunta qtb = new TCD_Pergunta(); try { if (banco == null) { st_transacao = qtb.CriarBanco_Dados(true); } else { qtb.Banco_Dados = banco; } val.Id_perguntastr = CamadaDados.TDataQuery.getPubVariavel(qtb.Gravar(val), "@P_ID_PERGUNTA"); if (st_transacao) { qtb.Banco_Dados.Commit_Tran(); } return(val.Id_perguntastr); } catch (Exception ex) { if (st_transacao) { qtb.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar Pergunta: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb.deletarBanco_Dados(); } } }