NTKO控件使用说明书V10.docx

上传人:b****4 文档编号:11718866 上传时间:2023-03-31 格式:DOCX 页数:13 大小:336.68KB
下载 相关 举报
NTKO控件使用说明书V10.docx_第1页
第1页 / 共13页
NTKO控件使用说明书V10.docx_第2页
第2页 / 共13页
NTKO控件使用说明书V10.docx_第3页
第3页 / 共13页
NTKO控件使用说明书V10.docx_第4页
第4页 / 共13页
NTKO控件使用说明书V10.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

NTKO控件使用说明书V10.docx

《NTKO控件使用说明书V10.docx》由会员分享,可在线阅读,更多相关《NTKO控件使用说明书V10.docx(13页珍藏版)》请在冰豆网上搜索。

NTKO控件使用说明书V10.docx

NTKO控件使用说明书V10

 

NTKO控件使用说明

 

广州奥格智能科技有限公司

2011.7

文档控制

更改记录

日期

作者

版本

更改参考

2011-07-01

陈卫光

1.0

创建

审阅

签字/日期

审核

审批

客户确认

1引言

1.1目的

本文档的编写目的主要是让工作流平台管理员掌握如何安装和卸载NTKO控件,同时也让开发人员掌握NTKO控件的开发技巧来解决常见的在线编辑、打印等功能需求。

1.2读者范围

本文档面向管理员和项目组开发人员。

1.3参考资料

 

2NTKO控件安装

2.1自动安装

通常的情况下,使用自动安装,其安装步骤如下:

1、更改IE浏览器的安全设置,即点击IE的“工具”菜单,选择“Internet选项”,进入“安全”选项卡,界面如下:

再点击“自定义级别”按钮,进入如下界面,把有关“ActiveX控件和插件”的选项全部启用。

点击“确定”后,关闭IE浏览器后重新打开IE浏览器,界面如下:

2、安装NTKO控件,当首次打开NTKO控件时,在IEtab标签页下面会自动提示是否“运行加载项”,界面如下图所示:

点击“禁用的加载项(A)”的子菜单“运行加载项(R)”,弹出以下对话框:

选择“运行”,即安装完NTKO控件。

2.2手动安装

一般情况下应该让客户端自动安装控件,这样当服务器控件版本更新时,客户端可以获得自动升级方面的好处。

但是,如果因为客户机配置有问题,或者有其它拦截工具拦截的原因无法自动安装控件,可以采取手动安装。

其安装步骤如下:

1、把../resources/ntko中的officecontrol.cab解压,然后拷贝officecontrol.ocx文件拷贝到C盘下;

2、从命令行运行:

regsvr32c:

\officecontrol.ocx;

3、其余的步骤同自动安装。

3NTKO控件开发

3.1NTKO控件文件说明

ADS开发框架中内置了NTKO控件,同时具有很多NTKO控件使用的Demo代码。

下图是NTKO控件在ADS框架中的位置:

从上图中可以看出,NTKO控件存放在”engine5/WebApp/resources/ntko”目录下。

NTKO目录下有如下文件,如图:

文件清单说明如下表:

文件/目录名

用途

OfficeControl.cab

NTKO控件所包含的动态链接库

genOfficeControl.js

IE浏览器引用NTKOActiveX控件的JS代码,可以在html或jsp中直接引用该js文件

OfficeControlFunctions.js

NTKO控件中常用javascript函数

EditOfficeDoc.jsp

ADS中引用NTKO的示例代码

templateFile

Word、Excel、Visio等模板文件

secSignFile

电子签章文件

ntkosigntool.cab

NTKO控件电子签章所包含的动态链接库

3.2NTKO控件使用

3.2.1如何在你页面中引用NTKO控件

在你的页面中引用NTKO控件,代码如下:

其中genOfficeControl.js的代码如下

//嵌入NTKO文档控件时必须指定控件或者控件所在table/div的长度和高度

