上一节 下一节

更新CAD文档中的信息

针对一个打开的CAD文档,我们可以通过CAD Reader 从中读取信息,也可以更新其中的信息,用来更新CAD文档中信息的,称为CAD Writer。CAD Writer 就和回写公式类似,只不过它所回写的,不是数据库中的数据表,而是CAD文档中的图元表。

说明:
 1.圆,文字,多行文字,直线,圆弧,椭圆可新增和修改;
 2.块只可新增;
 3.属性只可修改。

本节举一个Solidworks的例子,说明如何定义和使用CAD Writer。

通常在一个企业中,设计部门用CAD软件设计产品时,要遵守一些约定,比如,所有的文档中,都必须包含部件编码、设计者、部门等属性,这些属性的命名、类型等要统一。在下面的这个例子中,我们定义一个模板,用于录入企业统一规定的文件属性,然后定义一个CAD Writer,把已经存储在数据库中的统一的文件属性,自动写入到CAD文档中。

定义一个模板,录入统一的文件属性

定义一个模板,在其上定义一个明细表名为“PLM_标准文件属性”,并填报一张表单,输入内容,在我的工作台上显示如下:

定义CAD Writer

下面定义一个CAD Writer,将存储在“PLM_文件标准属性”中的属性名,写入到Solidworks文档中。

  1. 登录系统,进入“设计”栏目。
  2. 展开分类树的最后一个节点“CAD Writer”,选中其下的子节点“SolidworksWriter”。
  3. 点击列表工具栏按钮【新建】,出现下面的窗口。

输入公式名称,文档类型选择“Solidworks”;

在“操作对象”下拉列表中列出了所有可能被写入信息的Solidworks图元表表名,选择“属性”,右侧的下拉列表中是三种可以进行的写入操作:新增、修改和删除,我们选择“新增”;

选择SolidWorks Writer及其下分类;

应用时机勾选“手工”。

4.点击【数据源】,弹出“选择数据表”窗口,因为我们是要把已经录入到系统的标准属性写入到Solidworks文档中去,所以数据源选择“PLM_标准文件属性”表,点击【确定】,回到前面的窗口。

5.点击【筛选条件】,弹出“输入表达式”窗口。因为这条CAD Writer 是要往CAD文档的属性中新增,为了避免增加重复的属性,需要把文档中已有的属性过滤掉,所以在这里我们输入筛选条件为“PLM_标准文件属性.属性名不属于此集合(当前文档.属性.属性名)”。

6.点击【确定】,再次回到“CAD Writer”窗口。

7.点击【填充方式】,弹出“填充方式”窗口;

输入“属性名”的填充表达式为“PLM_标准文件属性.属性名”,“属性值”的填充表达式为“PLM_标准文件属性.默认值”;“配置名”的填充表达式为字符串常量“‘默认’”;

“属性类型”的填充表达式的稍微复杂,详见下步。

8.在“属性类型”的“提取数据…”列双击,弹出“输入表达式”窗口。注意看在此窗口的左上部“分类”树中,多了一项“<SolidWorks枚举.属性类型>”,这是因为,Solidworks的图元表“属性”的“属性类型”这个字段,有规定的取值范围,不能随意赋值,这个取值范围是一个名为“Solidworks枚举.属性类型”的枚举集合,选中这一项,在右侧“选项”栏中列出了这个枚举集合中的所有可选取值。

在“PLM_文件标准属性”表中,“类型”这个字段,分别用 S代表文字型、N代表数字型,所以在填充表达式中,我们用到了一个“条件取值”函数,当数据库中的类型字段是S时,对应的Solidworks中属性类型赋值为枚举值“Solidworks枚举.属性类型.文本”,当数据库中的类型字段是N时,对应的Solidworks中属性类型赋值为枚举值“Solidworks枚举.属性类型.实数”。最终定义好的填充表达式如下图所示。

9.点击【确定】回到“CAD Writer”窗口,定义完整的CAD Writer 如下:

应用CAD Writer

登录系统,进入文档管理栏目,签出并打开一个Solidworks 文档,在Solidworks 窗口中,选择菜单【CAD服务器】-【操作】,会看到其下有子菜单【SLW_设置标准属性】,这是我们所定义的CAD Writer 的名称。


点击【SLW_设置标准属性】,相应的CAD Writer 即被执行,为了检验其执行的效果,点击菜单【文件】-【属性】,在弹出的窗口中,会看到“PLM_文件标准属性”表中的那些属性都写到了当前文件中。



说明: 我们可以依28.4节中的步骤,在AutoCAD类型的【CAD Writer】回写公式中回写以下图形:圆,文字,多行文字,直线,圆弧,椭圆的颜色属性。

上一节 下一节