public static string DeletarReport(TRegistro_Cad_Report val, TObjetoBanco banco) { bool st_transacao = false; TCD_Cad_Report qtb_Report = new TCD_Cad_Report(); try { if (banco == null) { st_transacao = qtb_Report.CriarBanco_Dados(true); } else { qtb_Report.Banco_Dados = banco; } //Deleta o menu new CamadaDados.TDataQuery(qtb_Report.Banco_Dados).executarSql("DELETE TB_DIV_Acesso " + "FROM TB_DIV_Acesso a " + "JOIN TB_DIV_Menu b ON a.id_menu = b.id_menu " + "WHERE b.id_report = " + val.ID_Report, null); new CamadaDados.TDataQuery(qtb_Report.Banco_Dados).executarSql("DELETE TB_DIV_Menu " + "WHERE id_report = " + val.ID_Report, null); new CamadaDados.TDataQuery(qtb_Report.Banco_Dados).executarSql("DELETE TB_CON_Report_X_Consulta " + "WHERE id_report = " + val.ID_Report, null); //Deletar Report qtb_Report.DeletarReport(val); if (st_transacao) { qtb_Report.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_Report.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro excluir relatorio: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_Report.deletarBanco_Dados(); } } }
public static string GravarReport(TRegistro_Cad_Report val, TObjetoBanco banco) { bool st_transacao = false; TCD_Cad_Report qtb_Report = new TCD_Cad_Report(); try { if (banco == null) { st_transacao = qtb_Report.CriarBanco_Dados(true); } else { qtb_Report.Banco_Dados = banco; } //GRAVA O REPORT string retorno = qtb_Report.GravarReport(val); if (st_transacao) { qtb_Report.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (st_transacao) { qtb_Report.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar relatorio: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_Report.deletarBanco_Dados(); } } }
public static string AtualizaMenuReport(string ID_Menu, TObjetoBanco banco) { bool st_transacao = false; TCD_Cad_Report qtb_Report = new TCD_Cad_Report(); try { if (banco == null) { st_transacao = qtb_Report.CriarBanco_Dados(true); } else { qtb_Report.Banco_Dados = banco; } qtb_Report.AtualizaMenuReport(ID_Menu); if (st_transacao) { qtb_Report.Banco_Dados.Commit_Tran(); } return("OK"); } catch (Exception ex) { if (st_transacao) { qtb_Report.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro atualizar menu: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_Report.deletarBanco_Dados(); } } }
public static TList_Cad_Report Buscar(decimal vID_Report, string vDS_Report, string vModulo, string vNM_Classe, string vIdent, decimal vVersao, string vId_rdc, bool vNaoBuscarRelClasse, bool vBuscarHomologacao, bool vBuscarDTSParam) { TpBusca[] filtro = new TpBusca[0]; if (vID_Report > 0) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.ID_Report"; filtro[filtro.Length - 1].vVL_Busca = vID_Report.ToString(); filtro[filtro.Length - 1].vOperador = "="; } if (!string.IsNullOrEmpty(vDS_Report)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.DS_Report"; filtro[filtro.Length - 1].vVL_Busca = "'%" + vDS_Report.Trim() + "%'"; filtro[filtro.Length - 1].vOperador = "LIKE"; } if (!string.IsNullOrEmpty(vModulo)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.Modulo"; filtro[filtro.Length - 1].vVL_Busca = "'" + vModulo.Trim() + "'"; filtro[filtro.Length - 1].vOperador = "="; } if (!string.IsNullOrEmpty(vNM_Classe)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.NM_Classe"; filtro[filtro.Length - 1].vVL_Busca = "'" + vNM_Classe.Trim() + "'"; filtro[filtro.Length - 1].vOperador = "="; } if (!string.IsNullOrEmpty(vIdent)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.Ident"; filtro[filtro.Length - 1].vVL_Busca = "'" + vIdent.Trim() + "'"; filtro[filtro.Length - 1].vOperador = "="; } if (vVersao > 0) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.Versao"; filtro[filtro.Length - 1].vVL_Busca = vVersao.ToString(); filtro[filtro.Length - 1].vOperador = "="; } if (vNaoBuscarRelClasse) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "isnull(a.NM_Classe,'')"; filtro[filtro.Length - 1].vVL_Busca = "''"; filtro[filtro.Length - 1].vOperador = "="; } if (vBuscarHomologacao) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.ID_RDC"; filtro[filtro.Length - 1].vVL_Busca = "null"; filtro[filtro.Length - 1].vOperador = "="; } if (!string.IsNullOrEmpty(vId_rdc)) { Array.Resize(ref filtro, filtro.Length + 1); filtro[filtro.Length - 1].vNM_Campo = "a.id_rdc"; filtro[filtro.Length - 1].vOperador = "="; filtro[filtro.Length - 1].vVL_Busca = "'" + vId_rdc.Trim() + "'"; } TList_Cad_Report lReport = new TCD_Cad_Report().Select(filtro, 0, string.Empty); if (vBuscarDTSParam) { //BUSCA OS DATASOURCES foreach (TRegistro_Cad_Report regReport in lReport) { regReport.lConsulta = TCN_Cad_Consulta.Busca(0, string.Empty, string.Empty, regReport.ID_Report); foreach (TRegistro_Cad_Consulta regConsulta in regReport.lConsulta) { regConsulta.lParamClasse = TCN_Cad_ParamClasse.BuscaParamClasseSQLString(regConsulta.DS_SQL); } } } return(lReport); }
public static string GravarReportConsulta(TRegistro_Cad_Report val, TObjetoBanco banco) { bool st_transacao = false; TCD_Cad_Report qtb_Report = new TCD_Cad_Report(); try { if (banco == null) { st_transacao = qtb_Report.CriarBanco_Dados(true); } else { qtb_Report.Banco_Dados = banco; } //GRAVA O REPORT string retorno = qtb_Report.GravarReport(val); val.ID_Report = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_ID_REPORT")); //DELETA AS ANTIGAS AMARRAÇÕES new CamadaDados.TDataQuery(qtb_Report.Banco_Dados).executarSql("DELETE TB_CON_Report_X_Consulta " + "WHERE id_report = " + val.ID_Report, null); new CamadaDados.TDataQuery(qtb_Report.Banco_Dados).executarSql("UPDATE TB_DIV_MENU set DS_Menu = '" + val.DS_Report + "' " + "WHERE id_report = " + val.ID_Report, null); //GRAVA OS DTS val.lConsulta.ForEach(p => { p.Login = Utils.Parametros.pubLogin; string ret_cons = TCN_Cad_Consulta.GravaConsulta(p, qtb_Report.Banco_Dados); TCN_Cad_Report_X_Consulta.GravarReport_X_Consulta( new TRegistro_Cad_Report_X_Consulta() { ID_Report = val.ID_Report, ID_Consulta = CamadaDados.TDataQuery.getPubVariavel(ret_cons, "@P_ID_CONSULTA") }, qtb_Report.Banco_Dados); p.lParamClasse.ForEach(v => TCN_Cad_ParamClasse.GravarParamClasse(v, qtb_Report.Banco_Dados)); }); if (st_transacao) { qtb_Report.Banco_Dados.Commit_Tran(); } return(retorno); } catch (Exception ex) { if (st_transacao) { qtb_Report.Banco_Dados.RollBack_Tran(); } throw new Exception("Erro gravar relatorio: " + ex.Message.Trim()); } finally { if (st_transacao) { qtb_Report.deletarBanco_Dados(); } } }
private void BB_Download_Click(object sender, EventArgs e) { if (BS_Download.Current != null) { try { object obj = new TCD_Cad_Report().BuscarEscalar( new TpBusca[] { new TpBusca() { vNM_Campo = "a.ID_RDC", vOperador = "=", vVL_Busca = "'" + (BS_Download.Current as CamadaDados.WS_RDC.TRegistro_Cad_RDC).ID_RDC + "'" } }, "1"); if (obj != null) { if (obj.ToString().Trim().ToUpper().Equals("1")) { throw new Exception("Atenção, este relatório já esta cadastrado!"); } } //FAZ O DOWNLOAD DO MESMO RELATORIO TCD_Cad_Report qtb_Report = new TCD_Cad_Report(); try { qtb_Report.CriarBanco_Dados(true); TObjetoBanco banco = qtb_Report.Banco_Dados; //BUSCA O RELATORIO SELECIONADO CamadaDados.WS_RDC.TRegistro_Cad_RDC lista = ServiceRest.DataService.BuscarDetalhesRDC((BS_Download.Current as CamadaDados.WS_RDC.TRegistro_Cad_RDC).ID_RDC); if (lista != null) { (BS_Download.Current as CamadaDados.WS_RDC.TRegistro_Cad_RDC).Code_Report = lista.Code_Report; BS_Download.ResetCurrentItem(); } else { throw new Exception("Atenção, houve erro ao fazer o download do relatório, por favor tente novamente!"); } //o rel já esta cadastrado diretamente TRegistro_Cad_Report Cad_Report = FormRelPadrao.AtualizarRDC.ConvertRDCparaReport(lista); //GRAVA O RELATORIO string retorno = TCN_Cad_Report.GravarReportConsulta(Cad_Report, banco); Cad_Report.ID_Report = Convert.ToDecimal(CamadaDados.TDataQuery.getPubVariavel(retorno, "@P_ID_REPORT")); //GRAVA O MENU TFEscolha_Menu fMenu = new TFEscolha_Menu(); fMenu.Cad_Report = Cad_Report; fMenu.banco = banco; if (fMenu.ShowDialog() == DialogResult.OK) { string retornomenu = TCN_Cad_Report.GravarReportXMenu(Cad_Report, fMenu.Reg_CadMenu, banco); //GRAVA ACESSO PARA O USUARIO TRegistro_CadAcesso regAcesso = new TRegistro_CadAcesso(); regAcesso.Id_menu = fMenu.Reg_CadMenu.id_menu; regAcesso.Login = Parametros.pubLogin; TCN_CadAcesso.GravarAcesso(regAcesso, banco); } else { throw new Exception("Atenção, é necessário informar o menu!"); } qtb_Report.Banco_Dados.Commit_Tran(); //CARREGA NOVAMENTE O MENU Type t = Application.OpenForms["FMenuPrin"].GetType(); t.GetMethod("CarregaMenu").Invoke(Application.OpenForms["FMenuPrin"], new object[] { "MASTER", true }); } catch (Exception ex) { qtb_Report.Banco_Dados.RollBack_Tran(); throw new Exception(ex.Message); } finally { qtb_Report.deletarBanco_Dados(); } } catch (Exception erro) { MessageBox.Show(erro.Message, "Mensagem"); } } }