Esta é uma matéria introdutória ao Flash Remoting, para aqueles que ainda tiveram pouco contato com a tecnologia. No início, iremos trabalhar a conexão com arquivos ASR (Action Script Remoting), onde usaremos sintaxe própria. Portanto, não será necessária nenhuma linha de código ColdFusion, Java, .NET. Nada. Somente ASR e Action Script. No entanto, a maneira mais correta de fazer é utilizando uma dessas linguagens, pois construímos assim um código mais centrado para aplicações mais elaboradas. No final, iremos criar algumas aplicações ultilizando o ColdFusion, através de CFCs. (ColdFusion Components)
Nós iremos apenas precisar do ColdFusion, que pode ser baixado no site da Macromedia e, logicamente, do Flash Remoting MX, também distribuído no site da Macromedia. Ambos são gratuitos para desenvolvimento.
Agora, o Flash Remoting faz a integração com o banco de dados através do nosso arquivo ASR. O Flash irá gerar dinamicamente as varíaveis com dados do servidor (algo como o loadVariables), mas tudo através de uma recordSet, como veremos.
Vamos seguir os seguintes passos:
1) Criar o banco de dados
2) Configurar uma DSN
3) Criar o arquivo ASR
4) Acessá-lo Pelo Flash
1) Logicamente, não vou ensinar ninguém a criar banco de dados. Eu criei um bem simples, no Access mesmo. Adicione também alguns registros ao banco.

2) Iremos criar uma DSN (Data Source Name). Ela que irá "apontar" nosso banco de dados quando iremos fazer a conexão. Devemos ir no Administrator do ColdFusion. Existe um link no menu chamado Data Sources. Temos uma tabela "Add New Data Source". Determinamos um nome qualquer e o driver (no caso, MS Access). Na tela seguinte, o primeira linha está preenchida. É o nome de nossa DSN. Precisamos preencher somente a segunda linha, localizando nosso banco de dados. O nome não precisa ter dsn na frente. Eu faço assim apenas pra melhor organização. Depois de todo o processo, temos a confirmação.

3) Vamos criar o nosso arquivo ASR, que na verdade, não passa de uma função. Olhe só.
function consultaCliente (){
var sql = "select * from clientes ORDER BY nome ASC"
rs = CF.query ( "dsnUsuarios" ,sql )
return rs
}
Veja bem, a função consulta cliente tem a variável sql que contém somente a instrução sql correspondente. No caso, iremos selecionar todos os dados da tabela clientes e ordená-lo por ordem alfabética a partir do nome. Depois, temos a variável rs que recebe CF.query ( "dsnalunos" ,sql ). Isso é somente um relaciomento falando: "Olha, essa instrução aí vai funcionar pra esse banco". E temos como retorno esse rs , e como fazemos uma consulta, concluímos que essa variável é uma recordset.
4) Agora vem a parte mais fácil. O Action Script.
#include "NetDebug.as"
/*O NetDebug habilita o funcionamento do NetConnection Debbuger, essencial no Flash Remoting.*/
#include "NetServices.as"
/*O NetServices trás todas as funcionalidades do Flash Remoting. É imprescindível também */
NetServices.setDefaultGatewayURL("http://localhost:8500/flashservices/gateway")
var net_conn = NetServices.createGatewayConnection()
/*Criamos aqui a conexão. Definimos o gateway do remoting no server. Se você estiver instalado o ColdFusion no Standalone Mode, poderá usar esse mesmo gateway que eu usei.*/
my_serv = net_conn.getService ("flashremoting . tutoriais . remoting1_consulta . remoting",this)
my_serv.consultaCliente()
/*Criamos o serviço. E definimos a localização do arquivo ASR.Perceba que usamos pontos para separar os diretórios e não acrescentamos a extensão do arquivo ASR. Depois chamamos a funcão do arquivo ASR a partir do meu serviço.*/
Agora, abra o NetConnection Debugger (Window > NetConnection Debugger), e teste o filme, se tudo der certo, dentro do debugger, você poderá ver seus dados e receberá na caixa de saída a seguinte mensagem: NetServices info 1: consultaCliente_Result was received from server: [object Object].
Pronto. Podemos então ver que está funcionando. Este é o fim da primeira matéria. Na próxima aprenderemos a integrar os dados recebidos com componentes do Flash. Qualquer dúvida, meu e-mail é lucas@bwdonline.com.br. Até a próxima.

Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.
Lucas Varela Lopes trabalha com desenvolvimento web desde 2000, possui certificação oficial completa da Macromedia Studio MX e é sócio-fundador da BWDOnline.
2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.