document.write("

A39F1330-3322-4a1d-9BF0-0BA2BB90E970'codebase='OfficeControl.cab#version=5,0,1,0'width='100%'height='100%'>");

document.write("

red'>不能装载文档控件。

请在检查浏览器的选项中检查浏览器的安全设置。

");

document.write('');

document.write('');

document.write("");

document.write("");

document.write("");

从上面的代码可以看出,genOfficeControl.js实际上是在IE浏览器中创建一个ActiveX对象——NTKO控件。

3.2.2用NTKO控件打开office文档

NTKO控件目前支持所有的MicrosoftOffice2000版或以上的文档格式,除此以外还支持WPS等办公软件。

如何使用框架中的NTKO控件打开office文档呢?

首先在你的页面中引用OfficeContorlFunctions.js,代码如下。

OfficeContorlFunctions.js封装对NTKO控件调用的常用函数。

然后,在你的页面中为body标签添加onload事件处理函数,代码如下,

其中intializePage将去读取要打开的文件,url为要打开的文件的地址。

url可以有两种形式:

第一种:

直接读取服务器下的文件,比如要打开服务器tomcat下webapps/engine5/fawen/xxx.doc文件,

url取值为”/engine5/fawen/xxx.doc”

第二种:

读取二进制文件流,url通常为一个某一个Action的一个方法,该方法去后台读取某一个office文件的二进制流。

例如:

url取值为:

“${ctx}/sysfile/sys-file!

readAttachment.action?

sysFileId=${sysFileId}”

3.2.3保存NTKO控件打开的Office文件

如何保存NTKO控件打开的office文件呢?

实际上NTKO控件把打开的office文件以“附件”形式上传到后台服务器磁盘。

所以同普通附件上传一样,有以下几个注意事项:

1、标签的enctype选项的的取值必须为“multipart/form-data”;

2、提交方式必须为“post”

下面是保存NTKO控件打开的office文件的代码:

其中url为你要提交到服务端的访问地址,url取值请参考附件组件的文档。

3.2.4NTKO常用javascript函数介绍

在OfficeContorlFunctions.js中封装了常用的javascript函数,如下表:

函数名

参数

功能

intializePage

url

在页面打开时,用NTKO控件打开url所指向的office文件

saveFileToUrl

保存NTKO打开的office文件到磁盘

setFileOpenedOrClosed

bool

把文档标记为“打开”或“关闭状态”。

Bool取值为true时把文档标记为“打开”状态,否则标记为“关闭”状态

onPageClose

在关闭打开的office文件时提示是否保存

openTemplateFileFromUrl

templateUrl

用NTKO控件打开templateUrl所指向的office文件

insertRedHeadFromUrl

headFileURL

插入红头文件,headFileURL为红头文件所在的地址

SetReviewMode

boolvalue

当为word文件时,设置文件的是否保留修改痕迹。

当boolvalue取值为true时保留修改痕迹,否则不保留。

setShowRevisions

boolvalue

当为word文件时,是否显示修改痕迹。

setFileNew

boolvalue

是否屏蔽“新建(N)”菜单

setFileSave

boolvalue

是否屏蔽“保存(S)”菜单

setFileSaveAs

boolvalue

是否屏蔽“另存为(A)”菜单

setIsNoCopy

boolvalue

是否禁止粘贴

saveFileAsHtmlToUrl

url

把打开office文件保存为html文件

saveFileAsPdfToUrl

url

把打开office文件保存为pdf文件

addServerSecSign

插入服务端电子签名

addLocalSecSign

插入本地电子签名

addHandSecSign

插入手写签名

3.2.5常用NTKO控件事件

常用NTKO控件事件如下表:

事件名称

功能

OnDocumentOpened

打开office文档时触发

OnDocumentClosed()

关闭office文档时触发

如何针对NTKO控件的事件进行编程呢?

//此处添加打开office文件时事件处理函数

//此处添加关闭office文件时事件处理函数

3.2.6利用NTKO控件实现动态打印

以前所阐述的都是静态的,在实际应用中经常需要动态打印,如下图所示:

显然,每次显示的标题、内容、发布人、发布时间都是动态变化的。

如何利用NTKO控件实现此功能呢?

要实现此功能,步骤如下:

1、首先要做一个打印模板,即在制定位置插入四个书签,如下图:

插入的书签显示如图:

2、在你的页面中调用js代码打印书签内容,即在打开NTKO控件事件处理函数中添加打印书签的js代码,

如打印上面的标题,js代码如下:

//打印标题

OFFICE_CONTROL_OBJ.SetbookmarkValue('title','关于中秋节放假的通知');

4NTKO控件在公文流转中的应用

4.1痕迹保留

在公文流转过程中,通常需要记录“是谁在什么时候修改了公文的什么内容”,即痕迹保留。

如何利用NTKO控件实现痕迹保留呢?

实际上是在用NTKO控件打开word文档时,把文档设置为“修订”模式。

例子代码如下:

//设置保留痕迹

SetReviewMode(true);

//记录是哪个用户修改的

OFFICE_CONTROL_OBJ.ActiveDocument.Application.Username='登录用户的用户名';

4.2制文

在办公自动化系统的发文管理中有个常见操作就是制作公文,简称制文。

制文需要以下几个要素:

1、红头文件;

2、制文模板文件;

3、正文

所以制文以前要准备好红头文件、制文模板文件和正文。

值得注意的是,在制文模板文件中必须要有“zhengwen”书签,该书签用来预留插入正文的位置。

如下图所示,该打印模板中就有”zhengwen”书签。

制文源代码如下:

//制文

functionmakeDocument(printData){

varntko=document.all.item("NTKO_OCX");

//插入正文

ntko.AddTemplateFromURL("${ctx}/${zhengwenPath}");

//插入模板

vartemplateFilePath="${ctx}/${printTplPath}";

insertTempAndPutZhengWenInside(templateFilePath,ntko);

//打印表单数据

if(printData){

for(varpinprintData){

if(typeof(printData[p])!

="function"){

ntko.SetbookmarkValue(p,printData[p]);

}

}

}

//插入红头

insertRedHeadFromUrl("${ctx}/${redHeadPath}");

}

详细代码见make-document.jsp文件。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 天文地理

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

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