Estou iniciando meus estudos em ColdFusion e criei um sistema de agenda que faz buscas num banco de dados Access, estou utilizando o servidor interno do Coldfusion.Esse aplicativo  é somente para testes. Mas gostaria de transformar minhas "query" de busca, update, delete tudo em CFC, como eu posso fazer isso. Gostaria de deixar toda a busca que é feita na action page num CFC. E como eu chamo a CFC nesta página. Segue o exemplo:
 
Formulário de busca:
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="" rel="stylesheet" type="text/css" />
</head>
 
<body>
<cfinclude template="principal.cfm">
<p><span class="fonte_cab">Busca Avançada</span><br />
  <span class="fonte">Preencha um ou mais campos para pesquisar<br />
Podem ser pedaços de nomes, qualquer palavra, números, m&ecirc;s de anivers&aacute;rio, email...nos seus devidos campos.</span></p>
 
<form  method="post" action="">
  <table width="591"  border="0" cellpadding="10">
    <tr>
      <td class="fonte">Categoria</td>
      <td>        <input name="categoria" type="text" id="categoria" size="20" maxlength="20" />
      <span class="fonte">      Familia / Amigos / Negocios </span></td>
    </tr>
    <tr>
      <td class="fonte">Nome / Empresa </td>
      <td><input name="nome" type="text" id="nome" size="60" maxlength="50" /></td>
    </tr>
    <tr>
      <td class="fonte">Endere&ccedil;o</td>
      <td><input name="endereco" type="text" id="endereco" size="60" maxlength="50" /></td>
    </tr>
    <tr>
      <td class="fonte">Telefone</td>
      <td><input name="telefone" type="text" id="telefone" size="20" maxlength="20" /></td>
    </tr>
    <tr>
      <td class="fonte">Celular</td>
      <td><input name="celular" type="text" id="celular" size="20" maxlength="15" /></td>
    </tr>
    <tr>
      <td class="fonte">Email</td>
      <td><input name="email" type="text" id="email" size="60" maxlength="50" /></td>
    </tr>
    <tr>
      <td class="fonte">Anivers&aacute;rio</td>
      <td><input name="aniversario" type="text" id="aniversario" size="10" maxlength="5" />
        <span class="fonte">        ex.mm </span></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input type="submit" name="Submit" value="Localizar" />
      <input type="reset" name="Submit2" value="Limpar" /></td>
    </tr>
  </table>
</form>
</body>
</html>
Action Page:
 
<!--- impede que o usuário venha direto para esta página --->
<cfif not isdefined("form.submit")>
<!--- redireciona para a página formulario --->
<cflocation url="" addtoken="yes">
</cfif>
<cfquery name="qBuscaAv" datasource="agenda">
SELECT *
FROM dados
where 0 = 0
<!--- Teste pega valor de categoria --->
<cfif IsDefined("form.categoria") and form.categoria is not "">
and dados.categoria like '%#form.categoria#%'
</cfif>
<!--- Teste pega valor de nome --->
<cfif IsDefined("form.nome") and form.nome is not "">
and dados.nome like '%#form.nome#%'
</cfif>
<!--- Teste pega valor de endereço --->
<cfif IsDefined("form.endereco") and form.endereco is not "">
and dados.endereco like '%#form.endereco#%'
</cfif>
<!--- Teste pega valor de telefone --->
<cfif IsDefined("form.telefone") and form.telefone is not "">
and dados.telefone like '%#form.telefone#%'
</cfif>
<!--- Teste pega valor de celular --->
<cfif IsDefined("form.celular") and form.celular is not "">
and dados.celular like '%#form.celular#%'
</cfif>
<!--- Teste pega valor de email --->
<cfif IsDefined("form.email") and form.email is not "">
and dados.email like '%#form.email#%'
</cfif>
<!--- Teste pega valor de aniversario --->
<cfif IsDefined("form.aniversario") and form.aniversario is not "">
and dados.aniversario like '___#form.aniversario#%'
</cfif>
<!--- Ordena os valores pelo nome --->
order by dados.nome
</cfquery>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="" rel="stylesheet" type="text/css" />
</head>
 
