Lo + Leído
Eventos destacados
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:
- Introducción a Groovy, parte 1 (Andrés Almiray)
- Introducción a Groovy, parte 2 (Andrés Almiray)
- Introducción a Groovy, parte 3 (Andrés Almiray)
- Introducción a Grails (Material Seminario ImaginaWorks)
Los protagonistas te cuentan de qué van los proyectos más importantes del mundo Groovy:
Grails
Problema con sentencia SQL
Alexandor - miércoles 04/05/2011Buenas 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}