[Gvsig_desarrolladores] No se agrupa una consulta sobre un DBFusando GDBMS

Francisco José Peñarrubia fpenarru en gmail.com
Vie Jun 8 12:22:48 CEST 2012


Probablemente GDBMS no soporta la cláusula GROUP BY.

No lo hagas con GDBMS, recorre el recordset y crea tu propio Hashtable.

Saludos.

Fran.

El 08/06/2012 12:13, David Alda Fernandez de Lezea escribió:
> Alguna idea?
>
>
> Un saludo,
>
>
> David Alda Fernández de Lecea
> GIS Analista Programadorea / Analista Programador GIS
> KONTSULTORIA  UNITATEA / UNIDAD DE CONSULTORÍA
>
> Granja Modelo s/n
> 01192 Arkaute Araba
> T 945 003 295 F 945 003 290
> dalda en hazi.es | www.hazi.es
>
>
>
>
>
> *********************  LEGE OHARRA   *******************   AVISO LEGAL   *******************   DISCLAIMER   ******************
>
> Mezu hau pertsonala eta isilpekoa da eta baimenik gabeko erabilera debekatua dago legalki. Jasotzailea ez bazara ezabatu mezua, bidali eta kontserbatu gabe.
>
> Este mensaje es personal y confidencial y su uso no autorizado está prohibido legalmente. Si usted no es el destinatario, proceda a borrarlo, sin reenviarlo ni conservarlo.
>
> This message is personal and confidential, unauthorised use is legally prohibited. If you are not the intended recipient, delete it without resending or backing it.
>
>
> -----Mensaje original-----
> De: gvsig_desarrolladores-bounces en listserv.gva.es [mailto:gvsig_desarrolladores-bounces en listserv.gva.es] En nombre de David Alda Fernandez de Lezea
> Enviado el: martes, 05 de junio de 2012 14:22
> Para: Lista de Desarrolladores de gvSIG
> Asunto: [Gvsig_desarrolladores] No se agrupa una consulta sobre un DBFusando GDBMS
>
> Hola,
>
> Dentro de una extensión que estoy desarrollando en gvSIG 1.11 tengo una función en la que tengo que agrupar unas filas de un dbf. Accedo al DataSourceFactory y llamo al método executeSQL, pero la sentencia me devuelve los datos sin agrupar, es decir, como si hiciese el select a pelo.
>
> Mi código:
>
> SelectableDataSource sds = lyr.getRecordset();
>
> String[] newCols = new String[2];
> System.arraycopy(columnNames, 0, newCols, 0, 2); System.arraycopy(newCols, 0, newCols, 1, newCols.length-1);
>
> sds.start();
> DataSource result = sds.getDataSourceFactory().executeSQL("select EXPCOD,EXPCOD1 from '" + sds.getName() + "' group by EXPCOD,EXPCOD1" + ";", DataSourceFactory.MANUAL_OPENING);
>
> data = new Object[(int)result.getRowCount()][newCols.length];
> result.start();
> for (int i = 0; i<= newCols.length-2; i++) {
> 	for (int j = 0; j<= result.getRowCount()-1; j++) {
> 		data[j][i] = result.getFieldValue(j, result.getFieldIndexByName("EXPCOD"));
> 		data[j][i+1] = result.getFieldValue(j, result.getFieldIndexByName("EXPCOD1"));
> 	}
> }
>
> result.stop();
> sds.stop();
>
> result.getRowCount() me devuelve el mismo número de filas que sds.getRowCount()
>
> Alguien sabe que puede estar pasando???
>
> Gracias.
>
>
> Un saludo,
>
>
> David Alda Fernández de Lecea
> GIS Analista Programadorea / Analista Programador GIS KONTSULTORIA  UNITATEA / UNIDAD DE CONSULTORÍA
>
> Granja Modelo s/n
> 01192 Arkaute Araba
> T 945 003 295 F 945 003 290
> dalda en hazi.es | www.hazi.es<http://www.hazi.es/>
>
>
>
> <blocked::http://www.hazi.es/>  *********************  LEGE OHARRA   *******************   AVISO LEGAL   *******************   DISCLAIMER   ******************
>
> Mezu hau pertsonala eta isilpekoa da eta baimenik gabeko erabilera debekatua dago legalki. Jasotzailea ez bazara ezabatu mezua, bidali eta kontserbatu gabe.
>
> Este mensaje es personal y confidencial y su uso no autorizado está prohibido legalmente. Si usted no es el destinatario, proceda a borrarlo, sin reenviarlo ni conservarlo.
>
> This message is personal and confidential, unauthorised use is legally prohibited. If you are not the intended recipient, delete it without resending or backing it.
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> Para ver histórico de mensajes, editar sus preferencias de usuario o darse de baja en esta lista, acuda a la siguiente dirección: http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores

-- 
Fran Peñarrubia
Scolab
www.scolab.es

Asociación gvSIG
www.gvsig.com



Más información sobre la lista de distribución gvSIG_desarrolladores