Secciones

Artículos para tus primeros pasos

Si estás empezando a introducirte en el mundo de Groovy y Grails, no te pierdas nuestros artículos básicos: 

Entrevistas con los expertos
 

Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:


Un proyecto de:
ImaginaWorks
Campus Escuela de Groovy

Grails

Problema con sentencia SQL

Alexandor - miércoles 04/05/2011

Buenas tardes,

estoy desarrollando una aplicación que trae de la base de datos una tabla y por tabla creo una hoja de excel y luego almaceno el archivo excel, todo me está funcionando perfectamente menos una cosa: al traer cada fila de la BDD me trae también los nombres de las columnas y eso está quedando almacenado en el archivo excel, y solamente necesito los valores de cada fila en la BDD no el nombre de la columna y el valor, alguien me puede decir cual es mi error, mil gracias.

 

código de creación de una tabla:

 

sql.execute("create table MOTSUELDO (colA varchar(50),colB varchar(100))")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('Codigo','Nombre')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('1','INGRESO A LA EMPRESA')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('2','REINTEGRO A LA EMPRESA')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('3','FLEXIBILIZACIÓN SALARIAL')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('4','AUMENTO')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('5','REEMPLAZO')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('6','TERMINACION DE REEMPLAZO')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('7','CAMBIO DE SOCIEDAD')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('8','CAMBIO DE CARGO')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('90','PASO A PENSIONADO')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('91','SUSTITUCION PENSIONAL')")

sql.execute("insert into MOTSUELDO (colA,colB) VALUES ('92','REDISTRIBUCION DE PENSION')")

 

funciones que traen los dados de la bdd al archivo excel:

 def  MOTSUELDO () {GrabarHoja("MOTSUELDO")}

    def GrabarHoja(String hoja){

        def columnas =[]

         sql.eachRow('select * from ' +hoja) {

             columnas<<it.toRowResult()

        }

        hojaExcel = libro.createSheet(hoja)

        String temporal

        String []splitter

        for (int jj=0; jj<columnas.size();jj++)

        {

            HSSFRow fila = hojaExcel.createRow(jj);

            temporal = columnas[jj];

            splitter = temporal.split(",")

            for (int prueba=0;prueba<splitter.length;prueba++)

            {

             HSSFCell celda = fila.createCell((short)prueba)

             HSSFRichTextString texto = new HSSFRichTextString(splitter[prueba])

             celda.setCellValue(texto)

             System.out.println(splitter[prueba])

            }

        }

    }

 

    def grabarXLS() {

           try {

            FileOutputStream archivoXLS = new FileOutputStream("Formato.xls")

            libro.write(archivoXLS)

            archivoXLS.close()

        } catch (Exception e) {

            e.printStackTrace()

        }

    } 

y esto es lo que imprime y también como queda almacenado en el XLS:

 

{COLA=Codigo

 COLB=Nombre}

{COLA=1

 COLB=INGRESO A LA EMPRESA}

{COLA=2

 COLB=REINTEGRO A LA EMPRESA}

{COLA=3

 COLB=FLEXIBILIZACIÓN SALARIAL}

{COLA=4

 COLB=AUMENTO} 

 

 

Responder al hilo | Volver al foro "Grails" | Volver a los foros