예제 #1
0
        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();
                }
            }
        }
예제 #2
0
        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();
                }
            }
        }
예제 #3
0
        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();
                }
            }
        }
예제 #4
0
        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();
                }
            }
        }
예제 #5
0
        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");
                }
            }
        }