保存附件到Domino Server端指定目录

方法实现:创建表单,使用rich text lite域属性保存附件,保存后从文档中拆离附件至指定位置 1. 具体手段: 保存擁有附件的文檔,呼叫一級代理 @Command([FileSave]); @Command([ToolsRunMacro];"agentCallAgent"); @Command([FileCloseWindow]) “agentCallAgent”代理運行在client,用來獲取當前文檔的ID傳送給Server端的代理,通過該ID獲取對應的文檔(由於代理在Server端運行時的環境不同,所以常用的通過Session或者uiworkspace獲取當前文檔的方法不行,需要對其傳過去文檔ID,用來獲取正確的文檔和附件) Sub Initialize Set session =New NotesSession Set db=session.CurrentDatabase Set doc=session.DocumentContext paramid=doc.NoteID Messagebox paramid Set agent =db.GetAgent("bottomAgent") If agent.RunOnServer(paramid)=0 Then Messagebox "Agent run",, "Success" Else Messagebox "Agent did not run",, "Failure" End If End Sub 2. Server端運行的bottomAgent代理代码: 3. Sub Initialize 4. Set session = New NotesSession 5. Set db = session.CurrentDatabase 6. db.DelayUpdates=False 7. Set agent=session.CurrentAgent 8. noteId=agent.ParameterDocID 9. Messagebox noteId 10. Set doc=db.GetDocumentByID(noteId) 11. 12. If Not doc.HasEmbedded Then Exit Sub 13. Set body = doc.GetFirstItem("file") 14. 15. REM Get attachments 16. Forall att In body.EmbeddedObjects 17. If att.Type = EMBED_ATTACHMENT Then 18. filepath$ = "D:/samples/" & att.Source 19. Call att.ExtractFile(filepath$) 20. Messagebox "Done" 21. Print filepath$ & " extracted" 22. End If 23. End Forall 24. End Sub如果要保存到客户端直接在客户端运行代理 25. 注意事項: Domino服務器需要開啟對代理運行權限,否則會報"Error Validating User's Agent Execution Access"錯誤,在Server端運行的代理也必須設置成level3的權限
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值