¡¡¡¡Òý:Web³ÌÐò¿ª·¢ÖУ¬¾­³£ÐèÒª´ÓÊý¾Ý¿â±íÎļþÖÐÌáÈ¡Êý¾Ý£¬²¢¶Ô´óÅúÁ¿µÄÊý¾Ý½øÐзÖÎö±È½Ï£¬´Ëʱ×î³£ÓÃÒ²ÊÇ×îÖ±¹ÛÃ÷Á˵ıíÏÖ·½·¨Äª¹ýÓÚ»æÖÆÍ¼±í¡£

¡¡¡¡ASPÉó¤·þÎñÆ÷¶ËµÄWeb±à³Ì£¬²Ù×÷ºǫ́Êý¾Ý¿â¸üÊÇËüµÄÇ¿Ïî¡£µ«ÊÇÓÃASPÖÆ×÷ʵʱÊý¾Ý¿âͼ±íÓеãÀ§ÄÑ£¬ÒòΪASP±¾Éí²¢²»Ö§³Öͼ±í¹¦ÄÜ£¬Ö»ÄܽèÖúµÚÈý·½¿Ø¼þ½øÐпª·¢£¬ÈçVBµÄMSChart ¿Ø¼þ¡£¶øÎ¢ÈíÍÆ³öµÄʵʱÊý¾Ý¿âͼ±íÖÆ×÷×é¼þ¡ª¡ª O W C(Microsoft Office Web Components)£¬ÎªÔÚWebÖлæÖÆÍ¼ÐÎÌṩÁËÁé»îµÄͬʱҲÊÇ×î»ù±¾µÄ»úÖÆ¡£Í¨¹ýÔÚASPÒ³ÃæÖе÷ÓÃOWC£¬ÎÒÃÇ¿ÉÒÔÇáËɵػæÖƳö¸÷ÖÖÀàÐ͵Äʵʱͼ±í¡£

¡¡¡¡±¾ÎÄͬʱ½éÉÜÁËÒ»ÖÖ·½·¨£¬¾ÍÊǽ«ÔÚASPÖÐÉú³ÉµÄͼ±íת»»³ÉͼƬÎļþ±£´æÔÚ·þÎñÆ÷ÉÏ£¬ÕâÑùÓû§×îÖÕ¿´µ½µÄÊÇGIFͼƬ¸ñʽµÄͼ±í£¬¿É±ÜÃâÖ±½ÓÊä³ö¶¯Ì¬Í¼±íµ½¿Í»§¶ËʱÓпÉÄÜ´øÀ´µÄһϵÁÐÎÊÌ⡣ͬʱ£¬±¾ÎÄ»¹½éÉÜÁËÒ»ÖÖ¼òµ¥¶øÑ¸ËÙµØÒÆ×ß¹ýÆÚGIF ͼƬµÄ·½·¨¡£

¡¡¡¡ÏÂÃæÎÒÃÇ»áÓÃÒ»¸ö¾ßÌåµÄʵÀýÀ´ËµÃ÷ÒÔÉϵÄÄÚÈÝ¡£

¡¡¡¡³ÌÐòµÄ²âÊÔ»·¾³Îª£ºWindows 2000Server +IIS5.0+Access+IE5.5ÖУ¬ÒªÔËÐÐÏÂÃæµÄASP ³ÌÐò£¬Ç뽫ÏÂÃæµÄ´úÂëCopy£¬±£´æµ½ÄãµÄÒ»¸öÐéÄâĿ¼ÖУ¬ÔÚÕâ¸öÐéÄâĿ¼Öн¨Á¢Ò»¸ö×ÓĿ¼tmp(Äã¿ÉÄÜÐ޸ĴúÂëÖеÄ·¾¶ÒÔ·ûºÏ×Ô¼ºµÄ·¾¶)£¬ÔÚIISÖÐÉèÖÃreadȨÏÞ¼´¿É£¬×¢ÒâÔÚWindows 2000 Server ÉÏÄã±ØÐëÉèÖôËtmpĿ¼¶ÔIUSR_servernameÓû§ÖÁÉÙÓÐChange µÄȨÏÞ¡£

