保留修改痕迹

如果我们能够 通过lotusscript编辑控制word的属性改变就解决了“痕迹保留”这个需求。
编辑实现

下面编辑实现上述需求。先建立一表单,在表单中加入如下域名:

名称 类型 默认值 隐藏条件

Boby RTF

WordEditing
文本,可编辑 0

$OLEObjProgID
文本,可编辑
"Word.document"
$OLEObjField
文本,可编辑
"Body"
为表单创建四个操作:

名称 隐藏条件

编辑WORD文档
WordEditing="1"
显示修改痕迹
WordEditing="1"
返回表单
WordEditing="0"
关闭
WordEditing="1"

下面利用Lotusscript编程实现将 Word嵌入到表单的Body域中,WordEditing域用来控制表单中的四个操作按钮在进入Word中只显示“返回菜单”,不在Word中时显示另外三个操作按钮,其他两个域用来控制嵌入的是word,而不是其他应用程序。

在表单中定义下述变:

Dim rtitem as notesrichtextitem
dim olebject as variant
dim embed as notesembeddedobject
在对“编辑word文档”操作的click事件中加入lotusscript脚本:

sub click(source as button)
dim s as new notessession
dim w as new notesuiworkspace
dim uidoc as notesuidocument
dim doc as notesdocument
dim user as string
set uidoc = w.currentdocument
set doc = uidoc.document
dim sOleField as string
doc.wordediting="1"
call uidoc.refreshhideformulas
if doc.hasitem("$OLEObjProgID") then
sOleField =doc.~$OLEObjField(0)
if uidoc.isnewdoc then
uidoc.refreshhideformulas
uidoc.gotofield(sOleField)
call uidoc.createObject("OLEObject",doc.~$OLEObjProgID(0),"")
else
if (doc.hasembedded) then
set rtitem=doc.getfirstitem(sOleField)
set rtitem=doc.getfirstitem("body")
set embed=rtitem.EmbeddedOjects(0)
user=s.commonUserName
set oleobject=uidoc.GetObject(embed.name)
'
记录修改痕迹

oleobject.TrackRevisions=true
'
不打印修改痕迹

oleobject.printrevisions= false
'
不显示痕迹

oleobject.showrevisions=true
'
记录在word中的当前用户

oleobject.parent.username=user
oleobject.parent.userinitials=user
end if
end if
end if
end sub
在对“显示修改痕迹”操作的click事件中加入lotusscript脚本。脚本和“编辑word文档“操作的click事件基本相同,只是将其对应部分改成以下程序语句:

'
记录修改痕迹

oleobject.TrackRevisions=true
'
打印修改痕迹

oleobject,printrevisions= true
'
显示痕迹

oleobject.showrevisions=true
'
记录在word中的当前用户

oleobject.parent.username=user
oleobject.parent.userinitals=user

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值