Condición en el having que no está siendo tomada por el paginador
#1
Posted 17 August 2010 - 10:18 AM
Alguien sabe como puedo solucionar esto?
#3
Posted 17 August 2010 - 10:41 AM
sebas, on 17 August 2010 - 10:35 AM, said:
Gracias,
Sip, quitando algunas validaciones el código es el siguiente:
$criteria = new CDbCriteria;
$criteria->with = array('relProPgd', 'relProPec');;
$select = array();
$select[] = "funct_prop_available(t.pro_code,'{$dateSince}','{$dateTo}',if(prt_code=1,relProPec.pec_hole,0)) AS pro_available";
$criteria->having = "pro_available = 0";
$select[]= 'pro_code';
$select[]= 'pro_name';
$select[]= 'prt_code';
$select[]= 'pro_url';
$criteria->select = $select;
//Aquí se obitnen los datos de las propiedades que encajan con los parametros de busqueda segun el criteria.
$properties = new CActiveDataProvider('Property', array(
'criteria'=>$criteria,
'pagination'=>array(
'pageSize'=>self::PAGE_SIZE,
),
));
$this->render('apartmentSearchResult', array(
'propertiesData'=>$properties->getData(),
'propertiesPagination'=>$properties->getPagination(),
));
El having lo hago sobre lo que me retorna la función que incluyo en el select y funciona, es decir, se aparecen la cantidad de resultados correctos, pero en el objeto pagination no aparece la cantidad correcta de datos y ya probé haciendo el count y el count tampoco me muestra bien la cantidad de datos:
echo Property::model()->with('relProPgd','relProPec')->count($criteria);Nota: la versión que estoy utilizando es yii-1.1.2.r2086
This post has been edited by juanmjimenezs: 17 August 2010 - 10:44 AM
#4
Posted 17 August 2010 - 11:01 AM
Issue 1244
Supongo que será solucionado en alguna version futura...
The problem is communication! Excess of communication!
#5
Posted 17 August 2010 - 11:35 AM
PoL, on 17 August 2010 - 11:01 AM, said:
Issue 1244
Supongo que será solucionado en alguna version futura...
Gracias PoL por tu respuesta.
#6
Posted 18 August 2010 - 07:23 AM
$pages = new CPagination(count(Property::model()->findAll($criteria))); $pages->pageSize = self::PAGE_SIZE; $pages->applyLimit($criteria); $models = Property::model()->findAll($criteria);
Claro, esta es una solución temporal mientras el equipo de desarrollo soluciona el problema del count con el having.
#7
Posted 18 August 2010 - 02:11 PM
Se que este bug es uno en los que mas está trabajando samdark por lo que proximamente estará solucionado. No tenemos estimado cuando.
También estamos trabajando mucho con la nueva versión de Yii, la 1.2, definiendo las cosas que se agregan y las que se sacan.
Saludos
#8
Posted 25 August 2010 - 02:32 PM
sebas, on 18 August 2010 - 02:11 PM, said:
Se que este bug es uno en los que mas está trabajando samdark por lo que proximamente estará solucionado. No tenemos estimado cuando.
También estamos trabajando mucho con la nueva versión de Yii, la 1.2, definiendo las cosas que se agregan y las que se sacan.
Saludos
Genial, muchas gracias Sebas.
#9
Posted 19 September 2010 - 07:13 AM

Help