¡¡¡¡¢±OWCÖ§³Ö½ü50 ÖÖͼ±íÀàÐÍ£¬°üÀ¨ÇúÏßͼ¡¢ÕÛÏßͼ¡¢Öù״ͼ¡¢Ãæ»ýͼ¡¢À×´ïͼµÈ£¬²¢¸øÖ¸¶¨ÏÔʾͼ±íÊÇ·ñ´øÊý¾Ýµã¡£

¡¡¡¡¢² ¿ÉÒÔÁé»îÉèÖÃͼ±íµÄ¸÷¸öÔªËØ£¬°üÀ¨ÉèÖÃͼ±í±êÌâ¡¢×ó±ê×¢¡¢Ï±ê×¢¡¢Í¼Àý¼°Êä³öͼƬµÄ´óСµÈ£»²¢¿É¶ÔËùÓÐÏÔʾµÄÎÄ×ÖÖ¸¶¨×ÖÌå¡¢×ֺš¢ÑÕÉ«ºÍ×ÖÐΡ£

¡¡¡¡¢³Í¬Ò»ÕÅͼ±íÖÐÏÔʾ2 ÌõÒÔÉϵÄÇúÏߣ¬ÊµÏÖÊý¾Ý¶Ô±ÈÏÔʾ¡£

¡¡¡¡¾¡¹ÜOWCµÄÏà¹ØÎļþºÜÁãÉ¢£¬µ«Êǰ²×°¹ý³ÌºÜ¼òµ¥¡£ÎÒÃÇÐèÒªÒ»¸öÕý°æÊÚȨµÄOffice 2000£¬È»ºóÔÚWeb·þÎñÆ÷ÉÏÔËÐÐsetup³ÌÐò¡£Ñ¡Ôñ¶¨Öư²×°£¬ÔÚ¹¤¾ß±êÌâÏ£¬Ö»Ñ¡ÖÐWeb×é¼þÑ¡Ïî¡£µ±È»£¬ÎÒÃÇÒ²¿ÉÒÔÔÚWeb·þÎñÆ÷Éϰ²×°Office 2000µÄÍêÕû°æ±¾£¬ÆäÖÐ×ÔȻҲ¾Í°üº¬ÁËWeb×é¼þ¡£½Ó×Å£¬Setup³ÌÐò˳ÐòµØÍê³ÉÆäËü¹¤×÷£¬°üÀ¨×é¼þ×¢²á¡£

¡¡¡¡OWCµÄÖÆÍ¼²Ù×÷ÊÇÔÚÒ»¸öͼ±í¿Õ¼ä½øÐеġ£Ò»¸öͼ±í¿Õ¼ä¿ÉÒÔ°üº¬Ò»¸ö»ò¶à¸öͼ±í£¬Ã¿¸öͼ±í¶¼¿ÉÄܰüº¬Ò»¸ö»ò¶à¸öÊýÁУ¬Ã¿¸öÊýÁж¼¿ÉÒÔ°üº¬Ò»¸ö»ò¶à¸öÊý¾Ýµã¡£¸ù¾ÝÕâ¸öÔ­Àí£¬Ê×ÏÈ´´½¨Ò»¸öͼ±í¿Õ¼ä¶ÔÏó£¬È»ºóÓÃËüµÄAdd ·½·¨Ïòͼ±í¿Õ¼äµÄͼ±í¼¯ºÏÖÐÔö¼ÓÒ»¸öͼ±í¡£½øÐÐ×é¼þµ÷ÓÃʱ£¬ÔÚASP ÎļþÖмÓÈëÈçÏ´úÂë¼´¿É£º

¡¡¡¡s e t c h a r t = S e r v e r .CreateObject("OWC.Chart")

¡¡¡¡chart.clear

¡¡¡¡set ochart=chart.Charts.Add

¡¡¡¡set oconst = chart.Constants

