数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

在PB中实现Word内容的替换[1]


发布日期:2018年01月19日
 
在PB中实现Word内容的替换[1]
本文介绍一种在Power Builder(以下简称为PB)中利用OLE把数据库中的数据传送到Word文档的方法通过这种方法用户可以根据需求而改变内容以Word方式打印结果文档例如在处理学生成绩时如果要将每个学生的成绩报告生成Word文档不同的学生只改变姓名学号和年度等数据其他的格式不改变只要从学生成绩数据库中调出特定数据插入或替换到已经制作好的Word模版中即可解决问题

创建Word模版文档

Word模板文档的创建根据用户的要求进行在固定的内容输入完成后将需要变换内容(例如姓名年度系别和证书编号等)的位置输入student_namestudent_yeardepartment以及student_id等编码注意: 尽量使用英文来表示这些变量目的是避免某些汉字相同而造成的误替换

在需要动态改变内容的位置不需要输入文字可以通过插入书签的方法实现具体操作如下首先选择在Word中选择插入*书签弹出书签对话框(如图所示)书签名文本框中输入书签名称后点击添加按钮即在当前光标位置上增加了一个书签假设我们增加了个书签分别是 nameyeardepartment以及id分别代表姓名年度系别以及证书编号

PB实现方法

在窗体中新建一OLE控件在弹出的insert object属性窗口的create new tab选项卡中选择Microsoft Word 文档选项点击OK按钮后将该控件放在窗体中适当位置PB系统会自动出现Microsoft Word应用程序将控件命名为OLE_Word并创建打开文件替换数据存盘按钮编写如下代码

.打开文件

string docname named

integer value

value = getfileopenname(Select Filedocname named

DOCDoc Files (*DOC)*DOC)

if value = THEN

// 将模版文件另存为实际操作文件(程序略)

if ole_Wordopen(docname)= then

ole_Wordactivate(inplace!)

end if

end if

这里使用GetFileOpenName函数让用户自行选择文件实际应用时可以进行条件的限定注意: 需要将模版文件另存为实际操作文件后再打开不能直接操作模版文件打开文件参数有其中inplace表示在PB程序内部窗口调用Word部分提供Word的功能菜单; 另一种参数是offsite表示PB程序外启动Word应用程序提供Word的所有功能菜单简单的演示文档如图所示

[] [] []

               

上一篇:数据结据第九章(查找)串讲+复习要点

下一篇:在PB中实现Word内容的替换[3]