Sammendrag

I tillegg bruker diagramkomponenten for Microsoft Office Web som et Component Object Model (COM)-kontroll som er lagret i et skjema, er det mulig å bruke webkomponenten diagram som et objekt som ikke er synlige, i minnet. Denne artikkelen beskriver hvordan du kan bruke Web diagramkomponent på en server til å lage et diagram som er representert som et bilde Graphics Interchange Format (GIF). Du kan implementere strategier som er beskrevet i denne artikkelen for å generere diagrammet bilder som kan brukes over Internett eller i bedrifter med heterogene klientmaskiner.

Hvis du vil ha mer informasjon

Med diagramkomponenten Web, kan du opprette diagrammer ved hjelp av data fra ulike kilder, for eksempel matriser, en databaser, regneark eller et hvilket som helst egendefinert datakilder. Når du oppretter et diagram, kan du bruke ExportPicture-metoden for diagramkomponenten til å generere en GIF-bilde av diagrammet.Hvis du vil gjøre dette, kan du endre global.asa-filen og opprette en ASP-side med koden som er illustrert i følgende trinn.

Fremgangsmåte for å opprette prosjekt

  1. Start Microsoft Visual InterDev.

  2. Opprette en ny Web-prosjekt kaltServerChart og klikk Neste .

  3. Skriv inn i serveren som skal brukes for dette webprosjektet.

  4. Klikk Fullfør for å opprette Web-prosjektet.

  5. Høyreklikk i prosjektmappen på serveren (dette er vanligvis C:\Inetpub\wwwroot\ServerChart), velg Egenskaper og deretter kategorien Sikkerhet .

  6. Klikk på tillatelser, og Legg til følgende katalogtillatelser:

    IUSR_SERVERNAME: Lese, skrive, kjøre og sletteCreator: Lese, skrive, kjøre og slette

  7. Klikk OK for å angi tillatelser.

  8. Høyreklikk filen global.asa i prosjektet Visual InterDev, og velg Få arbeide kopi.

  9. Endre global.asa-filen skal inneholde følgende skript:

    <SCRIPT LANGUAGE=VBScript RUNAT=Server>Sub Session_OnStart' Create a FileSystemObject to provide files in the scriptSet Session("FSO") = CreateObject("Scripting.FileSystemObject")' Create a variable that has the number of files created in this sessionSession("n") = 0' Set timeout to be 1 minuteSession.Timeout = 1End SubSub Session_OnEnd' Delete the files created in this sessionDim xFor x = 0 to Session("n")-1Session("FSO").DeleteFile Session("sTempFile" & x), TrueNextEnd Sub</SCRIPT>
  10. Klikk på prosjekt -menyen, velger Legg til Web-element, og velg deretter Active Server Page. Navnet på siden chart.asp.

  11. Endre skriptet i chart.asp skal inneholde følgende:

    <%@ 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 5Categories(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. Lagre prosjektet.

  13. Høyreklikk chart.asp i Project Explorer og velg Vis i webleser.

Siden vises med et diagram som inneholder CPU-bruk for forskjellige datamaskiner. Ved å velge forskjellige organisasjoner, kan du vise annen bruk.Når du oppretter flere diagrammer som er basert på ulike sett med data, må hvert diagram, lagres som en unik GIF-fil. I dette eksemplet genererer for kjøring av skript biblioteket FileSystemObject en midlertidig fil for GIF-bilde. Filen er plassert i samme mappe som ASP-siden slik at du kan bruke MapPath-metoden i Session-objektet til å få plasseringen til den midlertidige filen. Filnavnet er lagret som et session-variabler slik at den blir slettet når økten slutter.Legg merke til at IIS kjører Underrutinen Session_OnEnd når økten ble tidsavbrutt. Økten blir tidsavbrutt hvis klienten ikke har bedt om en side i tidsavbruddsvarighet, som er satt til én (1) minutt i begynnelsen av økten.

Flere merknader

For øyeblikket er det eneste filteret som er tilgjengelige for ExportPicture-metoden for "GIF"-bilder.ExportPicture-metoden har to argumenter som gjør det mulig å angi dimensjonene i piksler for genererte diagrammet. I eksempelkoden du finner, er hardkodet dimensjonene bredde og høyde. I stedet kan du bruke dimensjoner som klienten angir.OWC. Diagrammet ProgID gjelder for Office Web Components 9.0. Hvis du vil bruke versjon 10 av komponentene, kan du endre ProgID fra OWC. Diagrammet for å OWC10. ChartSpace, eller hvis du vil bruke versjon 11 av komponentene, kan du endre ProgID fra OWC. Diagrammet for å OWC11. ChartSpace.

Problemer med bruk av Server-Side

Du bør være oppmerksom på at Office 2000 Web Components ikke er utformet for bruk på serversiden, og det kan oppstå problemer hvis du bruker komponentene på en server med et høyt antall samtidige brukertilkoblinger. Mange av disse problemet er løst i Office XP Web Components og Office 2003 Web Components, og du bør vurdere å bruke Office XP Web Components eller Office 2003 Web Components for omfattende løsninger for serversiden.Hvis du vil ha mer informasjon, kan du klikke følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:

INFO: begrensninger for Office 2000 Web Components ved brukes inkluderinger for serversiden

Referanser

Programmering av Microsoft Office Web Components av Dave Stearns ISBN: 0-7356-0794-XHvis du vil ha mer informasjon om hvordan du bruker diagramkomponenten for Web, kan du se følgende Knowledge Base-artikler:

hvordan du oppretter et kombinasjonsdiagram med webkomponenten for diagram

hvordan du bruker Office-diagramkomponent for Web med VB

hvordan du bruker VBScript å binde et diagram til en regnearkkomponent

Trenger du mer hjelp?

Vil du ha flere alternativer?

Utforsk abonnementsfordeler, bla gjennom opplæringskurs, finn ut hvordan du sikrer enheten og mer.