Reporting Services no SQL Server 2008 R2 – Montando relatórios específicos

Fala galera, uma das coisas que foi necessário fazer internamente na NGR Solutions, era imprimir Notas Fiscais baseadas nos projetos que entregávamos. Em São Paulo (e algumas outras cidades) a emissão de Notas Fiscais é eletrônica, porém a NGR está sediada em Poá e a prefeitura da cidade não aceita notas eletrônicas, só são aceitas notas através do talão. Nossa sorte é que foi possível destacar as notas do talão e imprimir as informações. Com base nesse contexto de exemplo, pode ser facilmente adaptado à qualquer outra necessidade.

Para imprimir as informações da Nota Fiscal, vou me basear em uma procedure chamada “sps_NotaFiscal” que retorna todas as informações necessárias para o preenchimento da Nota. Estas informações vocês podem retornar de sua estrutura de dados normalizada.

Para entender esse modelo de nota fiscal de talão, veja a imagem abaixo. Nela as linhas em preto são as delimitações padrões de uma Nota Fiscal de serviços, os números que estão em verde é a distância da lateral esquerda até o campo que será impresso e os números em vermelho representam a distância entre o topo da página e o texto.

NF Modelo

Agora que já sabemos como é o modelo que será trabalhado, vamos abrir o SQL Server Reporting Services e o SQL Server 2008 R2 para coletar os dados e montar o layout que será impresso.

imageDepois de criar um projeto no BIDS (Business Intelligence Development Studio) e montar a estrutura simples conectando no nosso Banco de Dados e apontando para a procedure criada que retorna os dados necessários.

Se precisar de ajuda para criar seu Shared Data Source e seu Shared Datasets, leia Criando seu primeiro relatório. Vou entender que estamos com esta estrutura criada, ok?!

Neste exemplo, o Data Source aponta para o Banco de Dados e o Data Set aponta para a procedure “sps_NotaFiscal” que faz a busca na base de dados e retorna as informações necessárias para a montagem da Nota.

imageVamos adicionar um relatório chamado “NF_Talao” e especificar que os dados que serão consultados está no NotaFiscal.rsd (DataSet). Para isso é necessário selecionar os campos que retornam do DataSet, encontrando estes campos no Report Data. Caso não esteja visualizando a sessão Report Data, clique em qualquer parte do corpo do relatório, vá até o menu View e procure o ítem Report Data. Ou utilize o atalho Ctrl+Alt+D.

imageimageAgora que a sessão está aberta (figura da esquerda), será adicionado o DataSet que retorna os dados. Para isso, vá até o ítem Datasets do Report Data, clique com o botão direito e vá para Add Dataset. Quando a tela de selecionar o DataSet abrir, selecione o DataSet já criado anteriormente e mude o campo Name para NotaFiscal. Este nome será mostrado dentro da pasta DataSet do Report Data (figura da direita).

Repare que os campos da sua nota fiscal estão apresentados dentro do DataSet criado. Estes campos serão arrastados para dentro do relatório, em seus devidos lugares. image

O layout que será utilizado é o apresentado no início, reparem que no modelo temos números em verde e vermelho escritos à mão. Estes números são as distâncias entre a borda e topo do campo. Vamos arrastar o campo DataEmissao do Dataset para dentro do relatório, e em seguida, ajustar a posição correta. Lembrando que o número em vermelho é a distância do topo (Top) e a verde é a distância da esquerda (Left). Esta configuração deve ser feita em todos os campos do Dataset.

Após colocar todos campos no relatório, e organizar a localização (distâncias da lateral e topo), seu relatório terá uma aparëncia como esta abaixo.

image

Para testar o relatório, execute apertando F5. Se tudo estiver correto, seu relatório será semelhante a este abaixo:

image

Se imprimir este relatório em uma Nota Fiscal do talão, o relatório será como este abaixo:

NF Final

Ocasionalmente, um ajuste ou outro poderá ocorrer em cima da impressão realizada, este período de desenvolvimento e testes é exatamente para encontrar esses detalhes e consertar.

Montar relatórios com o SQL Server Reporting Services é extremamente simples, alguém discorda?! rss

Compartilhe o post:
RSS
Follow by Email
Facebook
YOUTUBE
YOUTUBE
LinkedIn

Comentários

comments

56 thoughts on “Reporting Services no SQL Server 2008 R2 – Montando relatórios específicos

  1. Excelente sacada. Simples, prático, rápido e objetvio.
    Talvez com o ReportBuilder (do SSRS) fosse mais fácil diagramar e acertar os detalhes de leiaute.

    []s

  2. legal! eu já tive que fazer isso algumas vezes para criar etiquetas de endereçamento.
    imprimir certinho naqueles papéis especiais, para que o cliente só destaque o papel e cole nos envelopes.
    meio chato de acertar o passo na hora da criação, mas depois de feito a primeira vez fica show de bola!

    [ ]’s

  3. No meu caso não aparece o Shared Dataset, estou com o 2008.

    será que vou ter que baixar mais atualizações?

  4. You could definitely see your skills within the paintings you write. The sector hopes for more passionate writers like you who are not afraid to say how they believe. All the time go after your heart.

  5. it is a really nice point of view. I usually meet people who rather say what they suppose others want to hear. Good and well written! I will come back to your site for sure!

  6. It is really a great and useful piece of info. I am glad that you shared this useful info with us. Please keep us informed like this. Thank you for sharing.

  7. Your style is unique in comparison to other people I have read stuff from. Thanks for posting when you ave got the opportunity, Guess I will just book mark this blog.

  8. I truly appreciate this post. I ave been looking all over for this! Thank goodness I found it on Bing. You have made my day! Thx again!

  9. Your style is really unique compared to other people I have read stuff from. I appreciate you for posting when you have the opportunity, Guess I all just bookmark this web site.

  10. Your style is so unique in comparison to other folks I ave read stuff from. Thank you for posting when you ave got the opportunity, Guess I all just bookmark this web site.

  11. I think other site proprietors should take this web site as an model, very clean and magnificent user friendly style and design, let alone the content. You are an expert in this topic!

  12. wonderful points altogether, you just gained a new reader. What might you recommend in regards to your submit that you just made some days ago? Any certain?

  13. I was suggested this website by my cousin. I am not sure whether this post is written by him as no one else know such detailed about my problem. You are amazing! Thanks!

  14. It as not that I want to copy your internet site, but I really like the pattern. Could you let me know which style are you using? Or was it especially designed?

Deixe uma resposta

O seu endereço de e-mail não será publicado.