none
Exportar en SandBox RRS feed

  • Pregunta

  • Saludos, 

    Espero me puedan ayudar con este problema, tengo en una grilla el resultado de un reporte, lo que me falta ahora es exportar esa grilla, esa data, a excel, el detalle viene en que el proyecto esta en sandbox, como podria yo exportar esa data... ?

    Gracias de antemano

    lunes, 16 de enero de 2012 12:24

Respuestas

  • Hola,

    Amigos, resolvi el problema usando javascript, el codigo es el siguiente:

    function exportToExcel() {

    var grid=document.getElementById("<%=gvResultado.ClientID%>");

    var oExcel = new ActiveXObject("Excel.Application");

    var oBook = oExcel.Workbooks.Add;

    var oSheet = oBook.Worksheets(1);

    for (var y = 0; y < grid.rows.length; y++)

    {

        for (var x = 0; x < grid.rows(y).cells.length; x++)

    {

    oSheet.Cells(y+1,x+1) =

    grid.rows(y).cells(x).innerText;

    }

    }

    oExcel.Visible = true;

    oExcel.UserControl = true;

    }

    </script>

    por ultimo llamo a la funcion desde el evento onClientClick del botón asp:

    OnClientClick="javascript:return exportToExcel()"

    Con esto solucione el problema de exportar una grilla a excel en modo SandBox .. =)

     

    Saludos

    martes, 17 de enero de 2012 0:36

Todas las respuestas

  • Hola,

    Pues tendrás que usar la API de Open XML como única opción para poder exportar a Excel...aún así, puede que te encuentres problemas debido a las limitaciones de las soluciones Sandbox en cuanto a que no se pueden usar todos los tipos .NET existentes.

    Saludos


    ------------------------------------------------------------
    Juan Carlos González Martín MVP de SharePoint Server
    Director revista CompartiMOSS: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx
    Blog: http://geeks.ms/blogs/ciin
    Twitter: @jcgm1978
    ------------------------------------------------------------
    lunes, 16 de enero de 2012 12:49
  • Hola, Juan Carlos, ya probe con OpenXML, y tal como tu dices, existen sentencias q no puedo usar dado que sandbox no me permite... crees que exista otra solucion.. ?.

     

    Gracias.

    lunes, 16 de enero de 2012 19:23
  • ¿y si pruebas a generar un CSV y hacer un Response.Write del resultado?

     


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin | MVP SharePoint Server
    lunes, 16 de enero de 2012 20:07
  • Saludos,

    Esa era otra opcion, a decir verdad, queria evitar crear un CSV, pero en vista que no hay otra alternativa, habra que crearlo, gracias... 

    lunes, 16 de enero de 2012 20:17
  • Hola,

    Pues creo que si lo haces en Sandbox solo tienes la opción que comenta Alberto...¿no puedes crear una webpart de tipo farm solution?

    Saludos


    ------------------------------------------------------------
    Juan Carlos González Martín MVP de SharePoint Server
    Director revista CompartiMOSS: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx
    Blog: http://geeks.ms/blogs/ciin
    Twitter: @jcgm1978
    ------------------------------------------------------------
    lunes, 16 de enero de 2012 20:32
  • Hola, 

    Lamentablemente, no, es un proyecto en el cual el cliente solicita, que sea en sandBox, por temas de seguridad y demás.

    Si no hay otra, caballero.

    Gracias.. :)

    lunes, 16 de enero de 2012 20:34
  • Hola, 

    Seria  una solucion crear un servivio en WCF y exportarlo desde ahi, si es asi, alguien tiene algun codigo que haga algo similar... ?

    Gracias de antemano..

    lunes, 16 de enero de 2012 20:46
  • Hola,

    El problema es que desde una solución Sandbox no puedes llamar a servicios.

    Un saludo


    ------------------------------------------------------------
    Juan Carlos González Martín MVP de SharePoint Server
    Director revista CompartiMOSS: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx
    Blog: http://geeks.ms/blogs/ciin
    Twitter: @jcgm1978
    ------------------------------------------------------------
    lunes, 16 de enero de 2012 22:03
  • Hola,

    Tienes muuuuucha razón, se me paso.

    Volveré a la opción de Alberto, generar un CSV.

    Gracias por todo.... =)

    Saludos

    lunes, 16 de enero de 2012 22:05
  • Hola,

    Amigos, resolvi el problema usando javascript, el codigo es el siguiente:

    function exportToExcel() {

    var grid=document.getElementById("<%=gvResultado.ClientID%>");

    var oExcel = new ActiveXObject("Excel.Application");

    var oBook = oExcel.Workbooks.Add;

    var oSheet = oBook.Worksheets(1);

    for (var y = 0; y < grid.rows.length; y++)

    {

        for (var x = 0; x < grid.rows(y).cells.length; x++)

    {

    oSheet.Cells(y+1,x+1) =

    grid.rows(y).cells(x).innerText;

    }

    }

    oExcel.Visible = true;

    oExcel.UserControl = true;

    }

    </script>

    por ultimo llamo a la funcion desde el evento onClientClick del botón asp:

    OnClientClick="javascript:return exportToExcel()"

    Con esto solucione el problema de exportar una grilla a excel en modo SandBox .. =)

     

    Saludos

    martes, 17 de enero de 2012 0:36