2017-09-27 9 views
0

j'ai un cfc qui fonctionne bien en mode tag:Lucee CFML question de requête

<cfcomponent output="false"> 
<cffunction name=GetCases access="remote" returntype=Any returnformat=JSON> 
<cfquery name="QryCases" datasource=#session.dsn# > 
select id,surname,forename,died,dob,status from tbcases 
</cfquery> 
<cfreturn (QryCases)> 
</cffunction> 
</cfcomponent> 

Cependant la version cfscript échoue et je ne peux pas voir pourquoi:

component 
{ 
function any GetCases() access="remote" returntype="any" returnformat="json" 
{ 

QryCases = Queryexecute(" 
    select id,surname,forename,died,dob,status from tbcases 
     ","",{datasource=session.dsn}); 

return QryCases; 
} 
} 

Alors ces deux travailleront bien dans ACF v2016 cependant seul le script fonctionne dans Lucee v5. Le résultat json est pour les données Jquery

merci pour les pointeurs.

+0

eturnformat au lieu de returnformat peut-être? –

+0

Juste en utilisant cette opportunité pour partager que je n'utilise plus de cfc et n'utilise pas cfquery non plus. J'utilise des procédures stockées à partir des pages régulières .cfm et writeoutput SerializeJSON (qry). Pour moi, c'est beaucoup plus propre. –

+0

Je suppose que vous utilisez des procédures stockées pour toutes vos opérations CRUD alors. Je suppose qu'il y a un argument fort pour cela, car c'est un travail qui est mieux géré par la base de données. Merci d'avoir partagé –

Répondre

1

J'ai maintenant résolu celui-ci. Le 2ème paramètre à la Queryexecute ne peut pas être « » je l'ai changé {} Et tout fonctionne à merveille ...

Donc, pour aider les autres, voici le code final:

1 component 
2 { 
3 function any GetCases() access="remote" returntype="any" returnformat="json" 
4 { 

5 QryCases = Queryexecute(" 
6 select id,surname,forename,died,dob,status from tbcases 
7 ", {} ,{datasource=session.dsn}); 

8 return QryCases; 
9 } 
10 } 

Remarque La ligne 7 ci-dessus a changé.