¡¡¡¡×îºóÒ»ÐдúÂëµÄÄ¿µÄÊÇΪÁËÒýÓ÷½±ãÆð¼û£ºÍ¼±í¿Õ¼äÓÐÒ»¸öConstantsÊôÐÔ£¬ÆäÖаüº¬ËùÓÐÏà¹ØÍ¼±íº¯ÊýÖÐʹÓõÄÁоٳ£Êý£»Ã¿´ÎÏëÒªÒýÓÃÒ»¸ö³£Êýʱ£¬¾Í¿ÉÒÔ¼üÈëo c o n s t ¶ø²»ÊÇo b j C h a r t S p a c e .Constants£¬ÕâÑùЧÂÊ»á¸ü¸ß£¬ÖÁÉÙ´Óʱ¼äÉϽ²ÊÇÕâÑù¡£¹ØÓÚ³£ÊýµÄÍêÕûÃèÊö£¬ÎÒÃǽáºÏÏÂÃæÍ¼±íÔªËØÒ»Æð½éÉÜ¡£

¡¡¡¡Í¼±í±êÌâÃèÊöͼ±íµÄ±êÌâ(ͼ1)¡£±¾±êÌâ¿ÉÒÔλÓÚͼ±íµÄÉÏ·½¡¢Ï·½¡¢×ó·½»òÓÒ·½¡£

¡¡¡¡ASP

¡¡¡¡oChart.HasTitle=true (Ö¸¶¨ÊÇ·ñÏÔʾͼ±í±êÌâ)

¡¡¡¡oChart.Title.Caption=¡°Ô¤¼ÆÓëʵ¼ÊÏúÊ۶ (Ö¸¶¨ÏÔʾµÄÄÚÈÝ)

¡¡¡¡oChart.Title..Position =¡°Center¡±(Ö¸¶¨Î»ÓÚͼ±íµÄλÖÃ)

¡¡¡¡set fnt=ochart.title.font

¡¡¡¡fnt.name=¡°ºÚÌ塱(Ö¸¶¨Í¼±í±êÌâµÄ×ÖÌå)

¡¡¡¡fnt.size=¡°10¡±(Ö¸¶¨Í¼±í±êÌâµÄ×ÖºÅ)

¡¡¡¡fnt.color=¡°#000000¡±(Ö¸¶¨Í¼±í±êÌâµÄÑÕÉ«)

¡¡¡¡fnt.bold=true(Ö¸¶¨Í¼±í±êÌâµÄ×ÖÐΡª¡ª¼Ó´Ö)

¡¡¡¡fnt.italic=true(Ö¸¶¨Í¼±í±êÌâµÄ×ÖÐΡª¡ªÐ±Ìå)

¡¡¡¡ÊýÖµ(Y)Öá±êÌâÊÇÓÃÓÚÃèÊöÊýÖµÖá¶ÈÁ¿ÄÚÈݵıêÌâ¡£

¡¡¡¡s e t a x = o c h a r t . A x e s ( o c o n s t .chCategoryAxis)

¡¡¡¡ax.hastitle=true (ÏÔʾÊýÖµÖá±êÌâ)

¡¡¡¡ax.Title.Caption= ¡°ÏúÊÛ¶î(µ¥Î»£º°ÙÍò)¡±(ÉèÖÃÊýÖµÖá±êÌâµÄÄÚÈÝ)

¡¡¡¡set fnt=ax.title.font (ÒÔÏÂΪÉèÖÃÊýÖµÖá±êÌâµÄ×ÖÌå¡¢×ֺš¢ÑÕÉ«¡¢×ÖÐÎ)

¡¡¡¡fnt.name=¡°ºÚÌ塱

¡¡¡¡fnt.size=¡°10¡±

¡¡¡¡fnt.color=¡°#000000¡±

¡¡¡¡fnt.bold=true

¡¡¡¡fnt.italic=true

¡¡¡¡ÊýÖµ(Y)Öá±êÖ¾Ò²³ÆÎª¿Ì¶ÈÏß±êÖ¾¡£ÕâЩ±êÖ¾ÃèÊöÁËÊýÖµÖáÉϵĶÈÁ¿Öµ¡£

¡¡¡¡ax.MajorTickMarks = oconst.chTickMarkNone(²»ÏÔʾÊýÖµÖáÖ÷Òª¿Ì¶ÈÏß)

