起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 652|回复: 19

[请求]如何在实现这样的需求?**

[复制链接]
匿名  发表于 2006-12-29 21:18:42 |阅读模式
现在有个问题请教一下:
   如何控制Word 文档不可编辑,即用户在打开Word 后既不能添加内容也不能将原来的内容删除。谢谢……
回复

使用道具

发表于 2006-12-30 09:13:08 | 显示全部楼层
这个我们手上也没有现成的资料,楼主可以在网上找一下,比如这个你看看是否满足需求:
http://topic.csdn.net/t/20030214/11/1427715.html
回复 支持 反对

使用道具 举报

匿名  发表于 2006-12-30 09:47:14
谢谢twins_tony的回复,在你给的链接中没找到相关的代码。
在x3中 通过
   app.PropertyPut('UserName', [UserName]);   //设置用户名
   app.PropertyPut('UserInitials', [UserInitials]);    //设置用户简称
   doc.PropertyPut('TrackRevisions', [True]);   //设置痕迹保留
可以设置文档的一些属性,不知道能不能设置文档的只读,
就像一楼所述。
回复 支持 反对

使用道具

发表于 2006-12-30 09:59:01 | 显示全部楼层
这个要找一下MS的资料了,看看VBA有没有办法控制这些属性。
回复 支持 反对

使用道具 举报

匿名  发表于 2006-12-30 10:06:06
你们不是也在作OA吗,你们没有作这样的功能吗?
能不能让alang老师来给看一下,给个解决的办法!
谢谢了,我们前天去过你们那了,这问题要急着解决。
回复 支持 反对

使用道具

匿名  发表于 2006-12-30 11:08:00
顶………………
回复 支持 反对

使用道具

匿名  发表于 2006-12-30 11:08:53
怎么没人来看看啊,急……
自己顶了!
顶………………
回复 支持 反对

使用道具

发表于 2006-12-30 11:24:34 | 显示全部楼层
找到一段VBA脚本,可以设置只读(其实是设置保护)
Sub Macro3()
'
' Macro3 Macro
' 宏在 2006-12-30 由 liujian 录制
'
    ActiveDocument.Protect Password:="", NoReset:=False, Type:= _
        wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False
End Sub
回复 支持 反对

使用道具 举报

发表于 2006-12-30 11:26:31 | 显示全部楼层
还有,你可以不管Word,只要不提交这个字段的更新就可以了
在BeforePost之前判断,是否具有修改的权限,然后决定Content字段时候修改
回复 支持 反对

使用道具 举报

匿名  发表于 2006-12-31 09:22:35
谢谢alang 老师!
周四我们去过你们那,可能没有把问题说清楚:
在数据集的层次可以设置成只读,但是使用Word打开该OLE 字段时,则可以在Word中修改,但不能够存储。虽然这不影响系统功能。但是会给用户造成错觉,并有可能造成用户的损失。既用户可能进行了大量编辑工作,但在存储时被系统取消。
所以我们想直接控制word的只读来实现功能。
那天您给的代码是这样的:
procedure TMainForm.Button1Click(Sender: TObject);
begin
  DataEdit1.DataSource.DataSet.Edit;
  DataEdit1.DataSource.DataSet.Fields[0].Value := DataEdit1.DataSource.DataSet.Fields[0].Value;
  TOleContainer(DataEdit1.InplaceControl).DoVerb(0);
end;
再问一下,您上面给的那段代码应在甚么地方写;该怎么写?
谢谢……
回复 支持 反对

使用道具

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-23 05:37 , Processed in 0.043057 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表