背景:上下级单位交互文件,上级单位服务器A,下级单位服务器B,以通过邮件的形式交互。
目的:通过服务器B把文档发送到服务器A或通过服务器A把文档发送到服务器B
问题:通过如下代理把文件从服务器B发送到服务器A,但服务器A收到的所以文件form名都是“meno”,且原文件中相关的域和附件都没有传到服务A中,如何解决?
Dim tmpDoc As NotesDocument
Set tmpDoc = new notesdocument(curDb)
Call curDoc.CopyAllItems(tmpDoc)
tmpDoc.Form = "frmWebFlowMS"
tmpDoc.sendto = "dbme_app01"
Call tmpDoc.Send(False)
补充:
接收人是在同一台服务器(例如服务器A)内,则执行上面的代理就可以,为啥夸服务器就不行?
------解决方案--------------------
看看服务器配置文档里可信服务器那块配置对否。如果正确的话,还有如上现象,那就可能是CopyAllItems方法不支持跨服务器了。可以这样解决:配置函件库,把当前文档用函件发送的原理发到对应服务器的对应库中,在这个库中设置一个邮件到达时触发的代理,把收到的文档改了Form就行了。
------解决方案--------------------
tmpDoc赋值之后是不是要保存一下再发,不然赋值内容怎么能过去。
服务器之间的公文交换其实可以单独做一个模块来实现,交叉验证你都做好了,就能够使用代理直接访问对方的数据库,往里面写文档了。不一定要用邮件方式。
------解决方案--------------------
不同服务器间要走router吧?是不是因为这个被转换诶memo了?
其实没有必要用send吧?如果两台服务器做了信任,你可以直接从服务器A往服务器B创建一个文档呀~~
代理中获取serverb,获取db,直接new document