|
1、在w文件中放blob组件,将word文档上传到数据库中
设置blob组件的data、concept、relation属性
data关联一个bizData组件,本例:bizData1
concept指向存储word文件的概念名,本例:ER_WPXX
relation指向存储word文件的关系名,本例:fBlob
2、除了上传文件,还需要获得文件名,最主要是文件后缀名,用于显示文档
在blob组件的onSubmit事件中获取文件名,注意,要把文件名保存起来- mainActivity.blob1Submit = function(event){
- alert(event.file);
- return true;
- };
复制代码 3、在w文件中放officeViewer组件,下载word文件并显示- mainActivity.trigger1Click = function(event){
- var rowID = justep.xbl("bizData1").getID();
- var url = justep.Request.setBizParams(justep.Request.convertURL("/UI/system/service/common/bizAction.j")
- + "&dataModel=/erp/buy/data" //数据模块目录
- + "&concept=ER_WPXX" //概念名
- + "&relation=fBlob" //关系名
- + "&id=" + rowID //行ID
- + "&process=/erp/buy/process/goods/goodsProcess" //流程名称
- + "&activity=mainActivity" //环节名称
- + "&action=blobDownloadAction" //调用的Action
- + "&$query-version=" + (new justep.UUID()).valueOf());
- url = window.location.protocol+"//"+ window.location.host + url;
-
- var offiveViewer = justep.xbl("officeViewer1");
- var ocxObj = offiveViewer.getOfficeObj();
- ocxObj.HttpInit();
- ocxObj.HttpAddpostString("FileExt",".docx");
- ocxObj.Open(url,"Word.Application");
- };
复制代码 通过调用系统提供的bizAction,j,访问系统提供的blobDownloadAction,获得文件的url,传给officeViewer组件,就可以显示文档了
说明:
1、blobDownloadAction是全局action,不用在当前process中添加这个action
2、ocxObj.HttpAddpostString("FileExt",".docx");里面的第二个参数必须和下载的文件的后缀相同。
例如
要显示的文件名是xx.doc,就传入.doc,
要显示的文件名是xx.docx,就传入.doxc,
要显示的文件名是xx.xls,就传入.xls,
要显示的文件名是xx.xlsx,就传入.xlsx
3、ocxObj.Open(url,"Word.Application");里面的第二个参数必须和下载的文件类型相同。
如果要显示word文档,就传入Word.Application,
如果要显示excel文档,就传入Excel.Applicatio |
|