国产麒麟、uos在线编辑word文件并控制编辑区域(局部编辑)

windows系统也适用,该插件可同时支持windows和国产系统

在实际项目开发中,以下场景可能会用到Word局部编辑功能:

  • 合同审批
  • 公文流转
  • 策划设计报告
  • 汇签单
  • 招投标(标书文件)
  • 其他,有模板且需要不同人员协作编辑的场景

PageOffice使用表单模式docSubmitForm打开Word文件之后,只有设置了Editing属性为true的数据区域部分是可以编辑的,Word中的其他部分都是只读不可编辑的,所以利用此特性就可以控制Word文件编辑区域,只要保存的时候不处理提交的数据,只是保存文件的话,就实现了局部编辑功能。

控制编辑区域实现局部编辑的功能,通常用在以下两个方面:

  • 只是为了控制Word文档中哪些位置属于可编辑区域,避免用户误操作修改、或故意修改编辑区域以外的内容;
  • 多人负责编辑Word文档中不同章节的情况下,控制不同用户编辑各自不同的区域;

以下我们就合同审批和公文流转两个场景来举例说明,PageOffice是如何使用局部编辑功能分别实现这两个需求的。

注意

“数据区域”是指word文件中名称以“PO_”开头的书签。

合同审批的需求

某公司要在线上起草采购合同,合同模板是固定的,合同条款几乎固定不变,只有签订合同的供货单位名称和担保人是根据实际情况变动的。因此,在线上制作合同时,只需要让合同中那些可变的区域可编辑,其他位置则不能编辑,这时就需要用到PageOffice的局部编辑功能。

在实际项目中,合同审批肯定会用到更多的数据区域,本文为了简明扼要,所以仅以有限的几个数据区域来举例说明。

首先,制作一个销售合同模板,比如:D:\template1.docx,里面包含了购货单位、供货单位、合同编号、产品名称、担保人等数据区域,如下图所示:

 然后,起草文件时,编程控制用表单模式docSubmitForm打开Word文件,并调用WordDocument对象动态填充从Web系统数据库中获取的所有数据到Word模板,生成合同文件的初稿,同时设置供货单位(PO_Supplier)和担保人(PO_Guarantor)两个数据区域的Editing属性为true,即实现除供货单位名称和担保人之外的所有内容都是只读不可编辑的。做如下编码:

PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);

WordDocument wordDoc = new WordDocument();
//打开数据区域,openDataRegion方法的参数代表Word文档中的书签名称
wordDoc.openDataRegion("PO_Buyer").setValue("北京幻想科技有限公司");
wordDoc.openDataRegion("PO_No").setValue("HT20230211");
wordDoc.openDataRegion("PO_ProductName").setValue("三防热敏标签纸");

DataRegion  supplierNameDr = wordDoc.openDataRegion("PO_Supplier");
supplierNameDr.setValue("湖北某某有限公司");
supplierNameDr.setEditing(true); // true代表当前数据区域可编辑,false为不可编辑。默认值是false

DataRegion  guarantorDr = wordDoc.openDataRegion("PO_Guarantor");
guarantorDr.setValue("张三");
guarantorDr.setEditing(true);

poCtrl.setWriter(wordDoc);//必须
poCtrl.setSaveFilePage("saveFile"); // 设置保存文件的接口地址
poCtrl.WebOpen("D:\\template1.docx", OpenModeType.docSubmitForm, "李四");

生成的合同初稿如下图所示:

保存合同文件时,在SaveFilePage属性指向的地址接口中,调用FileSaver对象保存合同文件为正式的文件名,比如:hetong001.docx,后面的流转和审核环节对hetong001.docx进行处理即可。

FileSaver fs = new FileSaver(request, response);
fs.saveToFile("D:\\hetong001.docx");
fs.close();

这样一来,合同起草人员或合同流转审阅环节的其他人员,就只需要根据具体情况修改合同中相关数据,无需担心误操作修改了与Web系统紧密相关的关键数据(如“合同编号”),或其他关键合同条款。最后合同的审核环节,领导只需要关注合同中可编辑区域的数据,无需逐一核对全文数据,不用担心可编辑区域以外的其他内容发生变动,极大的提高了领导审核合同的效率。

公文流转的需求

起草人起草文档,然后文档在部门之间流转(或在人员之间流转),一个时常会遇到的需求就是,要求A部门人员不能编辑B部门区域的内容,反之亦然,否则就不能划清部门之间的责任。总的来说就是不同的人负责编辑文章中不同的区域,所以就需要控制编辑区域的功能。此功能基本上属于OA系统、文档系统、合同管理等各种类型的文档审核流转的核心功能。比如:打开公司公文,里面包含两个数据区域“研发部意见”和“销售部意见”,名称分别为:PO_YanFa、PO_XiaoShou,实现A用户打开公文后只能编辑研发部意见,B用户打开公文后只能编辑销售部意见,可以做如下编码:

