none
Dúvida SP RRS feed

  • Pergunta

  • Tenho o seguinte cenário, tenho um relatório que me retorna algumas perguntas, no entanto quando existir por exemplo a pergunta A a pergunta B não pode estar no mesmo relatório, estou trabalhando com SP e ReportService, de momento tive a idéia de criar uma expressão no RS que resolvesse em partes resolveu pois não me mostrou a pergunta B, no entanto o local da pergunta B ficou em branco abrindo um lacuna no relatório, que da a típica impressão para o usuário que ali deveria ter alguma pergunta, lembrando que essas perguntas são selecionadas dinamicamente pelo usuário e ela deve existir no relatório, só não quando existir a pergunta A junto, qual é a melhor solução para essa questão? grato desde já.

    segunda-feira, 26 de novembro de 2007 11:38

Todas as Respostas

  • as perguntas estao vindo da proc ?, se as perguntas estiverem no detail nao ira ficar em branco, usando condicional ele nao tem como controlar apenas esconde a pergunta, acho que vc. vai ter que alterar a proc mesmo.

     

    Abs;

     

    segunda-feira, 26 de novembro de 2007 11:43
  • Colla,

     

    Sim estão vindo de uma sp, surgiu uma nova dúvida vou repostar aqui minha sp:

     

    ALTER Procedure dbo.PROC_RELATORIOGRAFICO_LOCAL

    @CodCampanha INT,

    @BitGrafico BIT

    AS

    Select P.NomePergunta as Pergunta,ISNULL(PR.DscProduto,'') as Produto,E.Fantasia as Loja,

    COUNT(*) as Ocorrencias,

    CASE WHEN PP.BitRelatorioMedia = 1 then AVG(dbo.getResposta(COP.Respostas))

    ELSE null

    END as Media,

    CASE WHEN PP.BitRelatorioTotal = 1 then SUM(dbo.getResposta(COP.Respostas))

    ELSE null

    END as Total

    from ControleOcorrencia CO with (nolock)

    inner join Periodo PE with (nolock) on

    CO.CodPeriodo = PE.CodPeriodo

    inner join ControleOcorrencia_Pergunta COP with (nolock) on

    CO.CodOcorrencia = COP.CodOcorrencia

    inner join Pergunta P with (nolock) on

    COP.CodPergunta = P.CodPergunta

    inner join Empresa E with (nolock) on

    CO.CodLocal = E.CodEmpresa

    inner join Cidade CID with (nolock) on

    CID.CodCidade = E.CodCidade

    inner join Periodo_Pergunta PP with (nolock) on

    COP.CodPergunta = PP.CodPergunta

    and CO.CodPeriodo = PP.CodPeriodo

    and (PP.BitGrafico = @BitGrafico or @BitGrafico is null)

    left join Periodo_Produto PR with (nolock) on

    CO.CodPeriodo = PR.CodPeriodo

    and COP.CodPeriodoProduto = PR.CodPeriodoProduto

    where P.TipoEntrada in (1,2)

    and COP.BitIgnorar = 0

    and PE.CodCampanha = @CodCampanha

    group by COP.CodPergunta,P.NomePergunta,PR.DscProduto,E.CodEmpresa,E.Fantasia,PP.BitRelatorioMedia,PP.BitRelatorioTotal

    order by E.Fantasia,P.NomePergunta

     

    Como pode observar a parte destacada em amarelo é a parte que vincula as perguntas no relatório no entanto como deevo proceder para separar a pergunta B da A quando essas estiverem juntas porque nessa minha sp pegam todas, e desculpe pelos transtorno tinha colocado a sp errada, obrigado pela atenção desde já.

    segunda-feira, 26 de novembro de 2007 12:03
  • Leandro,

     

    Estas questões A e B, são campos separados da sua table?

    segunda-feira, 26 de novembro de 2007 12:13
  • Junior,

     

    Essas "questões" A, B, C... etc são oriundas de minha tabela chamada Pergunta,

     

    inner join Pergunta P with (nolock) on

    COP.CodPergunta = P.CodPergunta

     

    Ja na minha tabela Periodo_Pergunta, eu tenho o campo CodPergunta e campo Valores

     

    inner join Periodo_Pergunta PP with (nolock) on

    COP.CodPergunta = PP.CodPergunta

     

    Ou seja as "questões" se encontram na mesma tabela, e atráves de uma seleção feita pelo usuário são apresentadas no relatório.

     

    Obrigado pela atenção, 

    segunda-feira, 26 de novembro de 2007 12:21