Agrupando desde un CListView

Espero hacer la pregunta correcta… veamos, tengo los siguientes campos: id, nombre, turno (y al pasarlos por un CListView se genera una salida como la siguiente


Id: 1

Nombre: juanito

Turno: matutino

--------------

Id: 2

Nombre: carlitos

Turno: matutino

--------------

Id: 3

Nombre: luisito

Turno: nocturno

--------------

Id: 4

Nombre: miguelito

Turno: nocturno



Lo que busco es poder agrupar estos resultados por el campo "Turno", una salida similar a esta




Turno: matutino

     Id: 1

     Nombre: juanito

     -

     Id: 2

     Nombre: carlitos

---------------

Turno: nocturno

     Id: 3

     Nombre: luisito

     -

     Id: 4

     Nombre: miguelito



Entonces existe alguna forma de agruparlos? O quizas no sea necesario un CListView … alguna idea…

Hola!

Conceptualmente lo que se suele hacer (sin hablar del framework) es traer todos los registros ordenados en primera instancia por el campo que vos querés agrupar (en tu caso, el "Turno").

Al recorrerlos para mostrarlos, en cada iteración chequeás si el turno es diferente al de la iteración anterior.

Si es diferente, mostrás en tu caso un encabezado con el nuevo turno y seguís mostrando normalemente los registros.

¿Se entiende?

Creo que hasta yo me perdí con mi explicación… :S

Hola Luciano, gracias por responder…

Pues conceptualmente el planteamiento q haces esta correcto y es la manera en que yo lo haria si no estuviera utilizando el framework… pero ya que uso yii y tengo al alcance los componentes listview y gridview … me gustaria poder utilizarlos haciendo agrupacion por alguno de los campos (en este caso ‘turno’) …