2010-08-10 4 views
0

Je travaille sur du code qui utilisait auparavant une requête cfquery, et utilise maintenant bind pour un cfc pour obtenir les données. Lors de l'utilisation de la requête, la colonne 'workcomplete' affichait oui/non (ce sont les valeurs enregistrées dans la base de données sous forme de texte). Maintenant qu'il utilise bind, cette colonne affiche true/false au lieu de yes/no. Ils correspondent, c'est-à-dire que si la base de données a 'Non', le cfgrid affiche 'Faux' et 'Oui' apparaît comme 'Vrai'. Y a-t-il des paramètres qui peuvent être modifiés pour réutiliser les valeurs réelles de la base de données?Pourquoi mon cfgrid sort-il vrai/faux au lieu des mots oui/non

De CFML:

   <cfform> 
      <cfgrid format="html" name="list" striperows="yes" fontsize="12" pagesize="25" selectmode="row" bind="cfc:joborder.getJoborders({cfgridpage},{cfgridpagesize},{cfgridsortcolumn},{cfgridsortdirection})"> 

       <cfgridcolumn name="dispatchnum" header="Dispatch Num" href="job.cfml" hrefkey="jobid" width="100"/> 
       <cfgridcolumn name="submitdate" header="Submit Date" width="90"> 
       <cfgridcolumn name="jobname" header="Job Name" width="200" > 
       <cfgridcolumn name="contactlast" header="Contact Last Name" width="150" > 
       <cfgridcolumn name="workcomplete" header="Completed" width="100" > 
       <cfgridcolumn name="jobid" header="Edit " href="jobedit.cfml" hrefkey="jobid" width="40" /> 
       <cfgridcolumn name="editdate" header="Edit Date" width="80"/> 
       <cfgridcolumn name="jobid" header="DELETE" hrefkey="jobid" width="60" href="delete.cfml?jobid=url.jobid">             
      </cfgrid> 
      </cfform> 

du CCAF:

<cffunction name="getJoborders" access="remote"> 
    <cfargument name="page" required="yes"> 
    <cfargument name="pageSize" required="yes"> 
    <cfargument name="gridsortcolumn" required="yes"> 
    <cfargument name="gridsortdirection" required="yes"> 

<cfif arguments.gridsortcolumn eq ""> 
    <cfset arguments.gridsortcolumn = "dispatchnum" /> 
    <cfset arguments.gridsortdirection = "desc" /> 
</cfif> 

    <cfquery datasource="jobs" name="joborders"> 
    SELECT DISPATCHNUM, SUBMITDATE, WORKCOMPLETE, EDITDATE, JOBID, ORDERNUM, JOBNAME, CONTACTFIRST, CONTACTLAST 
    FROM JOBORDERS 
    <cfif gridsortcolumn neq ''> 
    order by #arguments.gridsortcolumn# #arguments.gridsortdirection# 
    </cfif> 

Merci!

Répondre

2

Pour des raisons historiques, "oui" et "non" sont traités comme des booléens par CF. À supposer, je m'attendrais à ce que CFGrid les interprète comme tel, et les traduise dans une version plus traditionnelle.

La première chose que j'essaierais est d'ajouter une période à la fin du texte (ou une transformation mineure similaire). Quelque chose dans le sens de

select workcompleted + '.' as workcompleted..... 

Je n'ai pas actuellement accès à mon serveur CF pour tester cela, cependant. Dites-moi comment ça fonctionne.

+0

Oui, en ajoutant une période travaillée, je l'ai donc essayé avec un espace et cela a fonctionné aussi bien. Cela fera comme une solution de contournement, merci! – sarahjean

Questions connexes