青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 2684|回复: 14

NX11批量部件属性设置工具(支持单一部件)!

[复制链接]
发表于 2017-1-19 18:57 | 显示全部楼层 |阅读模式
本帖最后由 jefft 于 2017-1-19 19:06 编辑 $ R- G$ K% n$ J4 B4 j6 ^
) ~1 @, E4 z5 ?% c4 d
一、二次开发背景  J  V: I" U3 `7 _( E0 a& M3 W2 o
      2014年,我当时所在的公司刚上PLM系统,PLM系统中间有一个映射表,是用来提取NX装配各部件属性的,最终就在PLM里面形成了BOM表;这就要求工程师在上传每一个NX部件的时候,都要对该部件设置属性。(且属性的名字,不能随意,要与PLM的映射表对应。)' D0 o: t" t0 l) O6 D3 L
       而NX的每个部件,默认打开是不会自动去写属性的,所以西门子官方推出了一个GC工具,可以利用它来写属性,而属性的关键字要在gc_tool.cfg里面去配置。(只要看过我教程的就知道怎么弄), W# V7 f6 F2 m6 }
       尽管GC工具给我们带了一定的方便,但还是有很多的不足,比如:①GC工具中的属性工具那个对话框太难调了;②每次打开这个命令都要先弹一个警告;③该命令只能对单一部件设置属性。
+ @% X& ~+ S  i4 r* Z& U: l       根据我的观察,很多工程师,并不会设计好一个零件(.prt)就马上对该零件(.prt)去设置属性,往往都是装配好了一堆零件,想出图了,才发现,还有很多的部件没有设置属性。这个时候,带来的繁琐操作,就是要不断的在很多的部件中来回切换,次数搞多了,都不记得某一个部件刚才设置了属性没有。
( m2 l- c# o- ?        因此,2014年,我旁边的模具科有个同事,就问我,有没有一个功能,可以打开一个界面,一次性把所有的部件属性设置好,点确定就搞定。根据我对NX的理解,目前没有直接的功能来实现这个,但有一个差点的方法,操作起来也相当繁琐的。
+ f( N/ Y& e  ~0 D2 J. R        刚好这几天没有啥事,我就花了点时间,把这个功能给二次开发出来了,一个完全支持扩展的命令,自认为还是些许“高大上”的,有兴趣的往下看。
# I7 c$ C( M9 W( C二、工具下载
7 G3 L# w; t- d1 A  O# u+ \" ~     1、 前提:安装我本人开发的“森焱工具V11.2.0”版,截止2017年1月19日未开放下载。计划在2017年2月3日开放下载,下地址: 链接: http://pan.baidu.com/s/1pKCFQmJ 密码: gn8t
2 Z+ H% s/ I1 X) A7 H3 r: Z) ~6 y/ ~、工具使用方法
) @# A3 a& [% u! ~4 m6 H
      1、工具安装好以后可以在下图的位置看到这个命令。
" z5 V9 \. ~$ q  @
# [/ D3 [% S& n6 O1 j# Q 批量属性01.jpg 2 r2 n# m8 N6 R* p' E4 N
     2、当打开这个命令的时候,出现下图这样。部件名那一列,自动读取了装配树结构(已经做了打包功能),而右边列显示的多少,以及标题的名字等,都是通过本地的\NX 11.0\TKLTOOLS\Configuration\Tangkl_Set_ATT.xml 文件来配置的,如果你觉得这些属性的名字,不是你想要的,只要更改这个配置文件就可以了。. R3 j' T/ J$ t! Y( m' f0 L  y4 c
批量属性02.jpg
( D# G4 v1 g- ]3 J6 y5 i     3、如果本身部件已经存在属性了,打开这个命令的时候,就会显示出属性来。如下图:这时你可以检测是否正确,然后再更改它。0 H, c9 ]5 I: o
8 P6 ]1 I/ |9 _% |' [! V: v
批量属性03.jpg
1 @% W$ w; l4 I5 ^2 @       4、更改内容的时候,支持下拉列表。如下图:而下拉列表的选项内容,是通过\NX 11.0\TKLTOOLS\Configuration\more_part_attr_comboBox_values.xml 来进行配置的,你可以把你常用的下拉列内容,配置好。
! n& b( H" X, I 批量属性04.jpg
3 w0 @- U( E8 C      5、支持鼠标右键的一些操作。) T; @* x8 O" m/ \+ a
      ① 设置同列显示:这个功能的开发是因为,当有很多个部件的时候,在设置属性,比如设计人员,都是我:有100行,可能就要设置100次,你可以使这个功能,一次性把100行全部设置成相同的内容;(此处的菜单数量是动态的,是由.xml文件决定的,更改了.xml文件,菜单会显示不同。)
! ~% Q0 Z  w2 s6 t      ② 展开与折叠功能:这个是用来设置树列表中,带+号的地方是否要被展开与折叠;, v, R9 M4 K/ H0 X- M/ }+ T
      ③ 自动列宽与取消自动列宽功能:因为每一个“单元格”的内容长度是不一致的,为了方便你观看,你可以使用这两个功能;
