none
Placeholder Dinamico RRS feed

  • Pergunta

  • E ae Galera

     

    Preciso de uma ajuda, estou desenvolvendo um Report que tem como objetivo exibir instruções SQL, e queria poder formatar o texto para uma aparencia similar a ambientes de Edição de Intruções SQL, como o SSMS e etc.

    Sei que para isso preciso ter em mãos previamente a lista de palavras reservadas da linguagem SQL, e eu tenho.

    Preciso somente entender como que consigo aplicar mais de uma formatação a um texto, ou seja, certas partes do texto terá uma formatação enquanto outras terão outras opções de formatação.

    Dei uma lida sobre PlaceHolder do Reporting Services 2008, porém o mesmo somente é util quando voce ja sabe de antemão em quais posições do texto deseja ter uma especifica formatação, percebi também que, um textbox pode haver mais de um placeholder, porem um não pode utilizar o outro em sua "Expression".

    Alguem tem alguma ideia para poder utilizar um PlaceHolder como parametro em uma função replace ? Ou alguma outra forma de fazer isso  ?

     

    Victor Perez

    terça-feira, 3 de maio de 2011 16:54

Respostas

  • Acho que o mais fácil para voce é usar formatacao HTML. Voce pode criar um custom code no relatorio que le a instrucao SQL e formata as palavras chaves usando tags html. Na caixa de texto, em propriedades configure para Markup=HTML, dessa forma o SSRS irá mostrar a caixa de texto com as formatações.

    Na caixa de texto, voce terá que usar algo como

    =Code.ConvertToHtml(Fields!CampoQueContemSQL.Value)

    Por exemplo, se voce colocar o seguinte texto na textbox:

    ="<b>SELECT</b> nome <b>FROM</b> tabela;"

    E a caixa de texto estiver configurada para markup=html, o select e o from serão mostrados em negrito.

    Att

    Boreki


    Boreki[MSFT] - SQL Server Reporting Services
    • Marcado como Resposta VictorPerez quarta-feira, 4 de maio de 2011 17:01
    terça-feira, 3 de maio de 2011 17:01

Todas as Respostas

  • Acho que o mais fácil para voce é usar formatacao HTML. Voce pode criar um custom code no relatorio que le a instrucao SQL e formata as palavras chaves usando tags html. Na caixa de texto, em propriedades configure para Markup=HTML, dessa forma o SSRS irá mostrar a caixa de texto com as formatações.

    Na caixa de texto, voce terá que usar algo como

    =Code.ConvertToHtml(Fields!CampoQueContemSQL.Value)

    Por exemplo, se voce colocar o seguinte texto na textbox:

    ="<b>SELECT</b> nome <b>FROM</b> tabela;"

    E a caixa de texto estiver configurada para markup=html, o select e o from serão mostrados em negrito.

    Att

    Boreki


    Boreki[MSFT] - SQL Server Reporting Services
    • Marcado como Resposta VictorPerez quarta-feira, 4 de maio de 2011 17:01
    terça-feira, 3 de maio de 2011 17:01
  • Criei uma tabela que contem todas as palavras reservadas , agora vou escrever o código que edita o Html, ja ja respondo se deu certo, mesmo assim obrigado.
    terça-feira, 3 de maio de 2011 19:41
  • Boreki

     

    Primeirente obrigado pela dica, realmente a ideia esta fluido, mas percebi que quando utilizo o PlaceHolder com a opção Markup = Html não consigo manter os espaços a esquerda dos textos, é normal ? tem como resolver isso com alguma tag especifica do HTML ?

     

    Desde ja agradeço

     

    Victor Perez

    quarta-feira, 4 de maio de 2011 15:02
  • Victor,

    O SSRS vai cortar os espaços em branco sim (mesmo que voce use a tag HTML &nbsp;) mas voce pode usar formatacao de paragrafos para controlar o alinhamento do html.

    Att

    Boreki


    Boreki[MSFT] - SQL Server Reporting Services
    quarta-feira, 4 de maio de 2011 17:02
  • Realmente Funcionou, muito obrigado.
    segunda-feira, 9 de maio de 2011 13:48