Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/09/2012, 14:32
Avatar de arrakshe
arrakshe
 
Fecha de Ingreso: septiembre-2012
Mensajes: 19
Antigüedad: 11 años, 7 meses
Puntos: 2
Funcion para exportar a CSV con Javascript

Buenas a todos, de antemano me disculpo si este hilo presenta alguna inconsistencia dado que soy nuevo, bueno a lo que venimos, como el titulo indica estoy en busca de una manera efectiva de exportar/guardar archivos en formato csv desde javascript, específicamente mediante una función que reciba los datos y los mande a descargar/guardar, para dar una idea del ambiente en el que me encuentro, estoy trabajando con smartGwt, GWT(Google Web ToolKit) y java, para ello utilizo eclipse (helios), dado que utilizo la versión gratis de smartGwt esta viene sin la función de Grid.exportData() por lo tanto me ha tocado buscar otro camino para exportar los datos de determinados grids, investigando me di cuenta que gracias a JSNI(JavaScript Native Interface creo...) puedo invocar funciones de javascript desde smartgwt, ya tengo la información en formato csv y tengo una función en javaScript que hace casi todo... lo malo es que no coloca un nombre por defecto ni le asigna la extencion que corresponde, siempre los guarda como algo asi "kfbhfglsd.part" , como hasta ahora toco javascript me encuentro perdido, abra alguna otra forma de hacerlo? o tal vez me falta algo en mi funcion?, quitando lo del nombre lo que de verdad me interesa es que lo guarde con la extencion que le corresponde, el nombre no importa si se queda asi, les dejo el codigo y espero sus respuestas, muchas gracias. Nota, esto funciona para Chrome y Firefox para IE no sirve

Código:


Código Javascript:
Ver original
  1. function exportar(data) {
  2.  
  3.   var uriContent = "data:application/csv," + encodeURIComponent(data);
  4.   var myWindow = window.open(uriContent, "Export CSV");
  5.   myWindow.focus();
  6. }