# 介绍 配置中望CAD图纸模板,便于用户直接使用规范式的标题栏与明细表,并在编写明细表的时候能够直接从三品PLM系统中调用已存在的物料进行相应编辑,编辑完的图纸能够直接在PLM系统内自动生成BOM结构 ==特别说明:无论任何CAD软件,建议设置默认图纸保存版本为2010,建议保存图纸为2010版本== 对标题栏、明细栏的制作,需要先找到中望CAD的自定义样式文件夹,该文件夹默认情况下位于 **C盘** → **用户** → **公共文档** → **ZWSoft** → **ZWCADM** → 里面有中望CAD安装过的各个版本,选择对应的版本 → **Style** → **GB文件夹**,这便是中望CAD的自定义样式文件夹 > 例如 > > 我的中望CAD自定义样式文件夹位于: > > `C:\Users\Public\Documents\ZWSoft\ZWCADM\2020\zh-CN\styles\GB` 其中与标题栏、明细栏相关的文件夹共有三个,分别是drwFBlock、drwTBlock、parList,相关文件有两个,分别是BomStyles.xml、TitleStyles.xml ![image-20240702221647118](../1.0-EDM/assets/image-20240702221647118.png) ## 前置要求 掌握中望CAD绘图、属性定义等基础操作 # 制作标题栏 与标题栏相关的文件夹是drwTBlock,将其打开可见中望CAD默认制作好的五个标题栏与对应的配置文件。此后自定义的标题栏模板也会保存在此 ![image-20240702222150566](../1.0-EDM/assets/image-20240702222150566.png) 以标题栏1为基础制作新的标题栏,使用中望CAD将标题栏1打开,我们可以在标题栏1的基础上进行修改 ![image-20240702222510501](../1.0-EDM/assets/image-20240702222510501.png) ## 标题栏模板制作 使用 “ attdef ” 命令定义属性,也可在 绘图 选项栏中选择 块 → 定义属性,也可以按住 CTRL键拖动属性进行复制 要编辑属性可以直接对该属性双击进行编辑 属性定义分有两种情况: - **系统填写 → 属性名称可自定义,对正方式为布满** - **系统提取 → 勾选 “ 模式 ” 中的 “ 多行 ”,对正方式为 “ 中心 ”** 相关的属性落点如何选择,可以参考 [属性落点](15.AutoCAD图纸模板制作.md#属性落点) 系统填写即该属性无需用户填写,在使用PLM系统管理该图纸时,PLM系统会进行填写,如签名、签字日期等,这种情况类似于制作word、excel文档模板,**属性名称可自定义**,**无需勾选 “ 多行 ”,设置对正方式为布满及相应的文字高度**即可 系统提取即该属性不由PLM系统进行填写,如名称、图号等,用户在制作图纸后进行填写,PLM系统会提取这些属性记录到系统中,故而需**勾选 “ 多行 ”,设置对正方式为中心及相应的文字高度**即可(只有AutoCAD需要属性标记与PLM系统中保持一致) ![image-20240702224457427](../1.0-EDM/assets/image-20240702224457427.png) 与AutoCAD的不同之处在于,中望CAD中,属性的命名可以是中文的 ![image-20240702225232693](../1.0-EDM/assets/image-20240702225232693.png) 制作完成之后,需要将其制作成块,在 **机械** 选项卡中,选择 **系统维护工具** 选项,并选择 **自定义标题栏** (如果是对已定义的标题栏做修改,则不用重做成块,直接保存即可) ![image-20240702230558215](../1.0-EDM/assets/image-20240702230558215.png) 选择后,中望CAD要求输入块名称,此名称就是标题栏文件名称,完成后回车 ![image-20240702230749845](../1.0-EDM/assets/image-20240702230749845.png) 再选择基点,选择标题栏的右下角即可 ![image-20240702230842530](../1.0-EDM/assets/image-20240702230842530.png) 再选择实体,将整个标题栏全部选取中即可 ![image-20240702230925551](../1.0-EDM/assets/image-20240702230925551.png) 选取完成后回车,即可进入 **属性块定义** 界面,如果需要由PLM系统写入数据,则参考 [属性与系统集成](#属性与系统集成) 进行操作 ![image-20240703091750000](../1.0-EDM/assets/image-20240703091750000.png) 如果不需要,点击确定后等待右下角出现如图提示 ![](../1.0-EDM/assets/Pasted%20image%2020240703101854.png) 出现提示说明中望CAD已在自定义样式文件夹中创建出了对应的标题栏文件(XXX.dwg,XXX和输入的块名称相同),接下来可关闭该文件,直接进行 [配置文件编制](#标题栏配置文件编制) 操作 关闭时询问是否要保存修改到 `标题栏1.dwg` 中,选择 否 即可(避免 标题栏1.dwg 受到修改) ![](../1.0-EDM/assets/Pasted%20image%2020240703102124.png) ### 属性与系统集成 在 **属性块定义** 界面,需要对属性的 **内部名称** 进行设置,**为了与系统集成,需要要采用系统内部的名称** ![image-20240703092246887](../1.0-EDM/assets/image-20240703092246887.png) 编辑完成后点击确定即可,后台会生成对应的标题栏文件,文件名称与自定义标题栏时输入的块名称相同 #### 如何查询系统内部的名称? 在 **系统设置** → **参数配置** → **系统参数** → **数据定义相关** → **对象属性定义** → **物料** 中查询,如图所示 ![image-20240703092435329](../1.0-EDM/assets/image-20240703092435329.png) 并不是所有属性都要与系统内部名称保持一致,对于**希望三品PLM系统写入数据,需保持与系统内部名称一致**,对于**不需要系统写入的数据,则不用改变** > 注意:**属性块定义** 的内部名称不能重复 案例 > 希望系统写入数据 > > 如:物料分类,物料编码 > > | ![image-20240703095154728](../1.0-EDM/assets/image-20240703095154728.png) | ![image-20240703095227117](../1.0-EDM/assets/image-20240703095227117.png) | > | ------------------------------------------------------------ | ------------------------------------------------------------ | > > 效果:系统会自动写入物料编码与物料分类 > > 无需系统写入数据 > > 如:日期 > > ![image-20240703095542865](../1.0-EDM/assets/image-20240703095542865.png) > > 效果:由中望CAD写入日期 ## 标题栏配置文件编制 一个标题栏文件对应一个配置文件,这个配置文件并不是自动生成的,需要手动创建,选择 default1.xml 进行复制、粘贴即可,命名建议与标题栏文件名相同 ![image-20240702222150566](../1.0-EDM/assets/image-20240702222150566.png) > 例如:新做的标题栏模板名称为Test,为了便于管理,配置文件的名称也命名为Test即可 > > ![image-20240703103234145](../1.0-EDM/assets/image-20240703103234145.png) 打开配置文件后,需要对相关的属性进行编制 在配置文件中,每一条以 “ Attribute ” 开头的文本都代表一条属性,这些属性需要与标题栏对应 新增属性只要将已有的 “ Attribute ” 复制、粘贴出来,修改其Name与Label即可,**Name必须要等于 “ 属性块定义 ” 中的 “ 内部名称 ”,Label则要等于 “ 属性块定义 ” 中的 “ 显示名称 ”** ![image-20240703104758343](../1.0-EDM/assets/image-20240703104758343.png) 确保必要的属性都添加到配置文件中,并且Name和Label没有错误后保存配置文件即可 完成这一步后需要将制作好的[标题栏与中望CAD绑定](#绑定标题栏),这样就可以在中望CAD中通过图幅设置直接将标题栏创建出来了 ### 配置文件扩展 在配置文件中,以``为例 相关参数: - **Name**:属性名,在程序中引用此属性时使用的标识符。 - **Label**:在UI中显示的属性标签,即用户看到的描述性文本。 - **DefaultValue**:默认情况下属性的值。 - **DataType**:数据类型,`VT_BSTR` 指的是基本字符串类型。 - **ControlType**:这个参数指定了用户界面中用于编辑该属性的控件类型。`CMB_DOWN` 表示这是一个下拉组合框(combo box),用户可以从列表中选择一个值,也可以手动输入一个值。 - **ControlValue**:这个参数提供了下拉列表中的选项值,用分号(`;`)分隔。在这个例子中,`ControlValue="李龙;任叶凯;宋丹丹;黄赓;刘遥彬;"` 定义了一个预设的下拉列表,包含了5个可选的名字。当用户在标题栏或明细表中遇到这个属性时,他们可以从这些名字中选择,或者输入一个不同的名字。 - **ControlExpr**:这是一个表达式,用于计算属性的值。它可以是空白(""),表示没有计算逻辑,或者包含一个表达式,根据其他属性或条件动态设置属性值。 - **CanEmpty**:是否允许属性值为空。 - **IsUniquely**:是否要求属性值在所有实例中唯一。 - **IsKey**:是否作为主键,通常用于数据库中标识唯一记录。 - **AutoIncreased**:是否自动递增,常用于序列号之类的属性。 - **Editable**:是否允许编辑,即用户是否可以更改属性值。 # 制作明细栏 与标题栏相关的文件夹是partList,将其打开可见中望CAD默认制作好的明细表头、明细表体以及对应的配置文件。此后自定义的标题栏模板也会保存在此 ![image-20240703114120136](../1.0-EDM/assets/image-20240703114120136.png) 以明细表表头模板制作为例,使用中望CAD将明细表头打开,我们可以在此基础上进行修改 制作方式与 [标题栏模板制作](#标题栏模板制作) 相仿,可进行参考 ![image-20240703114224914](../1.0-EDM/assets/image-20240703114224914.png) 制作完成之后,需要将其制作成块,在 “ 机械 ” 选项卡中,选择 “ 系统维护工具 ” 选项,并选择 “ 自定义明细表表头 ” (如果是对已定义的明细表表头做修改,则不用重做成块,直接保存即可) ![image-20240703114539865](../1.0-EDM/assets/image-20240703114539865.png) 后续操作参考[标题栏模板制作](#标题栏模板制作),基本一致 ## 明细栏配置文件编制 表头、表体模板制作完成后,需要编制配置文件,操作方式与[标题栏配置文件编制](#标题栏配置文件编制)相仿,**明细表表头与明细表表体共同对应一个配置文件**,这个配置文件并不是自动生成的,需要手动创建,选择 default.xml 进行复制、粘贴即可,命名建议与标题栏表头文件名相对应 ![](../1.0-EDM/assets/Pasted%20image%2020240703123919.png) 打开配置文件后,需要对相关的属性进行编制 在配置文件中,每一条以 “ Attribute ” 开头的文本都代表一条属性,这些属性需要与标题栏对应 新增属性只要将已有的 “ Attribute ” 复制、粘贴出来,修改其Name与Label即可,**Name必须要等于 “ 属性块定义 ” 中的 “ 内部名称 ”,Label则要等于 “ 属性块定义 ” 中的 “ 显示名称 ”** ![image-20240703104758343](../1.0-EDM/assets/image-20240703104758343.png) 确保**表头、表体必要的属性都添加到配置文件中**,并且Name和Label没有错误后保存配置文件即可 完成这一步后需要将制作好的[明细栏与中望CAD绑定](#绑定明细栏),这样就可以在中望CAD中通过图幅设置直接将明细栏创建出来了 # 与中望CAD绑定 ## 绑定标题栏 标题栏制作完成后,还需要与中望CAD进行绑定,才能在中望CAD中通过图幅设置直接将自定义的标题栏创建出来 在 drwTBlock 的同级目录下找到 “ TitleStyles.xml ” 文件 ![image-20240703111141528](../1.0-EDM/assets/image-20240703111141528.png) 将其打开后,其中一条 “ TitleStyle ” 就代表一个标题栏,与[配置文件编制](#标题栏配置文件编制)相似,将已有的 “ TitleStyle ” 复制、粘贴,修改其 Name、Label、**TemplFile**、**AttFile** 即可 ![image-20240703111224544](../1.0-EDM/assets/image-20240703111224544.png) 参数说明: - Name 可以自定义 - Label 则是显示在中望CAD中的标题栏名称,可以自定义(在 TitleStyles.xml 中 Label 是啥,标题栏这里就叫啥) ![image-20240703111932495](../1.0-EDM/assets/image-20240703111932495.png) - **TemplFile 必须要与标题栏模板文件名称保持一致** ![image-20240703112245104](../1.0-EDM/assets/image-20240703112245104.png) - **AttFile 必须要与标题栏配置文件名称保持一致** ![image-20240703112245104](../1.0-EDM/assets/image-20240703112245104.png) - Default 如果希望图幅设置时,默认选择某个标题栏,那么设置其Default为1,其他标题栏的Default为0即可 完成后保存即可,再次打开中望CAD便能够在 “ 图幅设置 ” 中选择到自定义的标题栏 ## 绑定明细栏 明细栏制作完成后,还需要与中望CAD进行绑定,才能在中望CAD中通过图幅设置直接将自定义的明细栏创建出来 在 partList 的同级目录下找到 “ BomStyles.xml ” 文件,该文件设置方式与[绑定标题栏](#绑定标题栏)相仿,此处不作介绍 完成后保存即可,再次打开中望CAD便能够在 “ 图幅设置 ” 中选择到自定义的明细栏 # 与系统绑定 ## 前置要求 完成自定义标题栏、明细栏制作,并与中望CAD绑定,完成 [中望CAD接口安装](20.中望CAD接口安装.md) 创建出一个带标题栏与明细栏的文件(选择任意一个标题栏与明细栏即可) ![image-20240703131138290](../1.0-EDM/assets/image-20240703131138290.png) 使用 “ XH ” 命令标注序号,或选择 机械 → 序号/明细表 → 标注序号 ![image-20240703131604067](../1.0-EDM/assets/image-20240703131604067.png) 标记出序号后,使用 “ MX ” 命令生成明细表,或选择 机械 → 序号/明细表 → 生成明细表 ![image-20240703131740122](../1.0-EDM/assets/image-20240703131740122.png) 生成后样式如下,进行保存即可 ![image-20240703131825395](../1.0-EDM/assets/image-20240703131825395.png) ## 属性映射 接下来在系统中进行属性映射配置,对于要从图纸中提取的属性,就需要进行映射 使用admin账号登录三品PLM系统,选择 **系统设置** → **CAD接口** → **可配置块** → **属性映射** → **重新配置** ![image-20240703132105812](../1.0-EDM/assets/image-20240703132105812.png) 在常见CAD块名中选择 **中望CAD机械版** ![image-20240703132218660](../1.0-EDM/assets/image-20240703132218660.png) 标题栏块名、明细表头块名、表体块名,必须以`ZwmFrameMain_`开头,表头必须以`_H`结尾,表体则必须以`_B`结尾 ![image-20240703132422724](../1.0-EDM/assets/image-20240703132422724.png) ### 标题栏块名 打开 “ TitleStyles.xml ” 文件,复制默认的标题栏标签,对 “ 属性映射 ” 窗口中的标题栏块名进行替换,只要替换掉下划线以后的部分即可 ![image-20240703133306569](../1.0-EDM/assets/image-20240703133306569.png) 对于有多个标题栏的情况,配置方法不变,在 “ 标题栏块名2 ” 中写入即可 ![image-20240703133444392](../1.0-EDM/assets/image-20240703133444392.png) 两个以上,需要在 “ 标题栏块名2 ” 中使用 “ `|` ” 分隔(把自定义的标题栏添加进去即可) ### 明细表块名 完成标题栏块名填写后,进行明细表块名填写,打开 “ BomStyles.xml ” 文件,复制默认的明细表标签,对 “ 属性映射 ” 窗口中的明细表块名进行替换 ![image-20240703134020527](../1.0-EDM/assets/image-20240703134020527.png) 多个明细栏,其配置方式也是用 “ `|` ” 分隔(把自定义的标题栏添加进去即可) ### 提取 完成 “ 块名指定 ” 后点击提取,选择刚才创建的文件,能够将图框中的属性提取到系统内 ![image-20240703140733516](../1.0-EDM/assets/image-20240703140733516.png) 最后为要提取的属性进行对应的设置,完成后点击保存即可 ![image-20240703140822828](../1.0-EDM/assets/image-20240703140822828.png) # 补充 可能会出现 [填写CAD属性,中文显示成问号](../../报错处理/填写CAD属性,中文显示成问号.md) 的问题 ,那么是因为当前字体中不包含中文字符,可以使用 `ST` 命令,在 **文字样式** 中调整文字样式使用的字体 ![image-20250110094008966](../1.0-EDM/assets/image-20250110094008966.png) 如果是后缀为 `.shx` 的CAD专用字体,那么可以勾选 **大体字** ![image-20250110094026032](../1.0-EDM/assets/image-20250110094026032.png)