¡¡¡¡ax.MajorGridlines.Line.Color ="white" (ÉèÖÃÖ¸¶¨×ø±êÖáÉÏÖ÷Íø¸ñÏßµÄÑÕÉ«ºÍÏß¿í)

¡¡¡¡ax.MajorGridlines.Line.Weight = 5

¡¡¡¡·ÖÀà(X)Öá±êÌâËüÊÇÓÃÓÚÃèÊö·ÖÀàÖá»æÖÆÄÚÈݵıêÌâ¡£

¡¡¡¡s e t a x = o c h a r t . A x e s ( o c o n s t .chAxisPositionBottom)

¡¡¡¡ax.hastitle=true(ÏÔʾ·ÖÀàÖá±êÌâ)

¡¡¡¡ax.Title.Caption= ¡°¼¾¶È¡±(ÉèÖ÷ÖÀàÖá±êÌâµÄÄÚÈÝ)

¡¡¡¡set fnt=ax.title.font(ÒÔÏÂΪÉèÖ÷ÖÀàÖá±êÌâµÄ×ÖÌå¡¢×ֺš¢ÑÕÉ«¡¢×ÖÐÎ)

¡¡¡¡fnt.name=¡°ºÚÌ塱

¡¡¡¡fnt.size=¡°10¡±

¡¡¡¡fnt.color=¡°#000000¡±

¡¡¡¡fnt.bold=true

¡¡¡¡fnt.italic=true

¡¡¡¡·ÖÀà(X)±êÖ¾Ò²³ÆÎª¿Ì¶ÈÏß±êÖ¾¡£ÕâЩ±êÖ¾ÏÔʾÁË·ÖÀàÖáÉϵķÖÀàÃû³Æ¡£·ÖÀàÊÇÓÉͼ±íÖÐÿ¸öÊý¾ÝϵÁеÄÒ»¸öÊý¾Ýµã¹¹³ÉµÄÒ»×éÏà¹ØÊý¾Ýµã¡£

¡¡¡¡a x . P o s i t i o n = o c o n s t .chAxisPositionBottom (Ö¸¶¨·ÖÀà±êÖ¾µÄÏÔʾλÖ㬶ÔÓÐЩͼ±íÏÔʾÀàÐÍ£¬¸ÃÉ趨²»Æð×÷Óá£Ö¸¶¨Í¼±íÏÔʾÀàÐÍΪÕÛÏßÐÍʱ¿É¿´µ½É趨µÄЧ¹û)

¡¡¡¡·ÖÀà±êÖ¾ÏÔʾÄÚÈݵÄÉèÖüû¡°Êý¾Ý±êÖ¾¡±¡£

¡¡¡¡Í¼ÀýΪͼ±íÖÐÊý¾ÝϵÁлò·ÖÀàÖ¸¶¨µÄͼ°¸»òÑÕÉ«±êʾ¡£

¡¡¡¡ochart.HasLegend=True(ÏÔʾͼÀý)

¡¡¡¡oChart.Legend.Position = oconst.

¡¡¡¡chLegendPositionLeft (ÉèÖÃͼÀýµÄλÖÃÔÚ×ó±ß£¬Î»ÖÿÉÐÞ¸Ä)

¡¡¡¡ÏµÁÐÃû³ÆÊÇÒ»¸öÃû³Æ£¬ÓÃÓÚÃèÊö¹¹³ÉÒ»¸öÊý¾ÝϵÁеÄÒ»×éÏà¹ØÊý¾Ýµã¡£ÏµÁÐÃû³ÆÏÔʾÔÚͼÀýÏî±êʶÅÔµÄͼÀýÖС£ÔÚÇ°ÃæµÄͼ±íʾÀýÖУ¬¡°Ô¤¼Æ¡±ºÍ¡°Êµ¼Ê¡±¶¼ÊǶÔÓ¦ÓÚͼ±íÖÐÊý¾Ý±ê¼ÇµÄϵÁÐÃû³Æ¡£

