Two remarks:
1) busca_dados seems to be a function-local variable. So, you should add the following line after the last cfargument tag:
<cfset var busca_dados = "">
2) Your code seems to have recursion. The definition of session.qryCliente, that is,
<cfset session.qryCliente = new model.cliente().buscaCliente(dsn=this.dsn,id_job=url.job) />
calls the function buscaCliente(). However, the variable session.qryCliente occurs within the function. That looks like it could be a problem.
Couldn´t log in at forums yesterday to a server erro at the log in.
Anyway, we found the problem.
ColdFusion is mixing thing up when you use the "use database" command with SQL Server.
Script example:
<cfquery datasource="datasource1" name="test1">
select * from tableOne
</cfquery>
<cfdump var="#test1#">
<cfquery datasource="datasource1" name="test2">
use anotherDatabase
select * from anotherTable
</cfquery>
<cfdump var="#test2#">
<cfquery datasource="datasource1" name="test1">
select * from tableOne
</cfquery>
<cfdump var="#test1#">
What will happen:
Step 1: ColdFusion will run the first query and return it´s result normally.
Step 2: ColdFusion will change to the database that the SQL command is telling it to turn and will run the second query and return it´s result normally.
Step 3: If the tableOne exists on the anotherDatabase database ColdFusion will run the query at anotherDatabase.tableOne instead of running where the datasource is really pointed at. And after running this script it will still be pointing to the anotherDatabase database for every other connection until you save the datasource1 again.
Pretty anoying bug!!
EDIT:
The use database command was being used in another application that used the same datasource this application was relying on. This command was not being used anywhere on the code where the problem was detected.