Arquivo para 'Flex'

FlexReport com o Flex4!

Alguns dias atrás eu escrevi este artigo com o título “Uma nota sobre o FlexReport” e configurei o post para que ele fosse ao ar no dia seguinte. Este ERA o conteúdo do artigo:

Há um bom tempo eu escrevi um artigo e gravei um dois screencasts sobre o FlexReport, mostrando como ele funciona(va) e como criar um relatório com ele.

Esses artigos estão entre os mais visualizados do meu blog. Até hoje eu recebo perguntas e comentários sobre como resolver algum problema com o FlexReport, como imprimir em formato paisagem, como adicionar outros formatos de papel, entre outras perguntas.

Pretendo com este post responder a todas essas questões: não usem o FlexReport. A idéia do programa é excelente, mas infelizmente o projeto foi abandonado. A última versão (0.2 RC1, se não me engano) foi lançada no começo de 2008, quando o Flex 3 ainda não tinha tanto tempo de vida. Estamos em 2010, a versão final do Flex 4 já saiu e o FlexReport não mudou nem um pouco.

Eu até pensei em ajudar a tocar o projeto, mas por falta de tempo não pude colaborar da forma que eu gostaria.

Como já estamos usando o Flex 4, vale a pena dar uma olhada nos recursos de impressão que temos disponíveis. Pode ser que ajude em alguma coisa: http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf65381-8000.html

Mas quando anoiteceu eu recebi um e-mail do Douglas Marques com uma boa notícia: ele e a equipe da empresa onde trabalha atualizaram a biblioteca do FlexReport para trabalhar com o Flex 4, além de corrigir diversos bugs! Cancelei a publicação do artigo e (felizmente) substituí por este novo artigo.

Eu ainda não testei a biblioteca, mas atendendo ao pedido do Douglas estou publicando ela aqui.

A informação que eu tive é que em breve a empresa disponibilizará o código fonte.

Update @ 08/nov/2010 20h30

Atendendo a solicitações (e resolvendo uma pendência antiga), estou publicando o código-fonte que o Douglas me enviou e dando os créditos apropriadamente: os feras que fizeram a atualização foram Diogo Muller, Douglas, Lucas Zambon, Ivo Marcelo e Marcelo Mello, todos da Lactec.

Instalando sua aplicação Rails/RestfulX (e as gems) na DreamHost

Apesar dos muitos comentários negativos que ouvi por aí sobre a DreamHost, até hoje não tive problemas: mantenho este blog hospedado lá há quase um ano e não tenho do que reclamar.

Esses dias resolvi colocar uma aplicação em Flex/Rails (com RestfulX) para rodar no servidor e não tive problemas. A única “pequena dificuldade” que tive foi para entender como funciona a instalação das gems no servidor deles, o que é muito simples.

Primeiro criei um subdomínio com suporte a Passenger (o que exigia que o diretório web terminasse com “public/”), conforme screenshot a seguir:


Leia o restante do artigo

CRUD com o RestfulX – aplicação funcionando

Há alguns dias eu escrevi dois artigos sobre como realizar as operações de CRUD com o RestfulX – um falando sobre o retrieve e outro sobre o create, update e delete.

Quando escrevi o segundo artigo eu fiquei devendo mostrar para vocês a aplicação de exemplo funcionando. Pois aqui está: veja a aplicação rodando e faça seus testes!

Para ver o código fonte basta clicar com o botão direito na aplicação e escolher “View source”.

CRUD com o RestfulX: Parte 2/2 – Create, Update e Delete

No último artigo que eu escrevi sobre CRUD com o RestfulX eu falei apenas sobre como obter os dados do servidor (retrieve). Neste artigo vou mostrar como funcionam as outras “letras” do acrônimo: criar, atualizar e apagar um registro (Create, Update e Delete).

Vou continuar usando o mesmo exemplo e aproveitar os conceitos explicados anteriormente. Por isso, se você não leu o artigo anterior, sugiro humildemente que faça isso antes de prosseguir … ;-)

Leia o restante do artigo

CRUD com o RestfulX: Parte 1/2 – Retrieve

Vou criar aqui um exemplo bem simples para mostrar como funcionam as operações básicas em banco de dados, conhecidas através do acrônimo CRUD (Create, Retrieve, Update e Delete), com o RestfulX.

O projeto é simples (outro daqueles que todo mundo já fez na vida): um cadastro de eventos e participantes destes eventos. Este exemplo irá evoluindo conforme for aumentando a complexidade dos artigos.

Leia o restante do artigo