PageOfficeCtrl poCtrl = new PageOfficeCtrl(request);

WordDocument wordDoc = new WordDocument();

if (loginUser.equals("A用户")){
  wordDoc.openDataRegion("PO_YanFa").setEditing(true); // 设置数据区域为可编辑状态
} else if (loginUser.equals("B用户") {
  dwordDoc.openDataRegion("PO_XiaoShou").setEditing(true); 
}

poCtrl.setWriter(wordDoc);//必须
poCtrl.setSaveFilePage("saveFile");
poCtrl.WebOpen("D:\\documents\\hetong.docx", OpenModeType.docSubmitForm, "张三");

当A用户打开公文时只能编辑研发部意见的效果,如下图所示(只有黄色中括号内的区域可以编辑):

当B用户打开公文时只能编辑销售部意见的效果,如下图所示(只有黄色中括号内的区域可以编辑):

编辑区域的定义

方法一:编辑Word模板,即在Word文档中添加书签。在D盘根目录下新建Word文件,比如:D:\template1.docx,打开文件用光标选中需要标记为书签的文字,比如“[公司名称]”,然后点Word菜单中的“插入”-“书签”,就会弹出一个标题为“书签”的对话框(如下图所示),输入新书签的名称,注意:书签名必须以“PO_”开头,并由字母和数字组成,但中间不能有空格。点右侧的“添加”按钮,新的书签名将出现在下面的列表中。此方法适用于,模板在项目开发时就固定下来不再修改的场景。

方法二:请参考“用户自定义模板中数据区域”章节。此方法适用于,在项目发布运行后,用户还需要修改调整模板、甚至新建模板的场景。

原文链接:控制Word编辑区域(局部编辑) | PageOffice 开发者中心

 

  • 14
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 国产电脑操作系统(UOS)离线激活是指在没有网络连接的情况下对UOS进行激活。离线激活的主要目的是为了方便部分没有网络连接条件的用户进行系统激活,确保其正常使用。 要离线激活UOS,首先需要获取UOS激活工具。可以在购买UOS产品时,同时获取该工具或从官方网站上下载。在获得该工具后,将其安装到需要激活的电脑上。 启动激活工具后,根据提示选择离线激活选项。然后,工具会生成一个激活请求码。将该请求码复制到其他能够联网的设备上,例如手机或笔记本电脑。 在其他设备上打开浏览器,并访问UOS官方网站上的激活界面。将请求码粘贴到对应的输入框中,并点击确认按钮。网站将会生成一个离线激活文件。 将离线激活文件复制到需要激活的电脑上,并导入到激活工具中。激活工具将会自动识别该文件,并开始完成离线激活的过程。激活完成后,系统会自动重启。 重启后,系统会自动检测激活状态,并显示已激活成功的信息。此时,UOS已被离线激活,用户可以正常使用系统的全部功能。 需要注意的是,离线激活的文件具有有效期限制,一般为30天。在文件过期之前,需要重新激活系统以保证正常使用。 总而言之,通过离线激活,用户可以在没有网络连接的情况下对国产电脑操作系统(UOS)进行激活,确保其正常使用。这是一种方便和可靠的激活方式,能够满足用户的不同需求。 ### 回答2: 国产操作系统UOS可以通过离线方式进行激活。激活过程如下:首先,在未联网的情况下打开电脑并登录UOS系统。然后,在桌面上找到“控制中心”的图标并点击打开。在控制中心界面中,找到“系统设置”选项,并点击进入。 在系统设置中,找到“系统与更新”选项,并点击进入。在系统与更新界面中,找到“激活”选项,并点击进入。在激活界面中,选择离线激活方式,然后点击“开始激活”按钮。 接下来,系统会生成一个“离线激活文件”,并提示用户将该文件保存到U盘或其他储存设备中。用户可以选择将文件保存到自己方便的位置。 之后,用户需要将保存了“离线激活文件”的存储设备连接到需要激活的电脑上。再次登录UOS系统,并打开控制中心。在控制中心界面中,点击“系统与更新”选项,然后进入激活界面。 在激活界面中,选择“离线激活”方式,并点击“选择文件”按钮。在弹出的文件选择窗口中,找到之前保存的“离线激活文件”,并选择打开。 最后,系统会自动读取并识别离线激活文件,完成激活过程。用户可以在激活界面中查看激活结果,并确认系统已成功激活。 需要注意的是,离线激活文件具有时效性,一般情况下在30天内有效。如果离线激活文件过期或无法正常激活,用户可以选择联网激活或联系相关技术支持进行解决。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值