( I4 d% v, C  B# S7 u8 B      ④ 刷新日期:该功能可以把树中,日期那一列,全部填写为今天的日期;$ F8 ^1 ~& ?4 w
      ⑤ 刷新重量:该功能是自动计算每个部件的质量,单位为克,并且写到树中,重量那一列。(这个功能本来可以在一打开对话框就显示出来的,之所以没有这样做,是为了用户更好的体验,零件越多,计算重量的时间越长,如果时长太长,用户点了命令很多都不弹出对话框,人家还不知道是怎么回事,所以,就设置成右键,让用户根据需要去刷新这个重量。)
! r3 l) ~1 ]0 l( D1 {      ⑥ 清除树内容:清除掉已经显示在树中的属性内容;
& C( H/ u1 [2 p- L# c& v# I 批量属性05.jpg 7 [# Q# I8 ~% ?: e7 |* A
、动画显示
3 i2 I% c  i. ]9 n3 T2 y2 U
      1、基于以上叙述几点,可以用下列动画来说明。' i( Y1 u8 p/ }4 L
批量部件属性动画01.gif
& k$ }# H, `$ X- A      2、配置.xml文件的方法7 B- F0 c' k! K; _8 g
批量部件属性动画02.gif 4 r- a" v8 ^4 m
五、未来升级功能+ W7 e8 M- F6 x* C6 J
      目前这个批量写属性,基本用起来没有什么问题,但如果有几百个部件,要来写属性,可能有点问题。比如零件名字这一列,你几百行就要写几百次,在NX的树结构里面来写文字,是否不是很方便,并且也不能像电子表格那去去拖一下,整列递增什么的。虽然我现在开发成了大家点一下右键,来设置同列显示内容相同,但可能有些用户觉得还是没有电子表格操作方便 。
5 V" v% L" j8 X$ u) n; h4 F      如果有必要,以后,我再在右键增加一个功能,让当前的树内容导出成excel,然后大家在excel里面编辑了相关内容,再导入到树列中,然后点确定,然后的然后就是,所有的部件属性已经填完了。
8 M' c( |4 F5 m4 i; ~, ]% w% l/ K2 c9 d' k: v- I" T0 {: [/ N# i- e# N

9 a# H1 _" l) [% S1 r& i2 E& G6 e7 m/ p: Z
发表于 2017-1-19 21:53 | 显示全部楼层
学习    谢谢
回复 支持 反对

使用道具 举报

发表于 2017-1-20 08:20 | 显示全部楼层
慢慢的你走向了顶峰,而我还在原地慢慢爬。
回复 支持 反对

使用道具 举报

发表于 2017-1-20 09:52 | 显示全部楼层
我是UG爱好者,看了LZ的帖子,我只想说一句楼上的贴很好!UG论坛好强大!
回复 支持 反对

使用道具 举报

发表于 2017-1-20 11:16 | 显示全部楼层
非常有用的功能
回复 支持 反对

使用道具 举报

发表于 2017-2-28 10:14 | 显示全部楼层
楼主好强大,我也只是在原地踏地,向楼主敬礼!
回复 支持 反对

使用道具 举报

发表于 2017-3-5 12:03 | 显示全部楼层
实用工具,谢谢楼主!
回复 支持 反对

使用道具 举报

发表于 2017-3-27 20:39 | 显示全部楼层
学习一下。应该会有帮助的。
回复 支持 反对

使用道具 举报

发表于 2017-4-1 14:26 | 显示全部楼层
啥也不说了,楼主是铁杆级的ug爱好者,就是给力!UG论坛更给力!
回复 支持 反对

使用道具 举报

发表于 2017-11-6 20:45 | 显示全部楼层
这个如何才能在UG9.0上运行
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2024-4-28 06:54 , Processed in 0.059239 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表