Bom dia, alguém conhece uma forma de exportar dados para PDF e CSV a partir da minha aplicação flex ?
Obrigado.
Os jovens se cansarão e se fatigarão, e os moços certamente cairão.
Mas os que esperam no SENHOR renovarão as forças, subirão com asas como águias; correrão, e não se cansarão; caminharão, e não se fatigarão. Isaías 40:30-31
Através do iReport, por meio de relatórios, você pode exportar para pdf.
Abç
Marco Aurélio
fabricioempresa
Cara eu te aconselho a fazer o que fanama falou pois assim você consegue exportar para esses formatos além de poder customizar o seu documento.
Qualquer dúvida nos posta aqui.
Valeu abraço
surfzera
Pra CSV eu fiz um bem simples…
publicvoidexportarDados(){StringsFileName="C:\\Teste\\test.csv";try{FileWriterwriter=newFileWriter(sFileName);List<Os>listaOs=osService.listar();//Laço para obter dados das OSfor(inti=0;i<listaOs.size();i++){Osos1=(Os)listaOs.get(i);writer.append("OS");writer.append(';');writer.append(os1.getId().toString());writer.append(';');writer.append(os1.getData_abertura().toString());writer.append(';');writer.append(os1.getData_abertura().toString());writer.append(';');writer.append(os1.getTamanho_pf().toString());writer.append(';');writer.append("0.0");writer.append(';');writer.append(os1.getDescricao());writer.append('\n');}writer.flush();writer.close();}catch(IOExceptione){e.printStackTrace();}}
lira_jvm
fabricioempresa:
Cara eu te aconselho a fazer o que fanama falou pois assim você consegue exportar para esses formatos além de poder customizar o seu documento.
Qualquer dúvida nos posta aqui.
Valeu abraço
O problema é que a app flex é um dashboard e o cliente que ter esses gráficos em pdf, não sei rola usar exportar dessa forma, pois vou ter que recriar os gráficos , calculos etc, acho que assim não posso reaproveitar o código.
Agora CSV, não tem problema em fazer como o surfzera sugeriu, pois não preciso dos gráficos.
F
fabiophx
Vc pode pegar o ByteArray do gráfico usando ImageSnapshot, vc envia este ByteArray para o server e anexa esta imagem num pdf.
[]s
marcosFA
Alternativa melhor: Use o AlivePDF, é uma API de exportação de PDF diretamente do Flash Player. Não precisa mandar pro backend criar o arquivo e depois receber o link do mesmo pro usuário fazer download… Com o AlivePDF você criar arquivos PDF em tempo de execução e disponibiliza para o user fazer o download. Usando o ImageSnapshot você pega tira um “printScreen” do seu gráfico e insere em uma pagina do PDF. Simples assim.
Espero ter ajudado, Abs
lira_jvm
marcosFA:
Alternativa melhor: Use o AlivePDF, é uma API de exportação de PDF diretamente do Flash Player. Não precisa mandar pro backend criar o arquivo e depois receber o link do mesmo pro usuário fazer download… Com o AlivePDF você criar arquivos PDF em tempo de execução e disponibiliza para o user fazer o download. Usando o ImageSnapshot você pega tira um “printScreen” do seu gráfico e insere em uma pagina do PDF. Simples assim.
Alternativa melhor: Use o AlivePDF, é uma API de exportação de PDF diretamente do Flash Player. Não precisa mandar pro backend criar o arquivo e depois receber o link do mesmo pro usuário fazer download… Com o AlivePDF você criar arquivos PDF em tempo de execução e disponibiliza para o user fazer o download. Usando o ImageSnapshot você pega tira um “printScreen” do seu gráfico e insere em uma pagina do PDF. Simples assim.
Espero ter ajudado, Abs
O problema do AlivePDF é que todo esse trabalho de converter em imagem, e pdf e blá blá blá, vai ser feito no Cliente, ou seja, todo este processamento vai ser feito na máquina do usuário…
Eu não aconselho… Prefiro mandar um ByteArray pro servidor e fazer todo esse trabalho lá…
lira_jvm
vitinho1712:
marcosFA:
Alternativa melhor: Use o AlivePDF, é uma API de exportação de PDF diretamente do Flash Player. Não precisa mandar pro backend criar o arquivo e depois receber o link do mesmo pro usuário fazer download… Com o AlivePDF você criar arquivos PDF em tempo de execução e disponibiliza para o user fazer o download. Usando o ImageSnapshot você pega tira um “printScreen” do seu gráfico e insere em uma pagina do PDF. Simples assim.
Espero ter ajudado, Abs
O problema do AlivePDF é que todo esse trabalho de converter em imagem, e pdf e blá blá blá, vai ser feito no Cliente, ou seja, todo este processamento vai ser feito na máquina do usuário…
Eu não aconselho… Prefiro mandar um ByteArray pro servidor e fazer todo esse trabalho lá…
Pois é, não quero causar polêmica, sei que com flash rodando é possível fritar um ovo, mas ai não entra a questão de usar o processamento da máquina cliente e também o limite do post ?
Pow, to com outras prioridades, não vou implementar isso agora, o csv já implementei, o pdf vai ficar p/ depois, mas vou ver o link e fazer uns testes, pq sei que o cliente vai querer isso.
Assim que concluir a parte do PDF posto a solução aqui.
Valew pela ajuda.
vitinho1712
lira jvm:
vitinho1712:
marcosFA:
Alternativa melhor: Use o AlivePDF, é uma API de exportação de PDF diretamente do Flash Player. Não precisa mandar pro backend criar o arquivo e depois receber o link do mesmo pro usuário fazer download… Com o AlivePDF você criar arquivos PDF em tempo de execução e disponibiliza para o user fazer o download. Usando o ImageSnapshot você pega tira um “printScreen” do seu gráfico e insere em uma pagina do PDF. Simples assim.
Espero ter ajudado, Abs
O problema do AlivePDF é que todo esse trabalho de converter em imagem, e pdf e blá blá blá, vai ser feito no Cliente, ou seja, todo este processamento vai ser feito na máquina do usuário…
Eu não aconselho… Prefiro mandar um ByteArray pro servidor e fazer todo esse trabalho lá…
Pois é, não quero causar polêmica, sei que com flash rodando é possível fritar um ovo, mas ai não entra a questão de usar o processamento da máquina cliente e também o limite do post ?
Sim, vai usar, mas não se compara ao fato de vc fazer todo esse serviço de conversão para pdf na máquina do cliente.
Aí é citado um exemplo com o php, mas pro java é o mesmo esquema.
marcosFA
Olha, é claro, processamento é sempre recomendado ficar no servidor e não na maquina do cliente. Mas tudo depende da necessidade do cliente. Se você estiver trabalhando em um projeto de uso interno, onde os terminais que irão acessar o seu sistema são bons e padronizados, é possível utilizar essa técnica de criação e download de PDFs direto no cliente(Flash), pois é possível prever que os recursos utilizados(do cliente) não causarão perda de performance. Eu mesmo estou trabalhando atualmente num sistema com exportação para PDF e .xls, e estou usando essa técnica. Os arquivos gerados possuem uma média de 600k e não consomem muitos recursos da maquina do cliente na criação. O cliente adorou o fato, também, de que o download dos arquivos são praticamente instantâneos, uma vez que os mesmos são criados na própria máquina do usuário. Se você for utilizar PDF ENORMES, ai é obvio, mande para o servidor. os PDFs que estou utilizando possuem imagens, Grids, e textos. Ou seja, basicamente o que todo PDF tem. E os arquivos possuiem em média 6 páginas cada um.
Caso não seja possível realizar essa “previsão” ou o leque de configurações que irão utilizar o seu sistema for muito diferente entre si, não recomendo usar.
Espero ter ajudado, Abs,
vitinho1712
marcosFA:
Olha, é claro, processamento é sempre recomendado ficar no servidor e não na maquina do cliente. Mas tudo depende da necessidade do cliente. Se você estiver trabalhando em um projeto de uso interno, onde os terminais que irão acessar o seu sistema são bons e padronizados, é possível utilizar essa técnica de criação e download de PDFs direto no cliente(Flash), pois é possível prever que os recursos utilizados(do cliente) não causarão perda de performance. Eu mesmo estou trabalhando atualmente num sistema com exportação para PDF e .xls, e estou usando essa técnica. Os arquivos gerados possuem uma média de 600k e não consomem muitos recursos da maquina do cliente na criação. O cliente adorou o fato, também, de que o download dos arquivos são praticamente instantâneos, uma vez que os mesmos são criados na própria máquina do usuário. Se você for utilizar PDF ENORMES, ai é obvio, mande para o servidor. os PDFs que estou utilizando possuem imagens, Grids, e textos. Ou seja, basicamente o que todo PDF tem. E os arquivos possuiem em média 6 páginas cada um.
Caso não seja possível realizar essa “previsão” ou o leque de configurações que irão utilizar o seu sistema for muito diferente entre si, não recomendo usar.
Espero ter ajudado, Abs,
Concordo com vc, assim como tudo na programação, é necessário análise, sempre depende do caso do cliente…
Mas sei lá, eu prefiro fazer essas coisas no servidor, talvez seje até vício… shausaushau