Instalação “avançada” do RestfulX no seu projeto Rails

Após criar seu projeto no Rails usando o comando rails , você pode configurá-lo para usar o RestfulX através do comando script/generate rx_config. Este comando cria todos os arquivos de configuração do RestfulX e faz o download da biblioteca do framework (arquivo restfulx_framework.1.2.4.swc, que é a versão mais recente enquanto escrevo este artigo).

Mas você também pode fazer o download do projeto restfulx_framework e incluí-lo no seu projeto no Flex Builder. Para isso, faça o download do fonte do framework usando o git: git clone git://github.com/dima/restfulx_framework.git. Agora você pode gerar os arquivos de configuração: script/generate rx_config --skip-framework. Com a opção --skip-framework, o comando generate rx_config vai gerar os arquivos de configuração mas não vai fazer o download da biblioteca do RestfulX.

Leia o restante do artigo

Introdução ao RestfulX

Apesar de já ter escrito dois artigos sobre o assunto (um screencast e um tutorial), este artigo é o primeiro de uma série que pretendo escrever sobre o RestfulX, um framework incrível para quem quer integrar o Flex (ou AIR) ao RubyOnRails, Google App Engine, CouchDB, SQLite ou até mesmo integrar com o Juggernaut (plugin para o Rails para envio de mensagens do servidor para o cliente – server-push). Nos primeiros artigos eu vou focar a integração do Flex com o Rails. Assim como toda aula introdutória, este artigo vai ser um pouco “conceitual”, mas não por isso será menos importante que os artigos onde eu mostro algum código.

A idéia principal do RestfulX é trazer para o Flex os princípios de desenvolvimento do Rails, seguindo o conceito REST de comunicação entre cliente e servidor. Por exemplo, se definirmos no Rails que um projeto tem muitas tarefas, podemos fazer o seguinte no Rails:

@projeto = Projeto.new
@tarefa = Tarefa.new
@tarefa.projeto = @projeto
@projeto.tarefas.size          # O resultado é 1

O que o RestfulX faz é trazer toda essa facilidade para o Flex (através do ActionScript):

var proj:Projeto = new Projeto;
var tarefa:Tarefa = new Tarefa;
tarefa.projeto = proj;
proj.tarefas.length;       // O resultado é 1


Leia o restante do artigo

Configurando o FB3 como plugin no Eclipse 3.5

Se você tentar instalar o Flex Builder 3 como plugin no Eclipse 3.5 (Galileo), você irá se deparar com uma mensagem de erro dizendo que o plugin não pôde ser instalado. Mas o FB3 pode sim rodar no Eclipse 3.5.

Ignore as mensagens de erro que aparecerem e termine a instalação do plugin. Depois, vá até o diretório onde está o arquivo executável do eclipse, entre na pasta links e edite o arquivo com.adobe.flexbuilder.feature.core.link. Dentro deste arquivo haverá uma única linha mais ou menos assim:

C:/Arquivos de programas/Adobe/Flex Builder 3 Plug-in

Altere essa linha, adicionando “path=” no começo dela. O seu arquivo ficará assim:

path=C:/Arquivos de programas/Adobe/Flex Builder 3 Plug-in

Pronto, o plugin do FB está funcionando!

Bons códigos!

path=C:/Arquivos de programas/Adobe/Flex Builder 3 Plug-i

Screencast: desenvolvendo uma aplicação com RestfulX em menos de 5 minutos

Depois do artigo que escrevi sobre o RestfulX resolvi gravar um screencast para mostrar como é a utilização do framework.

No final das contas é o mesmo conteúdo do artigo anterior, só que com animação, cor e um bom jazz de fundo.

RestfulX – Introdução, instalação, configuração e primera aplicação em 5 minutos

O RestfulX é um framework que se propõe, basicamente, a trazer para o Flex a abstração que o Rails faz da camada de dados. Ele possui um conjunto de geradores de código que facilitam o trabalho de programação ao automatizar tarefas repetitivas, como criar Value Objects (VOs) e tratar a comunicação com o backend para realizar operações de manipulação do banco de dados – criar, recuperar, atualizar e apagar registros, operações conhecidas sob o acrônimo CRUD (Create, Retrieve, Update e Delete).

Toda a geração de código é baseada no Rails, mas você não é obrigado a utilizar o Rails como backend. Você também pode armazenar seus dados no Google App Engine (GAE), ou até gerar uma aplicação em AIR que acesse dados em uma base SQLite, dispensando conexão com a internet ou a instalação de um webserver / SGBD na máquina local.

Leia o restante do artigo