DWG Sheet AutoDesk Forge 上的组合失败

DWG Sheet Combination failing on AutoDesk Forge

我们正在使用 Forge 将 STEP 文件导入 output.DWG 的模型空间。然后,一个 DLL 将几个 DWG 文件的模型空间几何图形组合成单个 DWG 的几个 layout/paperspace。这种 sheet 组合一直运行良好,直到最近组合过程完全停止。

Forge 最近有什么我们不知道的变化吗? Updates/patches,或可能导致此问题的类似原因?

这是生产应用程序的问题,此时被视为中断,并且对时间非常敏感。

编辑: 以下是我们注意到此过程生成的日志文件之间的一些差异。在第一部分中,AutoCAD 编写的措辞在提取过程中略有变化:

[08/01/2019 17:15:35] End downloading https://.... 1556909 bytes have been unpacked to folder T:\Aces\Jobs\a43e5ca7faaa4db8b5374aaef71b36d3\cadlayouts.

[08/19/2019 17:25:53] End downloading file https://.... 1771363 bytes have been written to T:\Aces\Jobs\d12f3bed13b84d29b31226222e3cf3c9\cadlayouts.

从 8 月 19 日开始的日志中,所有记录在之间的行:

Start AutoCAD Core Engine standard output dump.

并且:

End AutoCAD Core Engine standard output dump.

被写入两次,但这在 8 月 1 日的日志文件或该日期之前的任何日志中都没有发生。

编辑 2: 昨天我们使用 .NET DirectoryInfo class 将所有目录拉入一个列表,将所有文件拉入另一个列表并将它们全部写入日志。应该被识别为 目录 的 cadlayouts 实体(因为它是由 Forge 提取的 zip)被列为 文件 。我们的流程在工作项将 DWG 合并到输出之前运行 Directory.Exists() 检查,并且此调用 returns false 用于 cadlayouts 文件夹,绕过我们的组合逻辑。如果文件系统上的结果实体不被视为目录,Forge zip 提取过程如何才能正常工作?

听起来您有一个 zip 格式的输入参数,您希望将其解压缩到一个文件夹中。请查看下面 table 中的 第 4 行。我怀疑这就是你正在经历的。这里有 WAS 最近的变化:我们过去常常查看下载的位,如果找到 zip header 则无条件解压缩。 (即我们对第 3 行和第 4 行的操作相同)。我们现在只在您要求我们这样做时才这样做。

编辑:table 中的第一列是 Activity's parameters while the second column is the pathInzip attribute of Workitem's arguments 的 zip 属性的值。

+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| # | Activity   | Workitem        | Arg direction | Comments                                                                                                                                                    |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 1 | zip==true  | pathInZip!=null | input         | Zip is uncompressed to the folder specified in localname. Any path reference to this argument will expand to full path of pathInZip.                        |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 2 | zip==false | pathInZip!=null | input         | Zip is uncompressed to the folder specified in localname. Any path reference to this argument will expand to full path of pathInZip.                        |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 3 | zip==true  | pathInZip==null | input         | If zip is provided then it is uncompressed to the folder specified in localname. Any path reference to this argument will expand to full path of localName. |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 4 | zip==false | pathInZip==null | input         | If zip is provided then it is left compressed. Any variable referencing this argument will expand to full path of localName.                                |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 5 | zip==true  | pathInZip!=null | output        | Workitem will be rejected.                                                                                                                                  |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 6 | zip==false | pathInZip!=null | output        | Workitem will be rejected.                                                                                                                                  |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 7 | zip==true  | pathInZip==null | output        | Output(s) at localName will be zipped if localName is a folder.                                                                                             |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+
| 8 | zip==false | pathInZip==null | output        | Output at localName will not be zipped.                                                                                                                     |
+---+------------+-----------------+---------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------+