¡¡¡¡set fnt=oChart.Legend.Font (ÒÔÏÂΪÉèÖÃϵÁÐÃû³ÆµÄ×ÖÌå¡¢×ֺš¢ÑÕÉ«¡¢×ÖÐÎ)

¡¡¡¡fnt.name=¡°ºÚÌ塱

¡¡¡¡fnt.size=¡°10¡±

¡¡¡¡fnt.color=¡°#000000¡±

¡¡¡¡fnt.bold=true

¡¡¡¡fnt.italic=true

¡¡¡¡Êý¾Ý±êÖ¾ËüÊÇÓÃÓÚÌṩÓйØÊý¾Ý±ê¼Ç¸½¼ÓÐÅÏ¢µÄ±êÖ¾£¬¶øÆäÖеÄÊý¾Ý±ê¼ÇÔò´ú±íµ¥¸öÊý¾Ýµã»òÖµ¡£¶ÔÓÚ²»Í¬µÄͼ±íÀàÐÍ£¬Êý¾Ý±êÖ¾¿ÉÒÔÏÔʾֵ¡¢Êý¾ÝϵÁлò·ÖÀàµÄÃû³Æ¡¢°Ù·Ö±È£¬»òÕßÏÔʾÕâЩÏîµÄ×éºÏ¡£

¡¡¡¡set oseries(i)=oChart.SeriesCollection.add ' Éú³ÉÒ»Ìõseries ÇúÏß

¡¡¡¡with oseries(i)

¡¡¡¡.DataLabelsCollection.Add(ÔÚÖ¸¶¨ÏµÁÐÖÐÌí¼ÓÊý¾Ý±êÖ¾)

¡¡¡¡.caption=¡°XXXX¡±(ÉèÖ÷ÖÀà±êÖ¾ÏÔʾµÄ¾ßÌåÄÚÈÝ)

¡¡¡¡.SetData oconst.chDimCategories,oconst.chDataLiteral,XXX (ÉèÖÃXÖáµÄÊý¾ÝÖµ)

¡¡¡¡.SetData oconst.chDimValues,oconst.chDataLiteral,XXX(ÉèÖÃY ÖáµÄÊý¾ÝÖµ)

¡¡¡¡.type=0(ÉèÖÃͼ±íÏÔʾµÄÀàÐÍ£¬0 ±íʾÆÕͨÖùÐÎͼ)

¡¡¡¡end with

¡¡¡¡¶ÔÕÕͼƬ£¬ÎÒÃÇ¿ÉÒÔÖªµÀ£¬X ÖáΪÈÕÆÚ(¼¾¶È)£¬YÖáΪÏúÊ۶»æÍ¼ÇøÎª¾ßÌåµÄÏúÊÛ¶îÊý¾Ý¡£

¡¡¡¡OWCÖ§³ÖÔÚͬһÕÅͼ±íÖÐÏÔʾÁ½ÌõÒÔÉϵÄÇúÏß(»òÁ½¸ö²»Í¬ÑÕÉ«µÄÖù×Ó£¬ÈçÉÏͼËùʾµÄÔ¤¼ÆÓëʵ¼Ê)¡£Òò´Ë£¬ÒªÉú³ÉÎÒÃÇËù¿´µ½µÄͼƬ£¬Ö»ÐèÏÈÉú³ÉÒ»Ìõseries ÇúÏß(¼´ÔÚ»æÍ¼ÇøÖÐÏÈ»æ³öÔ¤¼ÆµÄÏúÊÛ¶îͼ±í)£¬È»ºóÔÙÌí¼ÓÒ»ÌõseriesÇúÏß(¼´ÔÚ»æÍ¼ÇøÖлæ³öʵ¼ÊµÄÏúÊÛ¶îͼ±í)¾ÍÐÐÁË

¡¡¡¡Ïȶ¨Òå¼°ÉèÖòÎÊý

¡¡¡¡dim strChartAbsPath

¡¡¡¡dim strChartRelPath

¡¡¡¡strChartAbsPath = Server.MapPath("temp")

¡¡¡¡strChartRelPath = "temp"

¡¡¡¡ÒÔÏÂÊÇÉú³É¡¢É¾³ýͼƬµÄº¯Êý