<body>
<cfinclude template="principal.cfm">
<cfif #qBuscaAv.RecordCount# is '0'>
<p class="fonte_cab">Não existem registros !!</p>
</cfif>
<p class="fonte_cab">Resultado da Busca Avançada: <cfoutput>#qBuscaAv.RecordCount#</cfoutput> registro(s).</p>
<cfoutput query="qBuscaAV">
 
  <table width="594" height="289"  border="0" cellpadding="10">
    <tr bgcolor="##CCCCCC">
      <td width="108" class="fonte">Categoria</td>
      <td width="440" class="campo_apresenta">   #qBuscaAv.categoria#</td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Nome / Empresa </td>
      <td class="campo_apresenta">#qBuscaAv.nome#</td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Endere&ccedil;o</td>
      <td class="campo_apresenta">#qBuscaAv.endereco#</td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Telefone</td>
      <td class="campo_apresenta">#qBuscaAv.telefone#</td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Celular</td>
      <td class="campo_apresenta">#qBuscaAv.celular#</td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Email</td>
      <td><a href="" target="_blank">#qBuscaAv.email#</a></td>
    </tr>
    <tr bgcolor="##CCCCCC">
      <td class="fonte">Anivers&aacute;rio</td>
      <td class="campo_apresenta">#qBuscaAv.aniversario#</td>
    </tr>
  </table>
  <br /><br />
</cfoutput>
 
</body>
</html>
 
Espero ter ajuda.
 
Hugo Q Soares

 
-----Mensagem original-----
De: Marcos Vinício Silva [mailto:[EMAIL PROTECTED]
Enviada em: quinta-feira, 22 de abril de 2004 08:19
Para: [EMAIL PROTECTED]
Assunto: Re: [cf-brasil] Query

instrucao nao, variavel...

 


 
Soluções para a Gestão do Conhecimento  
Marcos Vinício Silva
Developer
+ 55 11 3258-8250
+ 55 13 9709-1938
ICQ: 5112020

Esta mensagem, incluindo seus anexos, pode conter informacao confidencial e/ou privilegiada . Se voce recebeu este e-mail por engano, nao utilize, copie ou divulgue as informacoes nele contidas. E, por favor, avise imediatamente o remetente, respondendo ao e-mail, e em seguida apague-o. Este e-mail possui conteudo informativo e nao transacional. Agradecemos sua colaboracao.

This message, including its attachments, may contain confidential and/or privileged information. If you received this email by mistake, do not use, copy or disseminate any information herein contained. Please notify us immediately by replying to the sender and then delete it. This email is for information purposes only, not for transactions. Thank you for your cooperation.

----- Original Message -----
Sent: Wednesday, April 21, 2004 11:01 AM
Subject: [cf-brasil] Query

Boa dia a todos;
 
    Estou com problemas na query abaixo, ela roda legal no SQL só que no ColdFusion ela da erro dizendo que não aceita o @.
 
    <cfquery name="inserir" datasource="dsn_marketing_direto">
 
        SET NOCOUNT ON
 
        INSERT INTO nep_usuario (usu_no_usuario, usu_tx_email, usu_no_razao_social, rat_nu_idramo)
        VALUES ('#form.nome#', '#form.email#', '#form.empresa#', #form.id_ramo_atividade#)
 
        DECLARE @idusuario int
 
        SELECT @idusuario = ident_current('nep_usuario')
 
        IF @idusuario <> 0
        BEGIN
            INSERT INTO nep_usuario_area (usu_nu_idusuario, ain_nu_idarea)
            VALUES ([EMAIL PROTECTED]#, #form.area_interesse#)
         END
 
    </cfquery>
 
    Alguém aí poderia me ajudar. Agradeço a atenção de todos.
 
[]'s
Leandro Massafera.

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.590 / Virus Database: 373 - Release Date: 16/02/04
--^^---------------------------------------------------------------
This email was sent to: [EMAIL PROTECTED]

EASY UNSUBSCRIBE click here: http://topica.com/u/?b1dnXn.b7DDjq.Y2ZicmFz
Or send an email to: [EMAIL PROTECTED]

For Topica's complete suite of email marketing solutions visit:
http://www.topica.com/?p=TEXFOOTER
--^^---------------------------------------------------------------

Responder a