Пример #1
0
        public bool Importar(Relatorio relatorio, int executor)
        {
            Fato fato = new RelatorioPersonalizadoBus().ObterFato(relatorio.ConfiguracaoRelatorio.FonteDadosId);

            if (fato == null || fato.Id == 0)
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.FonteDadosNaoEncontrada);
                return(false);
            }

            if (relatorio.ConfiguracaoRelatorio.CamposSelecionados.Exists(x => x.CampoCodigo <= 0) ||
                relatorio.ConfiguracaoRelatorio.Ordenacoes.Exists(x => x.CampoCodigo <= 0) ||
                relatorio.ConfiguracaoRelatorio.Termos.Exists(x => (x.Tipo == (int)eTipoTermo.Filtro) && x.CampoCodigo <= 0) ||
                relatorio.ConfiguracaoRelatorio.Sumarios.Exists(x => x.CampoCodigo <= 0) ||
                relatorio.ConfiguracaoRelatorio.Agrupamentos.Exists(x => x.CampoCodigo <= 0))
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.CamposFiscalizacaoNaoImportado);
            }

            return(Validacao.EhValido);
        }
Пример #2
0
        internal bool Executar(Relatorio relatorio, int executor)
        {
            if (!relatorio.UsuariosPermitidos.Exists(x => x.Id == executor))
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.SemPermissaoExecutar);
                return(false);
            }

            if (relatorio.ConfiguracaoRelatorio.CamposSelecionados.Where(c => c.Campo != null).Count() <= 0)
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.ConfiguracaoInvalida);
                return(false);
            }

            Fato fato = new RelatorioPersonalizadoBus().ObterFato(relatorio.ConfiguracaoRelatorio.FonteDadosId);

            if (fato == null || fato.Id == 0)
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.FonteDadosNaoEncontrada);
                return(false);
            }
            else if (fato.Tid != relatorio.ConfiguracaoRelatorio.FonteDadosTid)
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.FonteDadosDesatualizada);
                return(false);
            }

            if (relatorio.Setor <= 0)
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.SetorObrigatorio);
                return(false);
            }

            int      i = 0;
            DateTime data;

            relatorio.ConfiguracaoRelatorio.Termos.Where(x => x.DefinirExecucao).ToList().ForEach(x =>
            {
                i++;
                if (x.Campo.PossuiListaDeValores)
                {
                    if (x.Valor == "0")
                    {
                        Validacao.Add(Mensagem.RelatorioPersonalizado.CampoObrigatorio(x.Campo.Alias, i));
                    }
                }
                else if (string.IsNullOrEmpty(x.Valor))
                {
                    Validacao.Add(Mensagem.RelatorioPersonalizado.CampoObrigatorio(x.Campo.Alias, i));
                }
                else if (x.Campo.TipoDadosEnum == eTipoDados.Data && !DateTime.TryParse(x.Valor, out data))
                {
                    Validacao.Add(Mensagem.RelatorioPersonalizado.FiltroInvalido(x.Campo.Alias, i));
                }
            });

            relatorio.ConfiguracaoRelatorio.Termos.Where(x => !string.IsNullOrEmpty(x.Valor) && !x.DefinirExecucao).ToList().ForEach(r =>
            {
                if (r.Campo.TipoDadosEnum == eTipoDados.Data && !DateTime.TryParse(r.Valor, out data))
                {
                    Validacao.Add(Mensagem.RelatorioPersonalizado.FiltroInvalido(r.Campo.Alias));
                }
            });

            if (relatorio.ConfiguracaoRelatorio.CamposSelecionados == null || relatorio.ConfiguracaoRelatorio.CamposSelecionados.Exists(x => x.Campo == null))
            {
                Validacao.Add(Mensagem.RelatorioPersonalizado.FonteDadosDesatualizada);
            }

            return(Validacao.EhValido);
        }