¡¡¡¡Function ExportChartToGIF(objCSpace, strAbsFilePath, strRelFilePath)

¡¡¡¡Dim strFileName

¡¡¡¡Randomize

¡¡¡¡strFileName = Timer & Rnd & ".gif"

¡¡¡¡o b j C S p a c e . E x p o r t P i c t u r estrAbsFilePath & "/" & strFileName, "gif",300(ͼƬ¸ß¶È), 500(ͼƬ¿í¶È£¬ÒÔÉÏÁ½Öµ¾ù¿ÉÓɳÌÐò¶¯Ì¬ÉèÖÃ))

¡¡¡¡ExportChartToGIF = strRelFilePath &"/" & strFileName

¡¡¡¡End Function

¡¡¡¡Function CleanUpGIF(GIFpath)

¡¡¡¡Dim objFS

¡¡¡¡Dim objFolder

¡¡¡¡Dim gif

¡¡¡¡set objFS = Server.CreateObject("Scripting.FileSystemObject")

¡¡¡¡set objFolder = objFS.GetFolder(GIFpath)

¡¡¡¡for each gif in objFolder.Files

¡¡¡¡if instr(gif.Name, ".gif") > 0

¡¡¡¡a n d D a t e D i f f ( " d " £¬g i f .DateLastModified, now) > 5 (Èç¹ûͼƬÉú³ÉµÄʱ¼äÒѳ¬¹ý5 Ì죬Ôòɾ³ýËü) then

¡¡¡¡objFS.DeleteFile GIFpath & "/" &gif.Name, True

¡¡¡¡end if

¡¡¡¡i=i+1

¡¡¡¡next

¡¡¡¡set objFolder = nothing

¡¡¡¡set objFS = nothing

¡¡¡¡End Function

¡¡¡¡ÒÔÏÂÊǵ÷ÓôúÂë

¡¡¡¡strChartFile = ExportChartToGIF(chart, strChartAbsPath, strChartRelPath)

¡¡¡¡Response.Write "<p align='center'><IMG SRC=""" & strChartFile & """>" &"</P>"

¡¡¡¡⋯⋯

¡¡¡¡CleanUpGIF(strChartAbsPath)

¡¡¡¡⋯⋯

¡¡¡¡ËäÈ»ÓÃOWC Éú³ÉµÄͼ±í¹¦ÄÜÆëÈ«£¬½çÃæÃÀ¹Û£¬µ«ËüÒ²´æÔÚ×Ų»ÉÙȱÏÝ¡£

¡¡¡¡Ê×ÏÈ£¬OWCÖ»Ö§³ÖRecordSetÊý¾Ý¼¯£¬²»Ö§³ÖDataSet Êý¾Ý¼¯£¬Òò´ËÔÚ¼ìË÷ʱ²»ÄÜʹÓÃsqlCommand¡¢sqlDataAdapter µÈ¶ÔÏó£¬Ö»ÄÜʹÓÃRecordSet¶ÔÏó½øÐмìË÷¡£

¡¡¡¡Æä´Î£¬ÓÉÓÚ²»Ö§³ÖDataSetÊý¾Ý¼¯£¬ÕâÑùÎÒÃǾÍÎÞ·¨ÔÚÉú³Éͼ±íµÄͬʱʹÓÃDataGridÏÔʾÊý¾Ý±í£¬¶øÖ»ÄÜÓÃÑ­»·ÒÀ´ÎÈ¡³öRecordset¼Ç¼¼¯ÖеÄÈ«²¿Êý¾Ýºó£¬ÊÖ¹¤Éú³É±í¸ñ¡£

¡¡¡¡×îºó£¬ÔÚͬһÕÅͼ±íÖлæÖƵÄÇúÏßÖ»ÄÜÊÇͬһÖÖÀàÐÍ£¬»òͬΪƽ»¬ÇúÏßͼ£¬»òͬΪÖù״ͼ£¬Ëü²»ÄÜÔÚͬһÕÅͼ±íÖÐÏÔʾ²»Í¬ÀàÐ͵ÄÇúÏß¡£