我在工作中遇到了这个问题,我必须用iManage做很多事情(也就是FileSite,DeskSite,WorkSite等等)。也许你听说过。
无论如何,我要做的是编写一个VBA代码,它可以根据文件的InFin号(上传到iManage时分配给每个文件的7位数)下载一个特定的文件,然后将文件放在某个地方;例如,在桌面上。我知道iManage确实公开了一个对象模型,并且我已经设置了对IManExtLib.dll的引用
我相信我需要的命令是Copy.Cmd (我不想从WorkSite中删除某些内容,但只下载执行任务的文件副本)。
任何帮助都将不胜感激。
发布于 2017-11-06 17:15:38
假设您已经有一个DMS会话,您需要为您要获取的文档获取一个IManDocument对象,然后调用GetCopy方法。例如,以下内容检索到临时文件夹的文档编号123456的物理副本。注意,您需要添加对IManage.dll的引用,而不是IManExtLib.dll。
Dim dmsRoot As IManDMS
Dim dmsSession As IManSession
Dim dmsDatabase As IManDatabase
Dim doc As IManDocument
Dim tempDocName As String
Const ServerName As String = "YourDMS"
Const DatabaseName As String = "YourDatabaseName"
Const DocNumToFind = 123456
Const DocVerToFind = 1
tempDocName = "C:\temp\mydoc.doc"
Set dmsRoot = New ManDMS
Set dmsSession = dmsRoot.Sessions.Add(ServerName)
dmsSession.TrustedLogin
Set dmsDatabase = dmsSession.Databases.ItemByName(DatabaseName)
Set doc = dmsDatabase.GetDocument(DocNumToFind, DocVerToFind)
doc.GetCopy tempDocName, imGetCopyOptions.imNativeFormathttps://stackoverflow.com/questions/47139932
复制相似问题