Обзор

С помощью веб-компонент диаграмм Microsoft Office в качестве находящегося в форме элемента управления модели компонентных объектов (COM), можно использовать веб-компонент диаграмм как объект не виден, в памяти. В этой статье показано, как использовать веб-компонент диаграмм на сервере для создания диаграммы в виде изображения формата GIF (Graphics Interchange). Можно реализовать стратегию, рассматриваемые в данной статье, для создания изображения диаграммы, которые могут быть использованы в Интернете или на предприятиях с рабочим столам гетерогенных клиента.

Дополнительные сведения

С веб-компонент диаграмм позволяет создавать диаграммы, используя данные из различных источников, таких как массивы, баз данных, электронных таблиц или любых пользовательских источников данных. После создания диаграммы можно использовать метод ExportPicture компонента диаграмм для создания изображения GIF, диаграммы.

Для этого можно изменять файл global.asa и создавать страницы ASP с помощью кода, приведенных ниже.

Шаги по созданию проекта

  1. Запустите Microsoft Visual InterDev.

  2. Создание нового веб-проекта, который называется
    ServerChart и нажмите кнопку Далее .

  3. Введите имя сервера, который будет использоваться для этого веб-проекта.

  4. Нажмите кнопку Готово , чтобы создать веб-проект.

  5. Щелкните правой кнопкой мыши папку проекта на сервере (обычно это C:\Inetpub\wwwroot\ServerChart), выберите команду Свойства и откройте вкладку Безопасность .

  6. Выберите команду разрешенияи добавьте следующие разрешения для каталогов:

    IUSR_SERVERNAME: Чтение, запись, выполнение и удаление
    Создатель: Читать, писать, выполнение и удаление

  7. Нажмите кнопку ОК , чтобы задать разрешения.

  8. В проекте Visual InterDev щелкните правой кнопкой мыши файл global.asa и выберите Получить копирования.

  9. Измените файл global.asa содержит следующий сценарий:

    <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 = 1
    End Sub

    Sub 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
    Next
    End Sub
    </SCRIPT>
  10. Выберите в меню проект , выберите команду Добавить веб-элементи выберите Активной серверной страницы. Имя страницы chart.asp.

  11. Изменение сценария в chart.asp должен содержать следующее:

    <%@ 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 value
    nData = Request.QueryString("sOrg")

    'When the page loads the first time, set ndata to 5
    if len(nData) = 0 then nData = 5

    ' Generate random categories and values for the chart
    ' These values can come from some existing data source
    for i = 1 to 5
    Categories(i) = "Machine" & CStr(i)
    Vals(i) = nData * Rnd(100)
    next

    ' Create a Chart Object
    Set oChart = CreateObject("OWC.Chart")
    Set c = oChart.Constants

    ' Set the different parameters for the ChartSpace
    oChart.Border.Color = c.chColorNone

    ' Get Organization number and use it to set the Caption
    nOrg = nData/5
    sCaption = "Current Utilizations for Org"
    sCaption = sCaption & CStr(nOrg)

    ' Add a chart and set parameters for the chart
    oChart.Charts.Add
    oChart.Charts(0).Type = oChart.Constants.chChartTypeColumnClustered
    oChart.Charts(0).SeriesCollection.Add
    oChart.Charts(0).SeriesCollection(0).Caption = sCaption
    oChart.Charts(0).SeriesCollection(0).SetData c.chDimCategories, c.chDataLiteral, Categories
    oChart.Charts(0).SeriesCollection(0).SetData c.chDimValues, c.chDataLiteral, Vals
    oChart.Charts(0).HasLegend = True
    oChart.Charts(0).HasTitle = True

    ' Get a temporary filename to save chart in that file
    sFname = Session("FSO").GetTempName & session.SessionID & ".gif"

    ' Export the chart to the temporary file
    oChart.ExportPicture server.MapPath(sFname), "gif", 600, 512

    ' Create a link to the generated file
    Response.Write "<img src='" & sFname & "'>"

    ' Store the file with its path in the session object for cleanup
    Session("sTempFile" & Session("n")) = Server.MapPath(sFname)

    ' Increment the number of files
    Session("n") = Session("n") + 1

    %>

    </body>
    </html>
  12. Сохраните проект.

  13. Щелкните правой кнопкой мыши chart.asp в Обозревателе проектов и выберите просмотреть в обозревателе.

Отобразится страница с диаграммы, содержащей загрузки ЦП для различных компьютеров. Путем выбора различных организаций, можно просмотреть различные загрузки.

При создании нескольких диаграммах, основанных на различные наборы данных, каждая диаграмма должны сохраняться как уникальный файл GIF. В этом примере FileSystemObject библиотеки времени выполнения сценариев создает временный файл для GIF-изображения. Этот файл помещается в той же папке, как ASP-страницы таким образом, чтобы получить расположение временного файла можно использовать метод MapPath объекта сеанса. Имя файла сохраняется в переменной сеанса таким образом, чтобы он удаляется при завершении сеанса.

Обратите внимание, что IIS выполняет подпрограмму Session_OnEnd всякий раз, когда истекло время ожидания сеанса. Превышено время ожидания, если клиент не запросил страницу внутри время ожидания равным единице (1) минуты в начале сеанса.

Дополнительные замечания

В настоящее время только фильтра для метода ExportPicture является для изображений «GIF».

Метод ExportPicture имеет два аргумента, которые позволяют указать размеры в пикселах, созданной диаграммы. В примере кода предоставляется жестко заданы измерения ширины и высоты. Вместо этого можно использовать измерения, которые клиент указывает.

OWC. ProgID диаграммы применяется к версии 9.0 веб-компоненты Office. Если вы хотите использовать версии 10 компонентов, измените код ProgID из веб-компонентов Office. Диаграмма на OWC10. Диаграмм или если вы хотите использовать версии 11 компонентов, измените код ProgID из веб-компонентов Office. Диаграммы, чтобы OWC11. Диаграмм.

Проблемы использования на стороне сервера

Следует иметь в виду, что веб-компоненты Office 2000 не предназначены для использования на стороне сервера, и могут возникнуть проблемы при использовании компонентов на сервере, большое число одновременных пользовательских соединений. Многие из этих проблем рассматриваются в веб-компонентах Microsoft Office XP и веб-компоненты Microsoft Office 2003, и следует рассмотреть возможность использования веб-компонентов Office XP или веб-компонентов Office 2003 для крупных серверных решений.


Для получения дополнительных сведений щелкните номер статьи базы знаний Майкрософт ниже:

317316 информация: ограничения веб компонентов Office 2000 When используется серверный

Ссылки

Программирование веб-компоненты Microsoft Office, Дэйв Stearns ISBN: 0-7356-0794-X

Дополнительные сведения об использовании веб-компонент диаграмм обратитесь к следующим статьям базы знаний Майкрософт:

240263 как веб-компонент диаграмм для создания комбинированной диаграммы

Как использовать веб-компонент диаграмм Microsoft Office с VB 235885

Как использовать VBScript для привязки диаграммы к электронной таблицы 243192

Нужна дополнительная помощь?

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединение к программе предварительной оценки Майкрософт

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?

Что повлияло на вашу оценку?

Добавите что-нибудь? Это необязательно

Спасибо за ваш отзыв!

×