¡¡¡¡Òý: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)¡£±¾±êÌâ¿ÉÒÔλÓÚͼ±íµÄÉÏ·½¡¢Ï·½¡¢×ó·½»òÓÒ·½¡£ ¡¡¡¡ ¡¡¡¡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¼Ç¼¼¯ÖеÄÈ«²¿Êý¾Ýºó£¬ÊÖ¹¤Éú³É±í¸ñ¡£ ¡¡¡¡×îºó£¬ÔÚͬһÕÅͼ±íÖлæÖƵÄÇúÏßÖ»ÄÜÊÇͬһÖÖÀàÐÍ£¬»òͬΪƽ»¬ÇúÏßͼ£¬»òͬΪÖù״ͼ£¬Ëü²»ÄÜÔÚͬһÕÅͼ±íÖÐÏÔʾ²»Í¬ÀàÐ͵ÄÇúÏß¡£
|