$#@62;年产品生产销售情况
季度 产量 销售量
一 《Q1》 《S1》
二 《Q2》 《S2》
三 《Q3》 《S3》
四 《Q4》 《S4》
然后,通过利用下面的程序来生成该简报并打印输出。
SET SAFETY OFF
RUN /N c:\MSoffice\winword\winword.exe &&运行Word
iWord = DDEInitiate("WinWord", "System") &&初始化DDE
= DDEExecute(iWord, [AppActivate "Microsoft Foxpro",1]) &&重新激活Foxpro
= DDETerminate(iWord) &&终止DDE
**清数据库
USE PRODUCT
ZAP
USE
**计算出相应的数据后添加到数据库(这里为假设数据)
INSERT INTO PRODUCT (year,q1,q2,q3,q4,s1,s2,s3,s4) VALUES (1997,15000,20000,25000,30000,13000,18000,25000,31000)
CLOSE DATA
iWord = DDEInitiate("WinWord", "System")
= DDEExecute(iWord, "[AppMinimize]") &&最小化
= DDEExecute(iWord, [FileOpen "c:\pb\product.doc"]) &&打开文件
= DDEExecute(iWord, [MailMergeViewData]) &&数据视图
= DDEExecute(iWord, [FilePrint]) &&打印
= DDEExecute(iWord, [FileClose]) &&关闭
= DDEExecute(iWord, [FileExit]) &&退出
= DDETerminate(iWord)
RETURN
三、与Excel配合打印复杂的图表
如果你要制作图表,则首先想到的当然是利用Excel来完成。图表制作是Excel的强项,但Foxpro也能“驱动”它。方法是先制作Excel表格,选定单元区域作为建立图表的数据(包括坐标轴和标题等),选择“插入”、“图表” 菜单项,方式可以是嵌入或新建图表,调整好图表的式样和大小,在Foxpro中通过DDE命令传送数据到Excel单元格,Excel将根据传送的数据生成图表,再在Foxpro中通过DDE执行Excel的打印或显示命令,即可得到漂亮的图表输出。
在下面的例子中,我们打印一个四个季度销售情况的直方图。首先,建立Excel文件product.xls,在R1C2到R1C5四个单元格中分别填入“一”、“二”、“三”、“四”作为建立图表的坐标的标题,在单元格R2C1中填入“销售量”作为图表的题目,R2C2至R2C5四个单元格作为四个季度的销售量,其数据由Foxpro通过DDE填入。然后,用下面的这段程序即可打印出一个图表。
**用DDE驱动Excel打印直方图
RUN /N c:\msoffice\excel\excel.exe product.xls
iExcel = DDEInitiate("Excel", "System")
= DDEExecute(iExcel, [APP.ACTIVATE("Foxpro",1)])
= DDETerminate(iExcel)
iExcel = DDEInitiate("Excel", "product.xls")
*计算相应数据填入相应单元,这里假设为80 90 100 110
= DDEPoke(iExcel, "R2C2", "80")
= DDEPoke(iExcel, "R2C3", "90")
= DDEPoke(iExcel, "R2C4", "100")
= DDEPoke(iExcel, "R2C5", "110")
= DDEExecute(iExcel, [PRINT()]) &&打印
= DDETerminate(iExcel)
iExcel = DDEInitiate("Excel", "System")
= DDEExecute(iExcel, [ERROR(FALSE)]) &&不存盘
= DDEExecute(iExcel, [QUIT()]) &&退出
= DDETerminate(iExcel) &&终止DDE
RETURN
Foxpro通过其DDE类命令与其它的Windows应用程序配合可完成很多复杂的工作,从而充分共享Windows应用软件的功能,以满足实际工作的需要。