491573 operators, 49 unique segments, 183211 sets - 1462 ms.
491573 operators, 1392 unique distributors, 387183 sets - 4866 ms.
--- SOURCE FILE ---
<cfquery name="qmd_operators" datasource="fslibrary_rpc">
select companyName, oprSegment, distrib1, distrib2
from tbl_OPR_ClientOperators where ownerId = 26 and fsltablecode = 'MFR'
and crmActive= 'Y'
</cfquery>
<!--- add segmentName --->
<cfif not listFindNoCase( qmd_operators.columnList, "segmentName" )>
<cfset QueryAddColumn( qmd_operators, "segmentName", "varchar", ArrayNew(1))>
</cfif>
<cfset _startTime = getTickCount()>
<cfset _sets = 0>
<cfloop query="qmd_operators">
<cfif val( oprSegment )>
<cfparam name="request._segmentNameCache" default="#StructNew()#">
<!--- the number of possible values is relatively small, so cache the entire list upfront --->
<cfif StructIsEmpty( request._segmentNameCache )>
<cfquery name="qmd_segments" datasource="fslibrary_rpc">
select clientSegId, description
from tbl_OPR_ClientSegments
where ownerId = 26
and fsl_tablecode = 'MFR'
</cfquery>
<cfloop query="qmd_segments">
<cfset request._segmentNameCache[clientSegId] = description>
</cfloop>
</cfif>
<cfif StructKeyExists( request._segmentNameCache, OPRSegment )>
<cfset _segmentName = request._segmentNameCache[OPRSegment]>
<cfset QuerySetCell( qmd_operators, "segmentName", _segmentName, qmd_operators.currentRow)>
<cfset _sets = _sets + 1>
</cfif>
</cfif>
</cfloop>
<div><cfoutput>#qmd_operators.recordCount# operators, #listLen( structKeyList( request._segmentNameCache ))# unique segments, #_sets# sets - #getTickCount() - _startTime# ms.</cfoutput></div>
<!--- add distributorName --->
<cfloop list="distributorName1,distributorName2" index="_c">
<cfif not listFindNoCase( qmd_operators.columnList, _c )>
<cfset QueryAddColumn( qmd_operators, _c, "varchar", ArrayNew(1) )>
</cfif>
</cfloop>
<cfset _startTime = getTickCount()>
<cfset _sets = 0>
<cfloop query="qmd_operators">
<cfset _r = currentRow>
<cfloop from="1" to="2" index="_cIdx">
<cfset _cdr_recordId = val( qmd_operators["distrib#_cIdx#"][_r] )>
<cfif _cdr_recordId gt 0>
<cfparam name="request._distributorNameCache" default="#StructNew()#">
<!--- there are many distributors, cache them as needed --->
<cfif not StructKeyExists( request._distributorNameCache, _cdr_recordId )>
<cfquery name="qmd_lookupDistributor" datasource="fslibrary_rpc">
select cdr_dstName
from tbl_CDR_Distributors
where cdr_recordId = <cfqueryparam value="#_cdr_recordId#">
and ownerId = 26
and fsl_tablecode = 'MFR'
</cfquery>
<cfset request._distributorNameCache[_cdr_recordId] = qmd_lookupDistributor.cdr_dstName>
</cfif>
<cfset _distributorName = request._distributorNameCache[_cdr_recordId]>
<cfset QuerySetCell( qmd_operators, "distributorName#_cIdx#", _distributorName, _r)>
<cfset _sets = _sets + 1>
</cfif>
</cfloop>
</cfloop>
<div><cfoutput>#qmd_operators.recordCount# operators, #listLen( structKeyList( request._distributorNameCache ))# unique distributors, #_sets# sets - #getTickCount() - _startTime# ms.</cfoutput></div>
<div>--- SOURCE FILE ---</div>
<cffile action="read" file="#getCurrentTemplatePath()#" variable="_templateContent">
<cfoutput><pre>#htmleditformat( _templateContent )#</pre></cfoutput>