Arquivo para 'Flex'

Gerando relatórios com o FlexReport – Parte 3 (Screencast)

Depois do primeiro artigo sobre o FlexReport e do primeiro screencast sobre o assunto, recebi vários comentários (tanto através dos comentários no blog quanto via e-mail/listas de discussão) dizendo que seria interessante mostrar como fazer relatórios mais elaborados.

Atendendo a todos esses pedidos elaborei este segundo screencast, que é focado em como organizar o layout do relatório gerado com o FlexReport, aproveitando todos os conceitos do screencast anterior.

Leia o restante do artigo

Gerando relatórios com o FlexReport – Parte 2 (Screencast)

Isso mesmo! Um screencast. O meu primeiro. E olha que deu um trabalho danado. Muitas tentativas de gravação. Cada hora era uma coisa que dava errado: uma vez dava erro no programa de gravação, outra hora era interrompido por alguém ou o telefone tocava. A solução para tudo isso foi fazer a gravação às 1h30 da manhã, enquanto aguardava o céu limpar para ver o Lulin, o que não aconteceu – o Lulin deve ter passado, mas o céu permaneceu nublado. Pelo menos consegui chegar ao fim do screencast, o que é mais importante do que ver um cometa passar.

Neste screencast eu mostro passo-a-passo como criar um relatório com o FlexReport. Na primeira parte deste artigo eu comentei os aspectos básicos das classes principais, e agora vem a prática – que é a parte mais divertida.


Leia o restante do artigo

Gerando relatórios com o FlexReport – Parte 1

O Flex é uma ferramenta excepcional para o desenvolvimento de RIAs, mas deixa um pouco a desejar quando o assunto é impressão. Ele possui uma classe PrintJob para fazer impressão, mas não permite que você visualize o que vai ser impresso.

Por causa dessa deficiência o pessoal do www.kemelyon.com/bts (este site está fora do ar enquanto escrevo este artigo) desenvolveu o FlexReport, um componente que permite você montar modelos de relatórios, inserir dados nesses modelos, visualizar a impressão e enviar o documento para a impressora. O componente é distribuído sob a LGPL e pode ser baixado via SVN pela página do FlexReport no Google Code. Mas para facilitar eu já disponibilizo aqui o swc da biblioteca, traduzido para português.

Neste artigo pretendo mostrar como funcionam as principais classe dessa biblioteca. No próximo artigo, vou mostrar, na prática, como o FlexReport funciona.


Leia o restante do artigo

Como definir efeitos de transição em componentes no Flex 3

O Flex provê diversos efeitos que podemos colocar em qualquer componente visual. A forma mais simples de fazer isso é definindo as propriedades dos triggers desses eventos.

Triggers são parecidos com eventos, mas não são iguais. Quando um evento é disparado, um eventListener  captura esse evento e executa alguma função em AS. Quando um trigger é disparado, um efeito é executado. Um trigger não pode executar uma função em AS e versa-vice. Da mesma forma como associamos funções a eventos através dos eventListeners, precisamos associar efeitos a componentes através dos triggers. Vamos ver agora como fazer isso.


Leia o restante do artigo

Screencast: visualizador de imagens do Flickr

O Beck Novaes da DClick está fazendo uma série de screencasts matadora sobre o desenvolvimento com Flex. O primeiro screencast, Construindo uma aplicação Flickr em 10 minutos, mostra passo a passo as primeiras linhas de vida de uma aplicação dessa.

No screencast ele aborda conceitos que vão desde HttpService, passando por binding, states e efeitos. Simples e direto. Vale a pena conferir, mesmo para quem já domina a linguagem.

Agora sua aplicação em Flash/Flex pode ser monitorada através do Google Analytics

O Google Analytics é uma ferramenta fabulosa para medir o uso do seu site. Você define metas de conversão, verifica como os visitantes chegam até você e tem uma infinidade de outras informações à disposição, extremamente úteis para analisar o desempenho do seu site ou o impacto de uma modificação no mesmo.

Para que isso seja possível é necessário inserir um código JavaScript no site, depois de criar um conta no Analytics e cadastrá-lo lá. O processo é simples e rápido.

Os sites em Flash ou as aplicações em Flex, que não executam JavaScript diretamente, não podiam se beneficiar dessa ferramenta. Não podiam, mas agora podem. O Google lançou uma biblioteca de rastreamento, que pode ser usado através de componentes visuais ou AS3, tanto no Flash quanto no Flex. Veja o artigo publicado no blog do Analytics sobre o assunto.

Ainda não testei o recurso, mas postarei mais detalhes assim que tiver utilizado a biblioteca.

Usando CSS no Flex

O FlexBuilder agiliza muito a criação de interfaces, só que se você construir uma aplicação sem mudar em nada os estilos padrão do Flex, seu programa vai ficar com exatamente a mesma cara da aplicação do teu colega, o que não é muito legal.

Existem recursos avançados para se criar skins no flex, onde você define os estilos de cada cantinho da sua aplicação. Isso pode ser feito, por exemplo, com o próprio Flash, onde você define novos estilos para os botões, barras de rolagem, combo boxes e tudo o mais que você possa imaginar.

Mas neste breve artigo pretendo cobrir um assunto mais simples: a modificação da interface padrão através do uso de arquivos CSS.


Leia o restante do artigo

Flash Player 10 liberado

Esse post é rapidinho: a Adobe lançou ontem a versão estável do Flash Player 10. Essa versão do player será necessária para rodar aplicações desenvolvidas com o Flex 4 (Gumbo).

Gerenciando a ordenação do DataGrid no Flex

O DataGrid e o AdvancedDataGrid, entre outros, são componentes que só existem por causa dos dados. Sem dados, a existência deles não tem o menor sentido. São os data-driven components, componentes que mostram um conjunto de dados ao usuário.

Para definir o conjunto de dados que vai popular o DataGrid, definimos a propriedade dataProvider, e nas colunas definimos qual campo desse dataProvider será usado para cada uma delas através da propriedade dataField.

Só que algumas vezes o conteúdo da célula da nossa tabela não é o mesmo conteúdo daquele campo do dataProvider. Por exemplo, ao invés de “1″ ou “0″ que estão armazenados no banco você queira mostrar textos como “Sim” ou “Não”, respectivamente, ou ainda mostrar uma imagem (usando um ItemRenderer – calma, isso é assunto pra outro artigo ;-) ). Para isso, definimos a propriedade labelFunction da coluna.

Até aqui nada de novo. Mas o que não é muito comentado por aí é que, quando definimos a propriedade labelFunction (e não definimos dataField), o DataGrid não sabe como ordenar a tabela caso o usuário clique no cabeçalho da coluna! A ordenação simplesmente não funciona, ou nos piores casos pode dar um erro em runtime.


Leia o restante do artigo

E-book gratuito de Flex 3

A Adobe está diponibilizando gratuitamente o e-book “Getting started with Flex 3″, que tem quase 150 páginas. Faça o download no site da Adobe (o site e o livro estão em inglês).