Archive

Posts Tagged ‘WebApplication’

Acessando e processando dados externos de planilhas via Excel Services Web Services usando uma WebApplication e SharePoint 2010 Client Object Model

October 17, 2010 1 comment

Olá! Smile

Overview:

Este post mostra como atualizar dados externos de planilhas no Excel Services em runtime, usando uma WebApplication e SharePoint 2010 Client Object Model.

No final deste post, encontre informações de como fazer o mesmo procedimento usando uma WebPart. Além disso, toda a explicação do motivo do código desenvolvido abaixo.

SOLUÇÃO:

Como o post relacionado abaixo explica o cenário de utilização do meu código, vamos direto ao ponto. Bom proveito! J

Code Snippet
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7.  
  8. using System.Web.Services.Protocols;
  9. using SampleExcelServiceApplication.ExcelService;
  10. using Microsoft.SharePoint.Client;
  11. using System.IO;
  12.  
  13. namespace SampleExcelServiceApplication
  14. {
  15.     public partial class _Default : System.Web.UI.Page
  16.     {
  17.         protected void Page_Load(object sender, EventArgs e)
  18.         {
  19.             ExcelService.ExcelService es = new ExcelService.ExcelService();
  20.  
  21.             string workbookpath = "http://notebook01/sites/bi/documents/Chart.xlsx";
  22.             Status[] outStatus;
  23.  
  24.             es.Credentials = System.Net.CredentialCache.DefaultCredentials;
  25.  
  26.             try
  27.             {
  28.                 string sessionid = es.OpenWorkbook(workbookpath, "en-US", "en-US", out outStatus);
  29.                                 
  30.                 es.Refresh(sessionid, "notebook01_sqlexpress SSAS Teste Eventos");
  31.  
  32.                 byte[] contents = es.GetWorkbook(sessionid, WorkbookType.FullWorkbook, out outStatus);
  33.  
  34.                 using (ClientContext clientContext = new ClientContext("http://notebook01/sites/bi"))
  35.                 {
  36.                     Microsoft.SharePoint.Client.File.SaveBinaryDirect(clientContext,"/sites/bi/Documents/Chart.xlsx",new MemoryStream(contents),true);
  37.                 }
  38.  
  39.                 es.CloseWorkbook(sessionid);
  40.             }
  41.             catch (Exception ex)
  42.             {
  43.                 Label lblmensagem = new Label();
  44.                 lblmensagem.Text = ex.ToString();
  45.                 this.Controls.Add(lblmensagem);
  46.             }
  47.         }
  48.     }
  49. }

 

Abraço!

Post relacionado: https://thiagottss.wordpress.com/2010/10/17/acessando-e-processando-dados-externos-de-planilhas-via-excel-services-web-services/

Advertisements