コード例 #1
0
        private void BB_Relatorio_Click(object sender, EventArgs e)
        {
            if (BS_Download.Current != null)
            {
                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();
                    //o rel já esta cadastrado diretamente
                    TRegistro_Cad_Report Cad_Report = FormRelPadrao.AtualizarRDC.ConvertRDCparaReport(lista);

                    Query_Report relatorio = new Query_Report();
                    relatorio.Homologacao = true;
                    relatorio.MontaFormRelatorio(Cad_Report, null);
                }
            }
            else
            {
                MessageBox.Show("Atenção é necessário selecionar um RDC!", "Mensagem");
            }
        }
コード例 #2
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");
                }
            }
        }