चार्टिंग चार्ट डायनेमिक रूप से जनरेट करने के लिए सर्वर-साइड का उपयोग कैसे करें


सारांश


Microsoft Office चार्ट वेब घटक घटक ऑब्जेक्ट मॉडल (COM) नियंत्रण प्रपत्र पर होस्ट किए गए के रूप में उपयोग के साथ ही, यह एक गैर-दृश्य, में-स्मृति ऑब्जेक्ट के रूप में चार्ट वेब घटक का उपयोग करने के लिए संभव है। यह आलेख कैसे आप चार्ट वेब घटक सर्वर पर कोई ग्राफ़िक्स इंटरचेंज फॉर्मेट (GIF) छवि के रूप में प्रस्तुत किया जाता एक चार्ट बनाने के लिए उपयोग कर सकते हैं है कि प्रकार है। आप रणनीति या एंटरप्राइज़ heterogeneous क्लाइंट डेस्कटॉप से इंटरनेट पर उपयोग किया जा सकता जो चार्ट छवि उत्पन्न करने के लिए इस आलेख में चर्चा लागू कर सकते हैं।

अधिक जानकारी


वेब चार्ट घटक के साथ, आप सरणियाँ जैसे विभिन्न स्रोतों, किसी डेटाबेस, स्प्रेडशीट, या कोई कस्टम डेटा स्रोतों से डेटा का उपयोग करते हुए चार्ट बना सकते हैं। कोई चार्ट बनाने के बाद, आप चार्ट घटक के लिए ExportPicture विधि को GIF छवि का जो चार्ट जनरेट करने के लिए उपयोग कर सकते हैं।

यह हासिल करने के लिए, आप global.asa फ़ाइल को संशोधित कर सकते हैं और illustrated निम्न चरणों में कोड के साथ एक ASP पेज बनाएँ।

प्रोजेक्ट बनाने के लिए चरण

  1. Microsoft Visual InterDev प्रारंभ करें।
  2. कहा जाता है एक नए वेब प्रोजेक्ट बनाएँ
    ServerChart और अगला ' बटन क्लिक करें।
  3. इस वेब प्रोजेक्ट के लिए उपयोग किए जाने वाले सर्वर में टाइप करें।
  4. वेब प्रोजेक्ट बनाने के लिए समाप्त क्लिक करें।
  5. अपने प्रोजेक्ट निर्देशिका (आमतौर पर यह C:\Inetpub\wwwroot\ServerChart है) सर्वर पर राइट-क्लिक करें, गुण का चयन करें, और उसके बाद सुरक्षा टैब क्लिक करें।
  6. अनुमतियाँपर क्लिक करें, और निर्देशिका के लिए निम्न अनुमतियाँ जोड़ें:
    IUSR_SERVERNAME: पढ़ने, लिखने, निष्पादित करें और हटाएँ
    निर्माता: पढ़ने, लिखने, निष्पादित करें और हटाएँ
  7. अनुमतियाँ सेट करने के लिए ठीक क्लिक करें।
  8. दृश्य 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 प्रोजेक्ट एक्स्प्लोरर में राइट-क्लिक करें और ब्राउज़र में दृश्य का चयन करें।
विभिन्न कंप्यूटरों के लिए CPU utilizations जिसमें किसी चार्ट के साथ पृष्ठ प्रकट होता है। विभिन्न संगठनों का चयन करके, आप विभिन्न utilizations देख सकते हैं।

यदि आप भिन्न सेट के डेटा पर आधारित एक से अधिक चार्ट बनाते हैं, तो प्रत्येक चार्ट एक अद्वितीय GIF फ़ाइल के रूप में सहेजा जाना चाहिए। इस नमूने में, स्क्रिप्टिंग रन-टाइम लायब्रेरी के FileSystemObject GIF छवि के लिए कोई अस्थायी फ़ाइल जनरेट करता है। अस्थायी फ़ाइल का स्थान प्राप्त करने के लिए आप MapPath विधि सत्र ऑब्जेक्ट का उपयोग कर सकते हैं ताकि फ़ाइल ASP पृष्ठ के रूप में एक ही फ़ोल्डर में रखा जाता है। जब सत्र समाप्त करता है, तो इसे हटाया गया है ताकि फ़ाइल का नाम एक सत्र चर के रूप में सहेजा जाता है।

सत्र समयबाह्य हो गया है, जब IIS Session_OnEnd सबरुटीन निष्पादित करता है कि ध्यान दें। क्लाइंट कोई पेज समयबाह्य अवधि जो एक (1) मिनट में सत्र की शुरुआत करने के लिए सेट है, के भीतर अनुरोध नहीं किया है, तो सत्र टाइम।

अतिरिक्त नोट्स

"GIF" छवियों के लिए वर्तमान में, केवल फ़िल्टर करने के लिए ExportPicture विधि उपलब्ध है।

ExportPicture के लिए विधि जनरेट किया गया चार्ट के पिक्सेल्स में आयाम को इंगित करने के लिए दो तर्क है। प्रदान किए गए नमूना कोड में, चौड़ाई और ऊँचाई आयामों हार्ड-कोडेड होते हैं। इसके बजाय, आप अपने क्लाइंट को निर्दिष्ट करता है जो आयाम कर सकते हैं।

OWC. Office वेब घटक 9.0 के लिए ProgID चार्ट पर लागू होता है। ProgID से OWC 10 घटकों के संस्करण का उपयोग करने के लिए चाहते हैं, तो परिवर्तित करें। चार्ट में OWC10. ChartSpace या 11 घटकों के संस्करण का उपयोग करने के लिए चाहते हैं, तो बदलें ProgID OWC से। OWC11 करने के लिए चार्ट। ChartSpace.

सर्वर-साइड का उपयोग के साथ समस्याएँ

आप ध्यान रखें कि Office 2000 वेब घटक सर्वर-साइड का उपयोग के लिए डिज़ाइन नहीं हैं, और समसामयिक उपयोगकर्ता कनेक्शन की एक उच्च संख्या के साथ किसी सर्वर पर आप घटकों का उपयोग करते हैं, तो आपको समस्याएँ आ हो सकता है होना चाहिए। इन समस्या के कई Office XP वेब घटक और Office 2003 वेब घटक में संबोधित किया है, और आप Office XP वेब घटक या Office 2003 वेब घटक के लिए सर्वर-साइड समाधान बड़े स्तर का उपयोग करने पर विचार करना चाहिए।


अतिरिक्त जानकारी के लिए, Microsoft नॉलेज़ बेस में आलेख देखने के लिए निम्न आलेख संख्या पर क्लिक करें:
317316 जानकारी: सर्वर-साइड का उपयोग Office 2000 वेब घटक जब की सीमाएँ

संदर्भ


Dave Stearns ISBN द्वारा Microsoft Office वेब घटक प्रोग्रामिंग: 0-7356-0794-X

चार्ट वेब घटक का उपयोग करने के बारे में अतिरिक्त जानकारी के लिए, निम्न नॉलेज बेस आलेख देखें:
240263 चार्ट वेब घटक के साथ संयोजन चार्ट बनाने के लिए कैसे
235885 Office वेब चार्ट घटक के साथ VB का उपयोग कैसे करें
243192 चार्ट स्प्रेडशीट घटक को बाइंड करने के लिए VBScript का उपयोग करने के लिए कैसे