none
query filtro parametro RRS feed

  • Pergunta

  • Criei a select  :

    select A.codigo_produto, A.descricao, A.situacao, A.class_fiscal, A.id_produto, B.id_produto, B.cod_barras
    from vw_rs_produto A inner join vw_rs_produto_cod_barras B on A.id_produto = B.id_produto

     

    Agora preciso criar um parametro para aparecer só os ativos, só os inativos e todos.

    Na coluna situação os valores aparecem como texto : Ativo  e   Inativo.

     

    Alguem pode me ajudar???



    quinta-feira, 28 de julho de 2011 16:07

Respostas

  • Boa tarde Marcos,

     

    Complementando o que o Junior Galvão publicou, faça da seguinte forma supondo que exista o campo produto_ativo na sua tabela vw_rs_produto:

     

    select A.codigo_produto, A.descricao, A.situacao, A.class_fiscal, A.id_produto, B.id_produto, B.cod_barras

    from vw_rs_produto A

    inner join vw_rs_produto_cod_barras B on A.id_produto = B.id_produto

    where A.produto_ativo = @ATIVO

     

    onde @ATIVO é o parametro que você vai configurar na parte de parametros, dai vai depender se o seu campo é Integer, Stirng, e boas...

     

    monte  a query exatamente como te informei, que voce vai ver que o parametro ja ficará disponível

     

    abraços...

     


    Rodrigo Santos
    sexta-feira, 29 de julho de 2011 19:24

Todas as Respostas

  • Marco,

    Qual é a sua dúvida, como criar um filtro para o relatório?

    Se for isso é muito simples, através da ferramenta BIDS que você esta utilizando para desenvolver seu relatório você vai encontrar os recursos de Parameters, basta criar um parâmetro com nome e tipo de dados definido, após isso utilizar da seguinte forma na sua query:

    select A.codigo_produto, A.descricao, A.situacao, A.class_fiscal, A.id_produto, B.id_produto, B.cod_barras
    from vw_rs_produto A inner join vw_rs_produto_cod_barras B on A.id_produto = B.id_produto
    Where A.Situacao = ?NomedoSeuParametro

     

    Veja este link:

    http://www.linhadecodigo.com.br/Artigo.aspx?id=753

     


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quinta-feira, 28 de julho de 2011 20:49
  • Boa tarde Marcos,

     

    Complementando o que o Junior Galvão publicou, faça da seguinte forma supondo que exista o campo produto_ativo na sua tabela vw_rs_produto:

     

    select A.codigo_produto, A.descricao, A.situacao, A.class_fiscal, A.id_produto, B.id_produto, B.cod_barras

    from vw_rs_produto A

    inner join vw_rs_produto_cod_barras B on A.id_produto = B.id_produto

    where A.produto_ativo = @ATIVO

     

    onde @ATIVO é o parametro que você vai configurar na parte de parametros, dai vai depender se o seu campo é Integer, Stirng, e boas...

     

    monte  a query exatamente como te informei, que voce vai ver que o parametro ja ficará disponível

     

    abraços...

     


    Rodrigo Santos
    sexta-feira, 29 de julho de 2011 19:24
  • Ok Marcos, verifique se o tipo de dados do parametro que voce configurou é o mesmo tipo de dados do campo na tabela em seu banco de dados. O seu RS é 2005 ou 2008?

    Me envia a sua query (do reporting services) ja com os parametros e o script de criação da tabela vw_rs_produto, para que possa analisar melhor para voce.

     


    Rodrigo Santos
    domingo, 31 de julho de 2011 01:25
  • select A.codigo_produto, A.descricao,A.id_situacao,  A.situacao, A.class_fiscal, A.id_produto, B.id_produto, B.cod_barras
     
    from vw_rs_produto A
     
    inner join vw_rs_produto_cod_barras B on A.id_produto = B.id_produto
     
    where A.situacao = @ATIVO

     

     

    Meu RS e 2005


    Me passa seu email pra eu te mandar os prints
    domingo, 31 de julho de 2011 01:36
  • Amigo, preparei um tutorial aqui para voce com um exemplo, um pouco diferente mas que talvez te ajude. Nesse exemplo o usuario tem que informar o ano que deseja que deseja visualizar as informações (ano em inteiro) e está funcionando. Talvez te ajude.

     

    https://www.yousendit.com/dl?phi_action=app/orchestrateDownload&rurl=http%253A%252F%252Fwww.yousendit.com%252Ftransfer.php%253Faction%253Dbatch_download%2526batch_id%253DYTYrQ3Q2eFhVbS92Wmc9PQ&s=19102&cid=tx-02002207340200000000

    copia a url acima

     

    abraços....


    Rodrigo Santos
    domingo, 31 de julho de 2011 01:49
  • Pessoal,
     
    Estou precisando de ajuda e é parecido com o que vocês postaram aqui.
     
    Ex.
    SELECT tab1.xpto1, tab1.xpto2, tab1.[@CAMPO], tab2.xpto
    FROM tab1 inner join tab2 on tab1.[@CAMPO] = tab2.x
     
    O problema é que esse parametro no select não funciona, conhecem alguma outra forma?
     
    Obrigado.
    sexta-feira, 23 de setembro de 2011 14:19
  • Barbosa,

     

    Explique melhor a sua necessidade, não é usual usar parametros em campos, pelo menos nunca me deparei com uma necessidade dessas. Da mesma forma nas tabelas.

    Parametros são mais comuns na clausula where

    Talvez uma outra solução.

     

    abraços...


    Rodrigo Santos
    sexta-feira, 23 de setembro de 2011 20:09
  • Rodrigo,

     

    Estou utilizando o RS para criar uma série de relatórios.

    O que preciso é "criar" a consulta em tempo de execução para meu select não ficar pesando no banco de dados.

     

    Por exemplo:

    Eu tenho uma tabela com 20 perguntas que foram feitas a 100 entrevistados e o usuario pode selecionar

    qual pergunta ele precisa ver o grafico. Neste caso eu preciso selecionar apenas aquela pergunta no meu

    banco de dados para executar os calculos.

     

    Consegui explicar?

    Obrigado,

    Abs.

    Thiago Barbosa.

     

    quinta-feira, 29 de setembro de 2011 12:37