Yii Framework Forum: Busqueda En Rango De Fechas - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Busqueda En Rango De Fechas Rate Topic: -----

#1 User is offline   desh 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 25
  • Joined: 10-October 12
  • Location:Guatemala

Posted 10 October 2012 - 12:33 PM

Buen día amigos, soy nuevo en Yii Framework llevo 4 dias programando en yii y ps necesito de su ayuda profesional, actualmente tengo una tabla donde la estoy mostrando en un grid.CGridView y tengo los campos: ID_CIUDADANO , USUARIO, USUARIO_AUDIT, FECHA_HORA, OPERACION y tengo mi formulario de busqueda y hace las busquedas con los campos escritos anteriormente, pero necesito hacer una busqueda por rango de fechas: FECHA INICIAL y FECHA FINAL

pero cuando ingreso los campos adicionales de fecha inicial y final me da muchos errores el formulario que dice que no tengo los campos en la base de datos, como podria hacer esa consulta?

en oracle seria: select * from ciudadanos where fechas between fechainicial and fechafinal

actualmente estoy utilizando base de datos oracle.

mi modelo:
public function search()
{
// Warning: Please modify the following code to remove attributes that
// should not be searched.

$criteria=new CDbCriteria;

$criteria->compare('ID_CIUDADANO',$this->ID_CIUDADANO);
$criteria->compare('USUARIO',$this->USUARIO,true);
$criteria->compare('USUARIO_AUDIT',$this->USUARIO_AUDIT,true);
$criteria->compare('FECHA_HORA',$this->FECHA_HORA,true);
$criteria->compare('OPERACION',$this->OPERACION,true);

return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}

mi controlador:
class BusquedaController extends Controller
{ //inicio de la clase controlador

public function actionIndex()
{ //inicio de action view


$model=new AUDIT_T_CIUDADANOS1('search');
$model->unsetAttributes(); // borra los valores por defecto
if(isset($_GET['AUDIT_T_CIUDADANOS1']))
$model->attributes=$_GET['AUDIT_T_CIUDADANOS1'];

#$busqueda = AUDIT_T_CIUDADANOS1::model()->findAll();
$this->render('index', array('model'=>$model,));



} //fin del action view

} // fin de la clase

mi vista:
<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',
)); ?>

<div class="row">
<?php echo $form->label($model,'USUARIO'); ?>
<?php echo $form->textField($model,'USUARIO'); ?>
</div>

<div class="row">
<?php echo $form->label($model,'USUARIO_AUDIT'); ?>
<?php echo $form->textField($model,'USUARIO_AUDIT',array('size'=>20,'maxlength'=>255)); ?>
</div>

<div class="row">
<?php echo $form->label($model,'OPERACION'); ?>
<?php echo $form->dropDownList($model,'OPERACION',CHtml::listData(AUDIT_T_CIUDADANOS1::model()->findAll(), 'OPERACION', 'OPERACION'),array ('prompt'=>'Seleccione...')); ?>
</div>

<div class="row"> <!-- CALENDARIO DE FECHA -->
<?php echo $form->labelEx($model,'FECHA INICIAL'); ?>
<?php echo $form->textField($model, 'FECHA_HORA'); ?>
</div>

<div class="row">
<?php echo $form->label($model,'FECHA FINAL'); ?>
<?php //echo $form->textField($model,'FECHA2'); ?>
</div>

<div class="row buttons"> <!-- BOTON SUBMIT -->
<?php echo CHtml::submitButton('Buscar'); ?>
</div>

<?php $this->endWidget(); ?>

</div><!-- search-form -->




<?php
// Vista de la lista usuario, operacion, fecha

$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'busqueda-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'USUARIO',
'USUARIO_AUDIT',
'FECHA_HORA',
'OPERACION',

# array(
# 'class'=>'CButtonColumn',
# ),
),
));

quedo a la espera de su pronta respuesta, espero que me ayuden con la solucion de este problema en el modulo que estoy desarrollando,
Saludos desde guatemala.
0

#2 User is offline   safitanet 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 44
  • Joined: 04-August 11

Posted 29 October 2012 - 04:04 AM

Prueba a ver añadiendo esta línea al CDbCriteria, según el formato que use Oracle, t.date_add es un campo de la base de datos

$criteria->addBetweenCondition('t.date_add','2012-02-08','2012-02-14');




0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users