ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:1.76MB ,
资源ID:19719790      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19719790.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(套红说明Word下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

套红说明Word下载.docx

1、3-6.jpg(128.16 K)(图3-6 模板中套入正文)3-7.jpg(75.35 K)(图3-7 模板中套入正文)这样,只要简单的操作编辑好的正文就能套用在事先定制好的模板里,形成一个正式的公文。可能大家会不清楚模板文件在哪里,我带大家找一下。其实,在iWebOffice2003/2006的演示包中,会有一个Document目录,我们调用的模板文件就在这个里面。3-8.jpg(84.11 K)(图3-8 Document目录)3-9.jpg(59.78 K)(图3-9 模板文件)就这样,在应用iWebOffice2003/2006网络文档控件提供的功能后,用户只需要进行简单的操作,就可

2、以使用“模板套红”这样看似复杂的功能。3.2 模板套红开发流程应用也许很简单,当开发人员可能更关心功能的实现方法。下面,针对刚才的功能,说明一下“模板套红”的开发流程。3.2.1 定义标签进入“标签管理”,可以进如下面的界面,在这里自己定义需要的标签。在模板文档中定位要插入的正文位置,是通过标签(也就是WORD中的书签)来实现的。金格提供的DEMO中使用了Content这个标签定位正文插入的位置。3-10.jpg(107.80 K)(图3-10 标签管理)标签都是有名称的,为了实现动态的取数据库的数据设置到文档中,可以把这里的标签名称和数据库的字段名称对应起来(这个以后再做介绍)。说明一下表格

3、中对应的内容:编号:无特殊意思,唯一编号用;标签名称:标签的名称,插入WORD后就是书签的名称;标签说明:插入WORD后会用这个占据标签对应的位置,方便查看标签区域;标签备注:这里的内容在通过标签填充模板时用到,模板套红功能暂时用不到。3.2.2 制作模板先看看Document目录下提供的两个模板3-10-2.jpg(86.24 K)(图3-10 模板文件内容)3-11.jpg(73.97 K)(图3-11 模板文件内容)通过菜单的“插入”“书签”我们可以看到当前文档中的标签。选择标签名称后点定位可以看到标签所覆盖的区域。标签所覆盖的区域在插入正文后将直接被插入的内容替换掉。3-12.jpg(

4、89.50 K)(图3-12 模板文件中的标签)从效果上看,套红的过程就是打开了模板文件,然后把正文插进来替换调了Content这个标签所在的区域。3.2.3 数据库模板模板当然不止能保存在服务器的文件夹里,金格的演示中也提供了应用数据库保存和使用模板的方法。在列表页面进入“模版管理”,我们可以看到一些演示提供的模板。3-13.jpg(112.63 K)(图3-13 模板管理列表页)我们在这里可以新建自己的模版,或者编辑已经存在的模板。3-14.jpg(53.29 K)(图3-14 新建模板)这里演示的操作都是可以提供给最终应用客户使用的,也只有客户自己才知道需要什么样的模板。最重要的地方应该

5、是为模板放置标签了,如果没有标签,那我就真不知道怎么插文档进来了。当然,插入用的标签名称不止是Content,完全可以是别的任意什么名称,只是后期开发中需要在服务器处理页面中把这个名称对应起来。后面我就来说处理页面中的开发。3-15.jpg(57.08 K)(图3-15 设置标签)3.2.4 编辑页面中的接口调用金格iWebOffice2003/2006控件提供了丰富的接口,调用的方式为直接用JavaScript方式。先来看一下“套用模版定稿”按钮所应用到的代码:1. 2. /作用:套用模版定稿3. function WebInsertFile()4. varmDialogUrl = Temp

6、late/TemplateForm.asp;5. varmObject = new Object();6. mObject.Template = 7. window.showModalDialog(mDialogUrl,mObject,dialogHeight:200px; dialogWidth:360px;center:yes;scroll:no;status:);8. if (mObject.Template=)/判断用户是否选择模板9. StatusMsg(取消套用模10. return false;11. else12. SaveDocument(); /保存当前编辑的文档13. /

7、设置变量COMMAND=INSERTFILE,在WebLoadTemplate()时,一起提交到OfficeServer中14. 据库axunwebform.WebOffice.WebSetMsgByName(COMMAND, 15. /全局变量Template赋值16. webform.WebOffice.Template=mObject.Template;17. if (webform.WebOffice.WebLoadTemplate()/交互OfficeServer的OPTION=LOADTEMPLATE18. /SetBookmarks(Title关于中间件研发工作会议通知19. /

8、填充模板其它基本信息,如标题,主题词,文号,主送机关等20. if (webform.WebOffice.WebInsertFile()/填充公文正文,OPTION=21. StatusMsg(webform.WebOffice.Status);22. else23. StatusMsg(webform.WebOffice.Status);24. 25. else26. StatusMsg(webform.WebOffice.Status);27. 28. 29. 复制代码通过代码我们可以清楚的看到套用模板的整个调用过程,其实是个组合过程,把一些接口操作按顺序调用来达到效果:1弹出选择模板的窗

9、口;2保存当前编辑的文档;(这里很重要)3设置变量,内容为,如果打开服务器文件夹里的模板就设置,从数据库中打开就不设置。(作用在处理页面中讲)4获得返回的选择的模板名称;5调模板文件;6插入之前保存的正文。在二次开发中这些代码基本都是可以重用的,但值得注意的是金格的DEMO中套用模板是从文件夹里取模板的,如果需要从数据库中取需要做一些修改:弹出的模板选择页面中(如TemplateForm.asp)需要改成从数据库取模板表生成选择列表;返回的值也从文件名称改成记录编号。3.2.5 处理页面中的开发编辑页面的控件接口被调用了,信息将传进处理页面中。处理页面内完成两个操作:1.)调用模板文件2. c

10、ase 下面的代码为打开服务器数据库里的模板文件3. mTemplate=MsgObj.GetMsgByName(TEMPLATE)取得模板文档类型4. 本段处理是否调用文档时打开模版,5. 还是套用模版时打开模版。6. mCommand=MsgObj.GetMsgByName(取得客户端定义的变量COMMAND值7. if (mCommand=) then 8. mFilePath=Server.MapPath(.) 9. MsgObj.MsgTextClear10. if (MsgObj.MsgFileLoad(mFilePath+Document+mTemplate) then调入模板文

11、档11. MsgObj.SetMsgByName STATUS打开模板成功!设置状态信息12. MsgObj.MsgError=清除错误信息13. else14. MsgObj.MsgError=打开模板失败!设置错误信息15. end if16. else17. MsgObj.MsgTextClear清除文本信息18. if LoadTemplate() then19. MsgObj.MsgFileBody=mFileBody将文件信息打包20. MsgObj.SetMsgByName 21. MsgObj.MsgError=22. else23. MsgObj.MsgError=24. e

12、nd if 25. end if首先,可以看到这里有个mCommand,他在前面是取了客户页面传过来的变量的内容,内容是(这个在编辑页面中打过招呼了)。另外可以看到这里打开的是指定好路径的一个文档,文档的名称是编辑页面中获得后传进来的:1. MsgObj.MsgFileLoad(mFilePath+mTemplate)如果是需要从数据库取文档,这里就要注意了。mCommand的价值就在这里,如果没有,就是从数据库取模板了。看代码应该很好理解了吧。2.)调用正文2. case 下面的代码为插入文件3. mRecordID=MsgObj.GetMsgByName(RECORDID) 取得文档编号4

13、. mFileName=MsgObj.GetMsgByName(FILENAME取得文档名称5. mFileType=MsgObj.GetMsgByName(FILETYPE取得文档类型6. MsgObj.MsgTextClear 7. if(LoadFile()then 调入文档8. MsgObj.MsgFileBody=mFileBody 9. MsgObj.SetMsgByNamePOSITIONContent设置插入的位置书签10. MsgObj.SetMsgByName打开成功!11. MsgObj.MsgError=12. else13. MsgObj.MsgError=打开失败!

14、14. end if调用正文就很简单了,只要是正文保存在数据库里就用这个插正文。这里要注意一个地方,不知道大家看见了没有,就是MsgObj.SetMsgByName。这里设置POSITION参数的作用是制定要插入到的模板中的哪个标签位置,演示DEMO中设置的是Content标签,如果模板里定义了别的标签名称用来插入正文,则在这里设置相应的标签名称就可以了。四、数据库模板篇4.1套用数据库中的模板演示1.)查看数据库中,备用的模板。(制作模板的流程与套用文件夹里的一样)4-1.jpg(119.97 K)(图4-1排版好的模板)2.)编辑好文档的正文,准备套红:4-2.jpg(125.77 K)(

15、图4-2 辑好的正文,准备套模板)3.)选择数据库里面的红头模板:4-3.jpg(155.85 K)(图4-3 择数据库中的模板)4.)套红之后的效果:4-4.jpg(156.03 K)(图4-4 用数据库模板之后的效果)4.2套用数据库中的模板代码示例为了配合我们用简短的代码来描述情况,我们以金格科技提供的开发示例包(iWebOffice2006.ocx.jsp.Mssql.rar)为基础,进行说明。要从数据库中取出模板,进行套红,我们先来看一下,代码的开发流程。首先我们得从数据库中读取模板,以供选择。确定了要套用的模板之后,我们接下来的,就是要清楚iWebOffice控件的套用模板的工作流

16、程:1、保存准备套模板的正文;2、通过WebLoadTemplate()接口,与后台处理程序OfficeServer.jsp的OPTION=交互,实现从调用数据库中的模板。注意模板里面一定要有一个可以让正文放置的书签;3、把保存的正文文档插入到模板的书签位置。现在我们来看一下具体的实现代码:1.)做好数据库得到模板的页面:1. /在下拉框中,读取数据库中的模板名和编号,因为主要是数据库操作,这里只给出关键的几个步骤2. public String LoadDataWordList()3. String mWordList= /打开数据库4. String mSql=Select RecordI

17、D,FileType,FileName,Descript From Template_File order by TemplateIDdesc5. /查询数据库略6. ResultSet result = DbaObj.ExecuteQuery(mSql);7. while (result.next() 8. mWordList = mWordList + option value= + result.getString(RecordID) + Descript/option9. /中间部分略10. mWordList = mWordList + /select11. return (mWor

18、dList);12. 2.)HTML里面的按钮1. input type=button class=button value=套数据库模板 onclick=WebInsertDM()3.)按钮触发的JS函数:即WebInsertDM()里面的函数。这里面的功能主要有三部分。第一部分,是指定网页,从中读取数据库里面的模板。具体代码如下:2. varmDialogUrl = Template/TempDataFrm.jsp /读取数据库模板的列表页面3. varmObject = new Object();4. mObject.Template = 5. window.showModalDialo

19、g(mDialogUrl, mObject, 第二部分,是判断是否取得模板。具体的代码如下:1. /判断用户是否选择模板2. if (mObject.Template=)3. alter(取消套用模板4. return false;5. else6. /接第三部分的代码,与后台处理程序交互,套用模板第三部分,与后台处理程序交互进行套用模板。2. SaveDocument();3. /全局变量Template赋值,读取数据库中模板,Template值为数据库中的模板编号4. /注:模板中有要标签Content,区分大小写5. webform.WebOffice.Template=mObject.

20、Template;6. if (webform.WebOffice.WebLoadTemplate()7. /交互OfficeServer的OPTION=8. if (webform.WebOffice.WebInsertFile() 9. /填充公文正文 交互OfficeServer的OPTION=10. alert (webform.WebOffice.Status);12. alert (webform.WebOffice.Status);13. 14. else15. alert (webform.WebOffice.Status);16. 17. 4.)后台通过OPTION交互的代码

21、:1. else if(mOption.equalsIgnoreCase()2. 3. /下面的代码为打开服务器数据库里的模板文件4. mTemplate=MsgObj.GetMsgByName( MsgObj.MsgTextClear(); /清除文本信息5. if (LoadTemplate() /调入模板文档6. MsgObj.MsgFileBody(mFileBody); /将文件信息打包7. MsgObj.SetMsgByName( /设置插入的位置书签8. MsgObj.SetMsgByName( /设置状态信息9. MsgObj.MsgError( /清除错误信息10. 11.

22、else12. MsgObj.MsgError( /设置错误信息14. 5、后台处理程序中,调用加载指定模板的函数:2. /功能是调出模板文档,将模板文档内容保存在mFileBody里,以便进行打包3. /因为都是对数据库进行操作,这里只给出主要的代码4. private booleanLoadTemplate()5. booleanmResult = false;6. String Sql = SELECT FileBody,FileSize FROM Template_File WHERE RecordID= + mTemplate + 7. /查询数据库略8. mFileBody = result.getBytes(FileBody9. /关闭数据库略10. mResult = false;11. return (mResult);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1