Embedding image and multiple queries in cfgrid
i have datagrid displays user's work history pulled 1 query. in original html table set up, status icon each work item displayed either "new", 'needs attention" or "archived". status determined using value first query filter in clause of second query:
------------------- original query -------------------------
<cfquery datasource="#application.defaultdsn#" name="qquestions">
select discussions.datesubmitted, discussions.discussionid, discussions.subjectid, discussions.topic, users.firstname + ' ' + users.lastname stname,
subjects.subjectid expr1, subjects.subject
discussions inner join
users on discussions.userid = users.userid inner join
subjects on discussions.subjectid = subjects.subjectid
0=0
<cfif getdiscussionids.recordcount gt 0>
, (
<cfloop query="getdiscussionids">
discussions.discussionid = #getdiscussionids.discussionid# <cfif getdiscussionids.currentrow neq getdiscussionids.recordcount>or</cfif>
</cfloop>
)
<cfelse>
, 0=1
</cfquery>
------------------------ queries used determine status -----------------
<cfquery datasource="#application.defaultdsn#" name="latestmessage">
select max(discussionposts.postid) newestmessage
discussionposts
discussionposts.discussionid = #qquestions.discussionid#
</cfquery>
<cfset variables.usertypetoview = "tutor">
<!--- <cfif latestmessage.recordcount --->
<cfquery datasource="#application.defaultdsn#" name="getlastinfo">
select discussionposts.usertype, discussionposts.datesubmitted, discussionposts.viewerid
discussionposts
discussionposts.postid = #latestmessage.newestmessage#
</cfquery>
-----------------------------------------------
my question how can emulate same status icon setup in cfgrid? used following actionscript create new column in grid , return string. however, new column must logically know how display correct status image each corresponding row. can see, there no database tables storing status - have made easier.
function setstat(){
eqarchive.getcolumnat(1).labelfunction = staticon;
}
function staticon(item
bject, columnname:string): string{
if (item[columnname] != undefined) {
return asicon;
}
else {
return "";
}
};
i tried using toscript() function in cf7 see if can set variable equal appropriate image , return in above script, @ loss.
<cfif getlastinfo.recordcount gt 0 , trim(getlastinfo.usertype) eq "tutor">
<cfset stat = "/images/docarchive.jpg">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
<cfelseif getlastinfo.viewerid eq session.tutorid>
<cfset stat = "/images/docnew.jpg">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
<cfelse>
<cfset stat = "green">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
</cfif>
any ideas on how working appreciated.
thank in advance.
------------------- original query -------------------------
<cfquery datasource="#application.defaultdsn#" name="qquestions">
select discussions.datesubmitted, discussions.discussionid, discussions.subjectid, discussions.topic, users.firstname + ' ' + users.lastname stname,
subjects.subjectid expr1, subjects.subject
discussions inner join
users on discussions.userid = users.userid inner join
subjects on discussions.subjectid = subjects.subjectid
0=0
<cfif getdiscussionids.recordcount gt 0>
, (
<cfloop query="getdiscussionids">
discussions.discussionid = #getdiscussionids.discussionid# <cfif getdiscussionids.currentrow neq getdiscussionids.recordcount>or</cfif>
</cfloop>
)
<cfelse>
, 0=1
</cfquery>
------------------------ queries used determine status -----------------
<cfquery datasource="#application.defaultdsn#" name="latestmessage">
select max(discussionposts.postid) newestmessage
discussionposts
discussionposts.discussionid = #qquestions.discussionid#
</cfquery>
<cfset variables.usertypetoview = "tutor">
<!--- <cfif latestmessage.recordcount --->
<cfquery datasource="#application.defaultdsn#" name="getlastinfo">
select discussionposts.usertype, discussionposts.datesubmitted, discussionposts.viewerid
discussionposts
discussionposts.postid = #latestmessage.newestmessage#
</cfquery>
-----------------------------------------------
my question how can emulate same status icon setup in cfgrid? used following actionscript create new column in grid , return string. however, new column must logically know how display correct status image each corresponding row. can see, there no database tables storing status - have made easier.
function setstat(){
eqarchive.getcolumnat(1).labelfunction = staticon;
}
function staticon(item

if (item[columnname] != undefined) {
return asicon;
}
else {
return "";
}
};
i tried using toscript() function in cf7 see if can set variable equal appropriate image , return in above script, @ loss.
<cfif getlastinfo.recordcount gt 0 , trim(getlastinfo.usertype) eq "tutor">
<cfset stat = "/images/docarchive.jpg">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
<cfelseif getlastinfo.viewerid eq session.tutorid>
<cfset stat = "/images/docnew.jpg">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
<cfelse>
<cfset stat = "green">
<script language="javascript" type="text/javascript">
<cfoutput>var #toscript(getlastinfo, "asicon", true)#;</cfoutput>
</script>
</cfif>
any ideas on how working appreciated.
thank in advance.
More discussions in ColdFusion Rich Forms
adobe
Comments
Post a Comment