View Issue Details

This bug affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
19372Bug reportsUsability/user experiencepublic2024-01-30 10:21
ReporterPackages support Assigned Totibor.pacalat  
PrioritynoneSeverityminor 
Status resolvedResolutionfixed 
Product Version5.6.x 
Summary19372: Error 500 : Filter survey by groups doesn't works
Description

Hello,

When I want to filter my surveys by group, a 500 error is returned (attached to this bug).

Here the error message

CDbCommand failed to execute the SQL statement: SQLSTATE[07002]: [Microsoft][ODBC Driver 17 for SQL Server]COUNT field incorrect or syntax error

Thanks in advance.

regards

Steps To Reproduce

Steps to reproduce

To reproduce this incident, after logging in as admin, I go to the list of surveys then I filter on any group and finally I launch the search (attached screenshot)

Expected result

The expected result would be to show me the surveys according to groups

Actual result

Which gives me error 500 with the following message

CDbCommand failed to execute the SQL statement: SQLSTATE[07002]: [Microsoft][ODBC Driver 17 for SQL Server]COUNT field incorrect or syntax error

TagsNo tags attached.
Attached Files
Snag_16a21fe.png (43,178 bytes)   
Snag_16a21fe.png (43,178 bytes)   
Snag_16a562d.png (19,628 bytes)   
Snag_16a562d.png (19,628 bytes)   
Snag_16a563d.png (59,736 bytes)   
Snag_16a563d.png (59,736 bytes)   
Bug heat4
Complete LimeSurvey version number (& build)LimeSurvey Community Edition Version 5.6.49+231212
I will donate to the project if issue is resolvedNo
Browser*
Database type & versionSQL Database on Azure
Server OS (if known)Windows server 2019 datacenter
Webserver software & version (if known)Apache 2.4
PHP VersionPHP Version 7.4.29

Users monitoring this issue

There are no users monitoring this issue.

Activities

DenisChenu

DenisChenu

2024-01-22 16:10

developer   ~79272

Confirm
Same than : https://bugs.limesurvey.org/view.php?id=19072

DenisChenu

DenisChenu

2024-01-22 16:10

developer   ~79273

CDbException.htm (40,110 bytes)   
<!DOCTYPE html PUBLIC
	"-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>CDbException</title>

<style type="text/css">
/*<![CDATA[*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}

body {
	font: normal 9pt "Verdana";
	color: #000;
	background: #fff;
}

h1 {
	font: normal 18pt "Verdana";
	color: #f00;
	margin-bottom: .5em;
}

h2 {
	font: normal 14pt "Verdana";
	color: #800000;
	margin-bottom: .5em;
}

h3 {
	font: bold 11pt "Verdana";
}

pre {
	font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace;
}

pre span.error {
	display: block;
	background: #fce3e3;
}

pre span.ln {
	color: #999;
	padding-right: 0.5em;
	border-right: 1px solid #ccc;
}

pre span.error-ln {
	font-weight: bold;
}

.container {
	margin: 1em 4em;
}

.version {
	color: gray;
	font-size: 8pt;
	border-top: 1px solid #aaa;
	padding-top: 1em;
	margin-bottom: 1em;
}

.message {
	color: #000;
	padding: 1em;
	font-size: 11pt;
	background: #f3f3f3;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-bottom: 1em;
	line-height: 160%;
}

.source {
	margin-bottom: 1em;
}

.code pre {
	background-color: #ffe;
	margin: 0.5em 0;
	padding: 0.5em;
	line-height: 125%;
	border: 1px solid #eee;
}

.source .file {
	margin-bottom: 1em;
	font-weight: bold;
}

.traces {
	margin: 2em 0;
}

.trace {
	margin: 0.5em 0;
	padding: 0.5em;
}

.trace.app {
	border: 1px dashed #c00;
}

.trace .number {
	text-align: right;
	width: 2em;
	padding: 0.5em;
}

.trace .content {
	padding: 0.5em;
}

.trace .plus,
.trace .minus {
	display:inline;
	vertical-align:middle;
	text-align:center;
	border:1px solid #000;
	color:#000;
	font-size:10px;
	line-height:10px;
	margin:0;
	padding:0 1px;
	width:10px;
	height:10px;
}

.trace.collapsed .minus,
.trace.expanded .plus,
.trace.collapsed pre {
	display: none;
}

.trace-file {
	cursor: pointer;
	padding: 0.2em;
}

.trace-file:hover {
	background: #f0ffff;
}
/*]]>*/
</style>
</head>

