当我们将本地DGN文件上传到PW服务器上后,PW上的文件参考关系需要用PW Explorer中的Scan References and Link Sets...(右击文件夹可看到该菜单)来重建。其背后原因可参考如下文章:
PW如何管理设计文件的参考关系?哪些操作需要使用参考扫描工具对参考关系进行修复?
那么,如果想要自动化或批处理这个动作的话,我们可以借助于PW Explorer自带的一个外部程序ScanRefs.exe来完成。下面举例来说明操作步骤:
1、在Windows资源管理器中找到文件夹C:\Program Files (x86)\Bentley\ProjectWise\bin (ScanRefs.exe所在的文件夹)
2、在资源管理器地址栏中空白区点一下,会自动选中所有内容,键入cmd并回车能出现以该文件夹为当前目录的黑窗口。
3、在此黑窗口中键入如下命令实现对指定文件夹的参考扫描。
scanrefs.exe -d 数据源名称 -u 用户名 -p 密码 -masterfolders PW上的文件夹
实际测试结果如下:
C:\Program Files (x86)\Bentley\ProjectWise\bin>scanrefs.exe -d MyDatasource -u MyUsername -p MyPassword -masterfolders "TestWorkArea\ENFI-Correct" Logging in to datasource... Success Collecting data... Success Initializing scanner... Done Reference Scan Summary: Searched for 5 references in 4 documents Resolved 5 references Link Set Scan Summary: Searched for 0 links in 4 documents Resolved 0 links
【注】:-masterfolders后跟的文件夹名称是从PW数据源的Documents下一级开始的。比如,例子中的TestWorkArea\ENFI-Correct是位于指定PW数据源下的Documents下的。
较为简单的一种情况是,当您的PW账号和Windows账号集成后,输入scanRefs命令时可以不用带上用户名和密码,仅需指定数据源名称和文件夹即可。比如:
更复杂的一种情况是,参考文件和主文件不在同一个文件夹下(有可能在上级文件夹或下级文件夹中),此时需要带上参数 -proximity r:1。其中的1表示搜索的文件夹层级。该值可以根据实际情况做出修改。r表示搜索子文件夹,不带r则只会搜索父文件夹。
有关ScanRefs.exe的详细用法,请参考如下英文文章:
(45) Using ScanRefs.exe - ProjectWise Design Integration Wiki - ProjectWise - Bentley Communities