1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

VB.net | Visualizar Relatório em PDF

Discussão em 'Programação' iniciada por diog0silva, 14 de Abril de 2009. (Respostas: 11; Visualizações: 3550)

  1. diog0silva

    diog0silva Power Member

    Boas.

    Tive a ler uns fóruns e a ver uns videos de um Laércio Freitas (bastantes bons, por sinal), e explica lá como exportar um relatório para pdf, e visualizá-lo. Contudo, o exemplo que ele dá é num Web Form, e eu estou a usar Windows Forms.

    Encontrei um forúm tambem respondido por ele, em que ele explica como exportar um relatório para pdf num Windows Form. Mas o que o código faz é gerar um pdf e guardá-lo, mas não o mostra.

    http://social.msdn.microsoft.com/fo.../thread/e7d5514e-27b0-4ed7-bc84-c19964dc3f97/

    Esse é o link onde ele explica isso.

    Se alguém souber como, em vez de gerar o pdf e guardá-lo, apenas mostrá-lo, agradeço.
     
  2. Granadafeup

    Granadafeup Power Member

    Em principio cria sempre um ficheiro, nem que seja numa pasta temporária.

    Uma solução pode passar por guardares o ficheiro numa pasta predefinida, abres o dito ficheiro, e quando o utilizador já não precisa dele removes o ficheiro (tipo num evento onClose)

    Espero que ajude.
     
  3. diog0silva

    diog0silva Power Member

    Estou a perceber. Mas como faço quer para abrir o ficheiro quer para apagá-lo? Isto em termos de código lol

    Obrigado pela ajuda! :D
     
  4. Ruben_Barbosa

    Ruben_Barbosa Power Member


    Para abrires um pdf basta so
    Código:
    Process.Start("c:\MeuPDF.pdf")
    
    Agora para criar um pdf como criar um word ou um excel ou notepad já não sei ;)
     
  5. slowman

    slowman Power Member

    diog0silva, não sei se entendi bem o teu problema mas o que te aconselho a usares é um ReportViewer. O ReportViewer é um componente como muitos outros (por exemplo um botão). Crias um Report que associas ao ReportViewer e depois visualisas o mesmo lá. A coisa boa disso é que ele export o teu report para PDF ou Excel, mesmo que não o queiras fazer pela barra de ferramentas do ReportViewer podes faze-lo programáticamente atravéz do mesmo.

    Espero ter ajudado.
     
  6. diog0silva

    diog0silva Power Member

    Resultou :D

    Agora o problema é que cada vez que abro um relatório ele cria um novo relatório e guarda-o numa pasta. Não posso apagá-lo?
     
  7. slowman

    slowman Power Member

    O process.Start("o meu ficheiro.pdf") o que faz é abrir um processo com o programa que por defeito abre os teus pdf's. Era isso que querias?

    Se for assim para removeres um ficheiro podes usar o system.IO.File.Delete("o meu ficheiro.pdf")
     
  8. Ruben_Barbosa

    Ruben_Barbosa Power Member


    Ora nem mais slowman ;)
     
  9. diog0silva

    diog0silva Power Member

    Boas.

    Epa, tou com um problema lol

    Consigo abrir o pdf. O problema é q quando tenho um pdf gerado pela aplicacao aberto, e tento abrir outro, gera um erro, porque o ficheiro q ele está a tentar criar já existe e está aberto lol

    O que eu queria era saber como fazer para:
    - quando fecho o pdf, ele apágá-lo.. e
    - se ele nao conseguir criar um ficheiro porque está outro aberto, ele tentar criar outro com outro nome.

    é meio urgente lol
     
  10. Granadafeup

    Granadafeup Power Member

    Ao guardares o ficheiro mete um timestamp no fim do nome.

    Tipo "ficheiro.pdf" passa para "ficheiro_170420091423.pdf"

    Código:
    String.Format("{0}_{1}.pdf", nome_do_ficheiro, DateTime.Now.ToFileTime())
    
     
  11. diog0silva

    diog0silva Power Member

    O problema de fazer assim é que ele tá sempre a gravar novos ficheiros.. fico com uma colecção deles guardados lol nao da para, ao fechá-lo, apagá-lo?
     
  12. diog0silva

    diog0silva Power Member

    É possível eliminar todos os ficheiros de uma pasta, sem eliminar a pasta?
     

Partilhar esta Página