问题描述
不好意思的问一个简单的问题.用什么方法可以删除DB中所有文档的附件.文档不要删除.用代理程序?还是怎么操作?
解决方案
解决方案二:
客户端和代理都可以做,应该遍历All视图中所有文档删除附件就可以
解决方案三:
如楼上所言。顶一下。
解决方案四:
谢谢楼上二位的回答,不好意思在下初学.是否能指点下具体操作.没做过.谢谢
解决方案五:
谢谢楼上二位的回答,不好意思在下初学.是否能指点下具体操作.没做过.谢谢
解决方案六:
建立一个视图,包含数据库中的所有文件。用settempdoc=view.getfirstdocument和settempdoc=view.getnextdocument(tempdoc)遍历所有文件。对每个文件,用forallointempdoc.Embeddedobjectssetojt=tempdoc.GetEmbeddedObject(o)callojt.remove()这段程序我没写出来调试,你自己完善下吧。
解决方案七:
简单,designer帮助:Thisscriptremovesallfileattachmentsfromadocument.DimdocAsNotesDocument'...setvalueofdoc...Calldoc.RemoveItem("$FILE")Calldoc.Save(True,True)
解决方案八:
楼上,如果是C/S模式的,你那样会不会有问题?
解决方案九:
回Ppmmjjyy你这样的话好像是只针对一个文档的吧.?回Oliverfive.谢谢你的提示.我用代理写这个.可以吗?您看有什么要补充的.不好意思,我是初学者.我不敢乱试,因为我这个DB中的资料很重要.我怕误删了.DimtempdocAsNotesDocumentsettempdoc=view.getfirstdocumentforallointempdoc.Embeddedobjectssetojt=tempdoc.GetEmbeddedObject(o)callojt.remove()settempdoc=view.getnextdocument(tempdoc)
解决方案十:
有些代码需要再补充完整,比如:forall后面的结束语句等等。ppmmjjyy的如果是B/S下,应该也可以的。因为,如果是B/S的话,附件会存放在$file下,按他那方法应该也可以。当然,我都没有试过的。建议你把原来的数据库拷贝出来做测试。如果对lotus还不熟悉,不放心的话,可以把代码写完后,发给我,我帮你看下。e-mail:wulingfan@skccsystems.cn
解决方案十一:
我用另一个DB试过了.不行.说Script错误.
解决方案十二:
建个简单操作的代理,用公式写一句:FIELD$FILE:=@DeleteField;,然后在视图中全选文档执行,就可以了。
解决方案十三:
试一下下面的代码:ForallrtitemIndoc.Items'获取文档doc中所有的条目If(rtitem.Type=RICHTEXT)ThenIfNot(Isempty(rtitem.EmbeddedObjects))ThenForalloInrtitem.EmbeddedObjectsIf(o.Type=EMBED_ATTACHMENT)ThenCallo.RemoveCalldoc.Save(False,True)EndIfEndForallEndIfEndIfEndForall
解决方案十四:
上面的代码怎么像是我写的呢
解决方案十五:
引用13楼lqzmrlc的回复:
上面的代码怎么像是我写的呢
哎--,那也太巧了。
解决方案:
^^^^^^^^^^^^^^^^^^^^^^^