Você está offline; aguardando reconexão

Como usar o gráfico para gerar dinamicamente gráficos lado do servidor

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 244049
Sumário
Além de usando o Microsoft Office Chart Component Web como um controle COM (Component Object Model) hospedado em um formulário, é possível usar o componente da Web como um objeto não-visível, na memória. Este artigo ilustra como você pode usar o componente da Web de gráfico em um servidor para criar um gráfico representado como uma imagem GIF (Graphics Interchange Format). Você pode implementar a estratégia discutida neste artigo para gerar imagens de gráfico que podem ser usadas através da Internet ou em empresas com áreas de trabalho cliente heterogêneos.
Mais Informações
Com o gráfico Web Component, você pode criar gráficos usando dados de várias fontes, como matrizes, um bancos de dados, planilhas ou quaisquer fontes de dados personalizados. Depois que você cria um gráfico, você pode usar o ExportPicture método do componente gráfico para gerar uma imagem GIF desse gráfico.

Para fazer isso, você pode modificar o arquivo global.asa e criar uma página ASP com o código ilustrado nas etapas a seguir.

Etapas para criar projeto

  1. Inicie o Microsoft Visual InterDev.
  2. Crie um novo projeto de Web chamado ServerChart e clique no botão ' Avançar '.
  3. Tipo no servidor a ser usado para esta Web Project.
  4. Clique em Concluir para criar o projeto da Web.
  5. Direito seu projeto no servidor (normalmente é C:\Inetpub\wwwroot\ServerChart), selecione Propriedades e, em seguida, clique na guia segurança .
  6. Clique em permissões e adicione as seguintes permissões de diretório:
    IUSR_SERVERNAME: Ler, gravar, executar e excluir
    Criador: Ler, gravar, executar e excluir
  7. Clique em OK para definir as permissões.
  8. No projeto Visual InterDev, clique com o botão direito no arquivo global.asa e selecione Obter cópias de trabalho .
  9. Modificar o arquivo global.asa para conter o seguinte script:
    <SCRIPT LANGUAGE=VBScript RUNAT=Server>Sub Session_OnStart	' Create a FileSystemObject to provide files in the script	Set Session("FSO") = CreateObject("Scripting.FileSystemObject")		' Create a variable that has the number of files created in this session	Session("n") = 0		' Set timeout to be 1 minute	Session.Timeout = 1End SubSub Session_OnEnd	' Delete the files created in this session	Dim x	For x = 0 to Session("n")-1		Session("FSO").DeleteFile Session("sTempFile" & x), True	NextEnd Sub</SCRIPT>
  10. Clique no menu Project , selecione Add Item da Web e em seguida, selecione Active Server Page . Nomeie a página chart.asp .
  11. Modificar o script em chart.asp para conter o seguinte:
    <%@ language="vbscript" %><html><body><h1>Realtime CPU Utilization by Configurations</h1><FORM action="chart.asp" method=get name=frmChooseOrg><p> Select an Organization to see values for their machines: <SELECT name=sOrg><OPTION SELECTED value= 5>Org1</OPTION><OPTION value= 10>Org2</OPTION><OPTION value= 15>Org3</OPTION><OPTION value= 20>Org4</OPTION></SELECT><INPUT type="submit" value="Go"></p></FORM><%Dim oChart, c, Categories(5), Vals(5), i, sCaption, nData, nOrg' Get the input valuenData = Request.QueryString("sOrg")'When the page loads the first time, set ndata to 5if len(nData) = 0 then nData = 5' Generate random categories and values for the chart' These values can come from some existing data sourcefor i = 1 to 5	Categories(i) = "Machine" & CStr(i)	Vals(i) = nData * Rnd(100)next' Create a Chart ObjectSet oChart = CreateObject("OWC.Chart")Set c = oChart.Constants' Set the different parameters for the ChartSpaceoChart.Border.Color = c.chColorNone' Get Organization number and use it to set the CaptionnOrg = nData/5sCaption = "Current Utilizations for Org"sCaption = sCaption & CStr(nOrg)' Add a chart and set parameters for the chartoChart.Charts.AddoChart.Charts(0).Type = oChart.Constants.chChartTypeColumnClusteredoChart.Charts(0).SeriesCollection.AddoChart.Charts(0).SeriesCollection(0).Caption = sCaptionoChart.Charts(0).SeriesCollection(0).SetData c.chDimCategories, c.chDataLiteral, CategoriesoChart.Charts(0).SeriesCollection(0).SetData c.chDimValues, c.chDataLiteral, ValsoChart.Charts(0).HasLegend = TrueoChart.Charts(0).HasTitle = True' Get a temporary filename to save chart in that filesFname = Session("FSO").GetTempName & session.SessionID & ".gif"' Export the chart to the temporary fileoChart.ExportPicture server.MapPath(sFname), "gif", 600, 512' Create a link to the generated fileResponse.Write "<img src='" & sFname & "'>"' Store the file with its path in the session object for cleanupSession("sTempFile" & Session("n")) = Server.MapPath(sFname)' Increment the number of filesSession("n") = Session("n") + 1%></body></html>					
  12. Salve o projeto.
  13. Clique chart.asp no Explorador de projeto com o botão direito do mouse e selecione Exibir no navegador.