<body>
<div class="container">
	<h1>CDbException</h1>

	<p class="message">
		CDbCommand failed to execute the SQL statement: SQLSTATE[07002]: [Microsoft][ODBC Driver 17 for SQL Server]COUNT field incorrect or syntax error. The SQL statement executed was: SELECT COUNT(DISTINCT [t].[sid]) FROM [dbo].[lime_surveys] [t] LEFT JOIN lime_surveys_groups parentGroup1 ON t.gsid = parentGroup1.gsid LEFT JOIN lime_surveys_groups parentGroup2 ON parentGroup1.parent_id = parentGroup2.gsid LEFT JOIN lime_surveys_groups parentGroup3 ON parentGroup2.parent_id = parentGroup3.gsid LEFT JOIN lime_surveys_groups parentGroup4 ON parentGroup3.parent_id = parentGroup4.gsid LEFT JOIN lime_surveys_groups parentGroup5 ON parentGroup4.parent_id = parentGroup5.gsid  LEFT OUTER JOIN [dbo].[lime_surveys_languagesettings] [correct_relation_defaultlanguage] ON ([correct_relation_defaultlanguage].[surveyls_language]=[t].[language]) AND ([correct_relation_defaultlanguage].[surveyls_survey_id]=[t].[sid])  LEFT OUTER JOIN [dbo].[lime_users] [owner] ON ([t].[owner_id]=[owner].[uid]) LEFT OUTER JOIN [dbo].[lime_surveys_groups] [surveygroup] ON ([t].[gsid]=[surveygroup].[gsid]) WHERE (t.gsid=:gsid OR parentGroup2.gsid=:gsid OR parentGroup3.gsid=:gsid OR parentGroup4.gsid=:gsid OR parentGroup5.gsid=:gsid)	</p>

	<div class="source">
		<p class="file">E:\IIS\website\vendor\yiisoft\yii\framework\db\CDbCommand.php(543)</p>
		<div class="code"><pre><span class="ln">531</span>         {
<span class="ln">532</span>             if($this-&gt;_connection-&gt;enableProfiling)
<span class="ln">533</span>                 Yii::endProfile(&#039;system.db.CDbCommand.query(&#039;.$this-&gt;getText().$par.&#039;)&#039;,&#039;system.db.CDbCommand.query&#039;);
<span class="ln">534</span> 
<span class="ln">535</span>             $errorInfo=$e instanceof PDOException ? $e-&gt;errorInfo : null;
<span class="ln">536</span>             $message=$e-&gt;getMessage();
<span class="ln">537</span>             Yii::log(Yii::t(&#039;yii&#039;,&#039;CDbCommand::{method}() failed: {error}. The SQL statement executed was: {sql}.&#039;,
<span class="ln">538</span>                 array(&#039;{method}&#039;=&gt;$method, &#039;{error}&#039;=&gt;$message, &#039;{sql}&#039;=&gt;$this-&gt;getText().$par)),CLogger::LEVEL_ERROR,&#039;system.db.CDbCommand&#039;);
<span class="ln">539</span> 
<span class="ln">540</span>             if(YII_DEBUG)
<span class="ln">541</span>                 $message.=&#039;. The SQL statement executed was: &#039;.$this-&gt;getText().$par;
<span class="ln">542</span> 
<span class="error"><span class="ln error-ln">543</span>             throw new CDbException(Yii::t(&#039;yii&#039;,&#039;CDbCommand failed to execute the SQL statement: {error}&#039;,
</span><span class="ln">544</span>                 array(&#039;{error}&#039;=&gt;$message)),(int)$e-&gt;getCode(),$errorInfo);
<span class="ln">545</span>         }
<span class="ln">546</span>     }
<span class="ln">547</span> 
<span class="ln">548</span>     /**
<span class="ln">549</span>      * Builds a SQL SELECT statement from the given query specification.
<span class="ln">550</span>      * @param array $query the query specification in name-value pairs. The following
<span class="ln">551</span>      * query options are supported: {@link select}, {@link distinct}, {@link from},
<span class="ln">552</span>      * {@link where}, {@link join}, {@link group}, {@link having}, {@link order},
<span class="ln">553</span>      * {@link limit}, {@link offset} and {@link union}.
<span class="ln">554</span>      * @throws CDbException if &quot;from&quot; key is not present in given query parameter
<span class="ln">555</span>      * @return string the SQL statement
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<tr class="trace core collapsed">
			<td class="number">
				#0			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\db\CDbCommand.php(433): <strong>CDbCommand</strong>-><strong>queryInternal</strong>(&quot;fetchColumn&quot;, 0, array())				</div>

				<div class="code"><pre><span class="ln">428</span>      * @return mixed the value of the first column in the first row of the query result. False is returned if there is no value.
<span class="ln">429</span>      * @throws CException execution failed
<span class="ln">430</span>      */
<span class="ln">431</span>     public function queryScalar($params=array())
<span class="ln">432</span>     {
<span class="error"><span class="ln error-ln">433</span>         $result=$this-&gt;queryInternal(&#039;fetchColumn&#039;,0,$params);
</span><span class="ln">434</span>         if(is_resource($result) &amp;&amp; get_resource_type($result)===&#039;stream&#039;)
<span class="ln">435</span>             return stream_get_contents($result);
<span class="ln">436</span>         else
<span class="ln">437</span>             return $result;
<span class="ln">438</span>     }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#1			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\db\ar\CActiveFinder.php(766): <strong>CDbCommand</strong>-><strong>queryScalar</strong>()				</div>

				<div class="code"><pre><span class="ln">761</span>             else
<span class="ln">762</span>                 $query-&gt;selects=array(&quot;COUNT(*)&quot;);
<span class="ln">763</span> 
<span class="ln">764</span>             $query-&gt;orders=$query-&gt;groups=$query-&gt;havings=array();
<span class="ln">765</span>             $command=$query-&gt;createCommand($this-&gt;_builder);
<span class="error"><span class="ln error-ln">766</span>             return $command-&gt;queryScalar();
</span><span class="ln">767</span>         }
<span class="ln">768</span>     }
<span class="ln">769</span> 
<span class="ln">770</span>     /**
<span class="ln">771</span>      * Calls {@link CActiveRecord::afterFind} of all the records.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#2			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\db\ar\CActiveFinder.php(151): <strong>CJoinElement</strong>-><strong>count</strong>(LSDbCriteria)				</div>

				<div class="code"><pre><span class="ln">146</span> 
<span class="ln">147</span>         $alias=$criteria-&gt;alias===null ? &#039;t&#039; : $criteria-&gt;alias;
<span class="ln">148</span>         $this-&gt;_joinTree-&gt;tableAlias=$alias;
<span class="ln">149</span>         $this-&gt;_joinTree-&gt;rawTableAlias=$this-&gt;_builder-&gt;getSchema()-&gt;quoteTableName($alias);
<span class="ln">150</span> 
<span class="error"><span class="ln error-ln">151</span>         $n=$this-&gt;_joinTree-&gt;count($criteria);
</span><span class="ln">152</span>         $this-&gt;destroyJoinTree();
<span class="ln">153</span>         return $n;
<span class="ln">154</span>     }
<span class="ln">155</span> 
<span class="ln">156</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#3			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\db\ar\CActiveRecord.php(1613): <strong>CActiveFinder</strong>-><strong>count</strong>(LSDbCriteria)				</div>

				<div class="code"><pre><span class="ln">1608</span>         if(empty($criteria-&gt;with))
<span class="ln">1609</span>             return $builder-&gt;createCountCommand($this-&gt;getTableSchema(),$criteria)-&gt;queryScalar();
<span class="ln">1610</span>         else
<span class="ln">1611</span>         {
<span class="ln">1612</span>             $finder=$this-&gt;getActiveFinder($criteria-&gt;with);
<span class="error"><span class="ln error-ln">1613</span>             return $finder-&gt;count($criteria);
</span><span class="ln">1614</span>         }
<span class="ln">1615</span>     }
<span class="ln">1616</span> 
<span class="ln">1617</span>     /**
<span class="ln">1618</span>      * Finds the number of rows that have the specified attribute values.
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\models\Survey.php(1686): <strong>CActiveRecord</strong>-><strong>count</strong>(LSDbCriteria)				</div>

				<div class="code"><pre><span class="ln">1681</span>             &#039;pagination&#039; =&gt; array(
<span class="ln">1682</span>                 &#039;pageSize&#039; =&gt; $pageSize,
<span class="ln">1683</span>             ),
<span class="ln">1684</span>         ));
<span class="ln">1685</span> 
<span class="error"><span class="ln error-ln">1686</span>         $dataProvider-&gt;setTotalItemCount($this-&gt;count($criteria));
</span><span class="ln">1687</span> 
<span class="ln">1688</span>         return $dataProvider;
<span class="ln">1689</span>     }
<span class="ln">1690</span> 
<span class="ln">1691</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\extensions\admin\survey\ListSurveysWidget\views\listSurveys.php(21): <strong>Survey</strong>-><strong>search</strong>()				</div>

				<div class="code"><pre><span class="ln">16</span> &lt;!-- Grid --&gt;
<span class="ln">17</span> &lt;div class=&quot;row&quot;&gt;
<span class="ln">18</span>     &lt;div class=&quot;col-lg-12 content-right&quot;&gt;
<span class="ln">19</span>         &lt;?php
<span class="ln">20</span>             $surveyGrid = $this-&gt;widget(&#039;bootstrap.widgets.TbGridView&#039;, array(
<span class="error"><span class="ln error-ln">21</span>             &#039;dataProvider&#039; =&gt; $this-&gt;model-&gt;search(),
</span><span class="ln">22</span> 
<span class="ln">23</span>                 // Number of row per page selection
<span class="ln">24</span>                 &#039;id&#039; =&gt; &#039;survey-grid&#039;,
<span class="ln">25</span>                 &#039;emptyText&#039;=&gt;gT(&#039;No surveys found.&#039;),
<span class="ln">26</span>                 &#039;summaryText&#039;=&gt;gT(&#039;Displaying {start}-{end} of {count} result(s).&#039;).&#039; &#039;. sprintf(gT(&#039;%s rows per page&#039;),
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#6			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CBaseController.php(130): <strong>require</strong>(&quot;E:\IIS\website\application\extensions\admin\survey\ListSurveysWi...&quot;)				</div>

				<div class="code"><pre><span class="ln">125</span>             ob_implicit_flush(false);
<span class="ln">126</span>             require($_viewFile_);
<span class="ln">127</span>             return ob_get_clean();
<span class="ln">128</span>         }
<span class="ln">129</span>         else
<span class="error"><span class="ln error-ln">130</span>             require($_viewFile_);
</span><span class="ln">131</span>     }
<span class="ln">132</span> 
<span class="ln">133</span>     /**
<span class="ln">134</span>      * Creates a widget and initializes it.
<span class="ln">135</span>      * This method first creates the specified widget instance.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CBaseController.php(95): <strong>CBaseController</strong>-><strong>renderInternal</strong>(&quot;E:\IIS\website\application\extensions\admin\survey\ListSurveysWi...&quot;, null, false)				</div>

				<div class="code"><pre><span class="ln">090</span>     {
<span class="ln">091</span>         $widgetCount=count($this-&gt;_widgetStack);
<span class="ln">092</span>         if(($renderer=Yii::app()-&gt;getViewRenderer())!==null &amp;&amp; $renderer-&gt;fileExtension===&#039;.&#039;.CFileHelper::getExtension($viewFile))
<span class="ln">093</span>             $content=$renderer-&gt;renderFile($this,$viewFile,$data,$return);
<span class="ln">094</span>         else
<span class="error"><span class="ln error-ln">095</span>             $content=$this-&gt;renderInternal($viewFile,$data,$return);
</span><span class="ln">096</span>         if(count($this-&gt;_widgetStack)===$widgetCount)
<span class="ln">097</span>             return $content;
<span class="ln">098</span>         else
<span class="ln">099</span>         {
<span class="ln">100</span>             $widget=end($this-&gt;_widgetStack);
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#8			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\widgets\CWidget.php(244): <strong>CBaseController</strong>-><strong>renderFile</strong>(&quot;E:\IIS\website\application\extensions\admin\survey\ListSurveysWi...&quot;, null, false)				</div>

				<div class="code"><pre><span class="ln">239</span>      * @see getViewFile
<span class="ln">240</span>      */
<span class="ln">241</span>     public function render($view,$data=null,$return=false)
<span class="ln">242</span>     {
<span class="ln">243</span>         if(($viewFile=$this-&gt;getViewFile($view))!==false)
<span class="error"><span class="ln error-ln">244</span>             return $this-&gt;renderFile($viewFile,$data,$return);
</span><span class="ln">245</span>         else
<span class="ln">246</span>             throw new CException(Yii::t(&#039;yii&#039;,&#039;{widget} cannot find the view &quot;{view}&quot;.&#039;,
<span class="ln">247</span>                 array(&#039;{widget}&#039;=&gt;get_class($this), &#039;{view}&#039;=&gt;$view)));
<span class="ln">248</span>     }
<span class="ln">249</span> }</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\extensions\admin\survey\ListSurveysWidget\ListSurveysWidget.php(72): <strong>CWidget</strong>-><strong>render</strong>(&quot;listSurveys&quot;)				</div>

				<div class="code"><pre><span class="ln">67</span> 
<span class="ln">68</span>         if ($this-&gt;bRenderSearchBox) {
<span class="ln">69</span>             $this-&gt;render(&#039;searchBox&#039;);
<span class="ln">70</span>         }
<span class="ln">71</span> 
<span class="error"><span class="ln error-ln">72</span>         $this-&gt;render(&#039;listSurveys&#039;);
</span><span class="ln">73</span>     }
<span class="ln">74</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#10			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CBaseController.php(182): <strong>ListSurveysWidget</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">177</span>             return ob_get_clean();
<span class="ln">178</span>         }
<span class="ln">179</span>         else
<span class="ln">180</span>         {
<span class="ln">181</span>             $widget=$this-&gt;createWidget($className,$properties);
<span class="error"><span class="ln error-ln">182</span>             $widget-&gt;run();
</span><span class="ln">183</span>             return $widget;
<span class="ln">184</span>         }
<span class="ln">185</span>     }
<span class="ln">186</span> 
<span class="ln">187</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#11			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\views\surveyAdministration\listSurveys_view.php(23): <strong>CBaseController</strong>-><strong>widget</strong>(&quot;ext.admin.survey.ListSurveysWidget.ListSurveysWidget&quot;, array(&quot;pageSize&quot; =&gt; 10, &quot;model&quot; =&gt; Survey))				</div>

				<div class="code"><pre><span class="ln">18</span>     &lt;div class=&quot;tab-content&quot;&gt;
<span class="ln">19</span>         &lt;div id=&quot;surveys&quot; class=&quot;tab-pane active&quot;&gt;
<span class="ln">20</span>             &lt;!-- Survey List widget --&gt;
<span class="ln">21</span>             &lt;?php $this-&gt;widget(&#039;ext.admin.survey.ListSurveysWidget.ListSurveysWidget&#039;, array(
<span class="ln">22</span>                         &#039;pageSize&#039; =&gt; Yii::app()-&gt;user-&gt;getState(&#039;pageSize&#039;, Yii::app()-&gt;params[&#039;defaultPageSize&#039;]),
<span class="error"><span class="ln error-ln">23</span>                         &#039;model&#039; =&gt; $model
</span><span class="ln">24</span>                 ));
<span class="ln">25</span>                                                                                                 ?&gt;
<span class="ln">26</span>         &lt;/div&gt;
<span class="ln">27</span> 
<span class="ln">28</span>         &lt;div id=&quot;surveygroups&quot; class=&quot;tab-pane&quot;&gt;
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#12			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CBaseController.php(126): <strong>require</strong>(&quot;E:\IIS\website\application\views\surveyAdministration\listSurvey...&quot;)				</div>

				<div class="code"><pre><span class="ln">121</span>             $data=$_data_;
<span class="ln">122</span>         if($_return_)
<span class="ln">123</span>         {
<span class="ln">124</span>             ob_start();
<span class="ln">125</span>             ob_implicit_flush(false);
<span class="error"><span class="ln error-ln">126</span>             require($_viewFile_);
</span><span class="ln">127</span>             return ob_get_clean();
<span class="ln">128</span>         }
<span class="ln">129</span>         else
<span class="ln">130</span>             require($_viewFile_);
<span class="ln">131</span>     }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#13			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CBaseController.php(95): <strong>CBaseController</strong>-><strong>renderInternal</strong>(&quot;E:\IIS\website\application\views\surveyAdministration\listSurvey...&quot;, array(&quot;issuperadmin&quot; =&gt; true, &quot;model&quot; =&gt; Survey, &quot;groupModel&quot; =&gt; SurveysGroups, &quot;pageTitle&quot; =&gt; &quot;Survey list&quot;, ...), true)				</div>

				<div class="code"><pre><span class="ln">090</span>     {
<span class="ln">091</span>         $widgetCount=count($this-&gt;_widgetStack);
<span class="ln">092</span>         if(($renderer=Yii::app()-&gt;getViewRenderer())!==null &amp;&amp; $renderer-&gt;fileExtension===&#039;.&#039;.CFileHelper::getExtension($viewFile))
<span class="ln">093</span>             $content=$renderer-&gt;renderFile($this,$viewFile,$data,$return);
<span class="ln">094</span>         else
<span class="error"><span class="ln error-ln">095</span>             $content=$this-&gt;renderInternal($viewFile,$data,$return);
</span><span class="ln">096</span>         if(count($this-&gt;_widgetStack)===$widgetCount)
<span class="ln">097</span>             return $content;
<span class="ln">098</span>         else
<span class="ln">099</span>         {
<span class="ln">100</span>             $widget=end($this-&gt;_widgetStack);
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#14			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CController.php(872): <strong>CBaseController</strong>-><strong>renderFile</strong>(&quot;E:\IIS\website\application\views\surveyAdministration\listSurvey...&quot;, array(&quot;issuperadmin&quot; =&gt; true, &quot;model&quot; =&gt; Survey, &quot;groupModel&quot; =&gt; SurveysGroups, &quot;pageTitle&quot; =&gt; &quot;Survey list&quot;, ...), true)				</div>

				<div class="code"><pre><span class="ln">867</span>      */
<span class="ln">868</span>     public function renderPartial($view,$data=null,$return=false,$processOutput=false)
<span class="ln">869</span>     {
<span class="ln">870</span>         if(($viewFile=$this-&gt;getViewFile($view))!==false)
<span class="ln">871</span>         {
<span class="error"><span class="ln error-ln">872</span>             $output=$this-&gt;renderFile($viewFile,$data,true);
</span><span class="ln">873</span>             if($processOutput)
<span class="ln">874</span>                 $output=$this-&gt;processOutput($output);
<span class="ln">875</span>             if($return)
<span class="ln">876</span>                 return $output;
<span class="ln">877</span>             else
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#15			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CController.php(785): <strong>CController</strong>-><strong>renderPartial</strong>(&quot;listSurveys_view&quot;, array(&quot;issuperadmin&quot; =&gt; true, &quot;model&quot; =&gt; Survey, &quot;groupModel&quot; =&gt; SurveysGroups, &quot;pageTitle&quot; =&gt; &quot;Survey list&quot;, ...), true)				</div>

				<div class="code"><pre><span class="ln">780</span>      */
<span class="ln">781</span>     public function render($view,$data=null,$return=false)
<span class="ln">782</span>     {
<span class="ln">783</span>         if($this-&gt;beforeRender($view))
<span class="ln">784</span>         {
<span class="error"><span class="ln error-ln">785</span>             $output=$this-&gt;renderPartial($view,$data,true);
</span><span class="ln">786</span>             if(($layoutFile=$this-&gt;getLayoutFile($this-&gt;layout))!==false)
<span class="ln">787</span>                 $output=$this-&gt;renderFile($layoutFile,array(&#039;content&#039;=&gt;$output),true);
<span class="ln">788</span> 
<span class="ln">789</span>             $this-&gt;afterRender($view,$output);
<span class="ln">790</span> 
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#16			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\controllers\SurveyAdministrationController.php(248): <strong>CController</strong>-><strong>render</strong>(&quot;listSurveys_view&quot;, array(&quot;issuperadmin&quot; =&gt; true, &quot;model&quot; =&gt; Survey, &quot;groupModel&quot; =&gt; SurveysGroups, &quot;pageTitle&quot; =&gt; &quot;Survey list&quot;, ...))				</div>

				<div class="code"><pre><span class="ln">243</span>         // Return Button
<span class="ln">244</span>         $aData[&#039;fullpagebar&#039;][&#039;returnbutton&#039;][&#039;url&#039;] = &#039;admin/index&#039;;
<span class="ln">245</span>         $aData[&#039;fullpagebar&#039;][&#039;returnbutton&#039;][&#039;text&#039;] = gT(&#039;Back&#039;);
<span class="ln">246</span> 
<span class="ln">247</span>         $this-&gt;aData = $aData;
<span class="error"><span class="ln error-ln">248</span>         $this-&gt;render(&#039;listSurveys_view&#039;, $aData);
</span><span class="ln">249</span>     }
<span class="ln">250</span> 
<span class="ln">251</span>     /**
<span class="ln">252</span>      * Delete multiple survey
<span class="ln">253</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#17			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\actions\CInlineAction.php(49): <strong>SurveyAdministrationController</strong>-><strong>actionListsurveys</strong>()				</div>

				<div class="code"><pre><span class="ln">44</span>         $controller=$this-&gt;getController();
<span class="ln">45</span>         $method=new ReflectionMethod($controller, $methodName);
<span class="ln">46</span>         if($method-&gt;getNumberOfParameters()&gt;0)
<span class="ln">47</span>             return $this-&gt;runWithParamsInternal($controller, $method, $params);
<span class="ln">48</span> 
<span class="error"><span class="ln error-ln">49</span>         $controller-&gt;$methodName();
</span><span class="ln">50</span>         return true;
<span class="ln">51</span>     }
<span class="ln">52</span> }
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#18			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CController.php(308): <strong>CInlineAction</strong>-><strong>runWithParams</strong>(array(&quot;r&quot; =&gt; &quot;surveyAdministration/listsurveys&quot;, &quot;Survey&quot; =&gt; array(&quot;searched_value&quot; =&gt; &quot;&quot;), &quot;active&quot; =&gt; &quot;&quot;, &quot;gsid&quot; =&gt; &quot;3&quot;, ...))				</div>

				<div class="code"><pre><span class="ln">303</span>     {
<span class="ln">304</span>         $priorAction=$this-&gt;_action;
<span class="ln">305</span>         $this-&gt;_action=$action;
<span class="ln">306</span>         if($this-&gt;beforeAction($action))
<span class="ln">307</span>         {
<span class="error"><span class="ln error-ln">308</span>             if($action-&gt;runWithParams($this-&gt;getActionParams())===false)
</span><span class="ln">309</span>                 $this-&gt;invalidActionParams($action);
<span class="ln">310</span>             else
<span class="ln">311</span>                 $this-&gt;afterAction($action);
<span class="ln">312</span>         }
<span class="ln">313</span>         $this-&gt;_action=$priorAction;
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#19			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\filters\CFilterChain.php(134): <strong>CController</strong>-><strong>runAction</strong>(CInlineAction)				</div>

				<div class="code"><pre><span class="ln">129</span>             $filter=$this-&gt;itemAt($this-&gt;filterIndex++);
<span class="ln">130</span>             Yii::trace(&#039;Running filter &#039;.($filter instanceof CInlineFilter ? get_class($this-&gt;controller).&#039;.filter&#039;.$filter-&gt;name.&#039;()&#039;:get_class($filter).&#039;.filter()&#039;),&#039;system.web.filters.CFilterChain&#039;);
<span class="ln">131</span>             $filter-&gt;filter($this);
<span class="ln">132</span>         }
<span class="ln">133</span>         else
<span class="error"><span class="ln error-ln">134</span>             $this-&gt;controller-&gt;runAction($this-&gt;action);
</span><span class="ln">135</span>     }
<span class="ln">136</span> }</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#20			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CController.php(291): <strong>CFilterChain</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">286</span>             $this-&gt;runAction($action);
<span class="ln">287</span>         else
<span class="ln">288</span>         {
<span class="ln">289</span>             $priorAction=$this-&gt;_action;
<span class="ln">290</span>             $this-&gt;_action=$action;
<span class="error"><span class="ln error-ln">291</span>             CFilterChain::create($this,$action,$filters)-&gt;run();
</span><span class="ln">292</span>             $this-&gt;_action=$priorAction;
<span class="ln">293</span>         }
<span class="ln">294</span>     }
<span class="ln">295</span> 
<span class="ln">296</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#21			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CController.php(265): <strong>CController</strong>-><strong>runActionWithFilters</strong>(CInlineAction, array(&quot;postOnly + copy&quot;))				</div>

				<div class="code"><pre><span class="ln">260</span>         {
<span class="ln">261</span>             if(($parent=$this-&gt;getModule())===null)
<span class="ln">262</span>                 $parent=Yii::app();
<span class="ln">263</span>             if($parent-&gt;beforeControllerAction($this,$action))
<span class="ln">264</span>             {
<span class="error"><span class="ln error-ln">265</span>                 $this-&gt;runActionWithFilters($action,$this-&gt;filters());
</span><span class="ln">266</span>                 $parent-&gt;afterControllerAction($this,$action);
<span class="ln">267</span>             }
<span class="ln">268</span>         }
<span class="ln">269</span>         else
<span class="ln">270</span>             $this-&gt;missingAction($actionID);
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#22			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\application\controllers\LSBaseController.php(145): <strong>CController</strong>-><strong>run</strong>(&quot;listsurveys&quot;)				</div>

				<div class="code"><pre><span class="ln">140</span>                     $this-&gt;redirect(array(&#039;/admin/authentication/sa/login&#039;));
<span class="ln">141</span>                 }
<span class="ln">142</span>             }
<span class="ln">143</span>         }
<span class="ln">144</span> 
<span class="error"><span class="ln error-ln">145</span>         parent::run($action);
</span><span class="ln">146</span>     }
<span class="ln">147</span> 
<span class="ln">148</span>     /**
<span class="ln">149</span>      * Load and set session vars
<span class="ln">150</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#23			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CWebApplication.php(282): <strong>LSBaseController</strong>-><strong>run</strong>(&quot;listsurveys&quot;)				</div>

				<div class="code"><pre><span class="ln">277</span>         {
<span class="ln">278</span>             list($controller,$actionID)=$ca;
<span class="ln">279</span>             $oldController=$this-&gt;_controller;
<span class="ln">280</span>             $this-&gt;_controller=$controller;
<span class="ln">281</span>             $controller-&gt;init();
<span class="error"><span class="ln error-ln">282</span>             $controller-&gt;run($actionID);
</span><span class="ln">283</span>             $this-&gt;_controller=$oldController;
<span class="ln">284</span>         }
<span class="ln">285</span>         else
<span class="ln">286</span>             throw new CHttpException(404,Yii::t(&#039;yii&#039;,&#039;Unable to resolve the request &quot;{route}&quot;.&#039;,
<span class="ln">287</span>                 array(&#039;{route}&#039;=&gt;$route===&#039;&#039;?$this-&gt;defaultController:$route)));
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#24			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\web\CWebApplication.php(141): <strong>CWebApplication</strong>-><strong>runController</strong>(&quot;surveyAdministration/listsurveys&quot;)				</div>

				<div class="code"><pre><span class="ln">136</span>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<span class="ln">137</span>                 $_GET[$name]=$value;
<span class="ln">138</span>         }
<span class="ln">139</span>         else
<span class="ln">140</span>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<span class="error"><span class="ln error-ln">141</span>         $this-&gt;runController($route);
</span><span class="ln">142</span>     }
<span class="ln">143</span> 
<span class="ln">144</span>     /**
<span class="ln">145</span>      * Registers the core application components.
<span class="ln">146</span>      * This method overrides the parent implementation by registering additional core components.
</pre></div>			</td>
		</tr>
						<tr class="trace core collapsed">
			<td class="number">
				#25			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\vendor\yiisoft\yii\framework\base\CApplication.php(185): <strong>CWebApplication</strong>-><strong>processRequest</strong>()				</div>

				<div class="code"><pre><span class="ln">180</span>     public function run()
<span class="ln">181</span>     {
<span class="ln">182</span>         if($this-&gt;hasEventHandler(&#039;onBeginRequest&#039;))
<span class="ln">183</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="ln">184</span>         register_shutdown_function(array($this,&#039;end&#039;),0,false);
<span class="error"><span class="ln error-ln">185</span>         $this-&gt;processRequest();
</span><span class="ln">186</span>         if($this-&gt;hasEventHandler(&#039;onEndRequest&#039;))
<span class="ln">187</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">188</span>     }
<span class="ln">189</span> 
<span class="ln">190</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app collapsed">
			<td class="number">
				#26			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;E:\IIS\website\index.php(161): <strong>CApplication</strong>-><strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">156</span> require_once APPPATH . &#039;core/LSYii_Application&#039; . EXT;
<span class="ln">157</span> 
<span class="ln">158</span> $config = require_once(APPPATH . &#039;config/internal&#039; . EXT);
<span class="ln">159</span> 
<span class="ln">160</span> Yii::$enableIncludePath = false;
<span class="error"><span class="ln error-ln">161</span> Yii::createApplication(&#039;LSYii_Application&#039;, $config)-&gt;run();
</span><span class="ln">162</span> 
<span class="ln">163</span> /* End of file index.php */
<span class="ln">164</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</table>
	</div>

	<div class="version">
		2024-01-22 14:49:47 Microsoft-IIS/10.0 <a href="https://www.yiiframework.com/">Yii Framework</a>/1.1.28	</div>
</div>

<script type="text/javascript">
/*<![CDATA[*/
var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)");
var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)");

var e = document.getElementsByTagName("div");
for(var j=0,len=e.length;j<len;j++){
	if(traceReg.test(e[j].className)){
		e[j].onclick = function(){
			var trace = this.parentNode.parentNode;
			if(collapsedReg.test(trace.className))
				trace.className = trace.className.replace("collapsed", "expanded");
			else
				trace.className = trace.className.replace("expanded", "collapsed");
		}
	}
}
/*]]>*/
</script>

</body>
</html>
CDbException.htm (40,110 bytes)   
DenisChenu

DenisChenu

2024-01-22 16:23

developer   ~79274

If you can take time to test : https://github.com/LimeSurvey/LimeSurvey/pull/3706/files

DenisChenu

DenisChenu

2024-01-29 17:30

developer   ~79337

Fix committed to 5.x branch: http://bugs.limesurvey.org/plugin.php?page=Source/view&amp;id=36004

LimeBot

LimeBot

2024-01-30 10:21

administrator   ~79346

Fixed in Release 5.6.53+240131

Related Changesets

LimeSurvey: 5.x 78957fa3

2024-01-29 17:28:31

DenisChenu


Committer: GitHub Details Diff
Fixed issue 19372 : CDbException with Microsoft SQL Server and Group filter (#3706) Affected Issues
19372
mod - application/models/Survey.php Diff File

Issue History

Date Modified Username Field Change
2024-01-22 14:59 Packages support New Issue
2024-01-22 14:59 Packages support File Added: Snag_16a21fe.png
2024-01-22 14:59 Packages support File Added: Snag_16a562d.png
2024-01-22 14:59 Packages support File Added: Snag_16a563d.png
2024-01-22 16:10 DenisChenu Assigned To => DenisChenu
2024-01-22 16:10 DenisChenu Status new => confirmed
2024-01-22 16:10 DenisChenu Note Added: 79272
2024-01-22 16:10 DenisChenu Bug heat 0 => 2
2024-01-22 16:10 DenisChenu Note Added: 79273
2024-01-22 16:10 DenisChenu File Added: CDbException.htm
2024-01-22 16:15 DenisChenu Assigned To DenisChenu =>
2024-01-22 16:15 DenisChenu Assigned To => DenisChenu
2024-01-22 16:15 DenisChenu Status confirmed => assigned
2024-01-22 16:23 DenisChenu Note Added: 79274
2024-01-22 16:24 DenisChenu Assigned To DenisChenu => gabrieljenik
2024-01-22 16:24 DenisChenu Status assigned => ready for testing
2024-01-23 10:23 gabrieljenik Assigned To gabrieljenik => tibor.pacalat
2024-01-29 17:28 tibor.pacalat Status ready for testing => resolved
2024-01-29 17:28 tibor.pacalat Resolution open => fixed
2024-01-29 17:30 DenisChenu Changeset attached => LimeSurvey 5.x 78957fa3
2024-01-29 17:30 DenisChenu Note Added: 79337
2024-01-30 10:21 LimeBot Note Added: 79346
2024-01-30 10:24 guest Bug heat 2 => 4