[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