A página é exibida com um gráfico que contém as utilizações de CPU para vários computadores. Selecionando organizações diferentes, você pode exibir as utilizações diferentes.

Quando você cria vários gráficos baseados em diferentes conjuntos de dados, cada gráfico deve ser salvo como um arquivo GIF exclusivo. Neste exemplo, FileSystemObject da biblioteca de tempo de execução script gera um arquivo temporário para a imagem GIF. O arquivo é colocado na mesma pasta que a página ASP para que você pode usar o método MapPath do objeto Session para obter o local do arquivo temporário. O nome do arquivo é salvo como uma variável de sessão para que ela é excluída quando a sessão é encerrada.

Observe que o IIS executa a sub-rotina Session_OnEnd sempre que a sessão expirou. A sessão expira no caso o cliente não solicitou uma página dentro da duração de tempo limite, que é definida para um (1) minuto no início da sessão.

Observações adicionais

Atualmente, o filtro apenas disponível para o método ExportPicture é para imagens "GIF".

O método ExportPicture tem dois argumentos que permitem que você indicar as dimensões em pixels do gráfico gerado. No código de exemplo fornecido, as dimensões de largura e altura são embutidos. Em vez disso, você pode usar dimensões que especifica o cliente.

O OWC.Chart ProgID se aplica ao Office Web Components 9.0. Se você deseja usar versão 10 dos componentes, altere o ProgID de OWC.Chart OWC10.ChartSpace ou se você deseja usar a versão 11 dos componentes, altere o ProgID de OWC.Chart para OWC11.ChartSpace.

Problemas com o uso do lado do servidor

Você deve estar ciente que o Office 2000 Web Components não são criadas para uso do lado do servidor, e você pode encontrar problemas se você usar os componentes em um servidor com um alto número de conexões de usuários simultâneos. Muitos desse problema são abordados o Office XP Web Components e o Office 2003 Web Components, e você deve considerar usando o Office XP Web Components ou o Office 2003 Web Components para soluções do lado do servidor em larga escala.

Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
317316INFO: Limitações do Office 2000 Web Components quando usado no servidor
Referências
Programação do Microsoft Office Web Components por Dave Stearns ISBN: 0-7356-0794-X

Para obter informações adicionais sobre como usar o gráfico de componente da Web, consulte os seguintes artigos da Base de dados de Conhecimento:
240263Como criar um gráfico de combinação com o componente da Web de gráfico
235885Como usar o componente gráfico da Web do Office com VB
243192Como usar o VBScript para vincular um gráfico a um componente planilha
em tempo real do OWC

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 244049 - Última Revisão: 02/22/2007 01:27:26 - Revisão: 3.5

Microsoft Office 2003 Web Components, Microsoft Office XP Web Components, Microsoft Office Chart Component 9.0

  • kbmt kbhowto kbofficewebchart KB244049 KbMtpt
Comentários
/html>ument.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">