1、完整版)VC相关性语句 VC 相 关 性 语 句 目 录 1.相关性的作用 3 2.相关性的种类 3 3.相关性的使用范围: 3 4.相关性语法 3 5.相关性用法 6 5.1.前提条件 6 5.2.选择条件 7 5。3。活动 7 5。4.程序 7 5.4.1。某个可配置物料有颜色和电压2种特性,下面程序相关性的写法: 8 5.4.2。某自行车有以下特性 8 5。4。3.程序相关性中的缺省值写法 8 5.4.4。通过特性选择修改某一组件的BOM用量 9 1.相关性的作用 1.1描述或规范
2、特性与特性、特性值与特性值、特性与特性值之间的相互关系。 1.2控制超级BOM中项目的选择。 1.3对BOM的数据进行更改或计算。 2.相关性的种类 2.1前提条件 2.2选择条件 2.3活动 2。4程序 3.相关性的使用范围: 3.1>全局相关性:单独建立,可引用在多个对象,具有通用性,外部编号或命名. 3.2>局部相关性:针对某个特定的对象(如BOM、特性等)建立,只能在此对象中使用,只能内部编号。 4.相关性语法 4.1.常用规则: 4.1.1。直接使用特性的代码作为变量,因此特性的代码只能使用字母、数字、底线“_”,不能使用连接符“—”。 4。1。2.每个单
3、元之间用空格隔开(OD中要求,测试表明对语法检验无影响). 4。1。3.关键词及字符串是不区分大小写的,除非你在特性维护时定义了区分大小写. 4.1。4.定义为字符串的(char格式)的特性值必须包含在单引号内。 4.1。5.星号(*)在行的开始表示该行为注释行;要素的分割用逗号(,). 4.1.6.字符串处理 功能 语法 结果 Lower case (LC) Leather saddle = LC('Alpha') = 'alpha' Upper case (UC) Leather_saddle = UC('Alpha’) = ’ALPHA’ Concatenat
4、ion: || ’bus drivers’ || ’check on driving license' = 'bus drivers check on driving l' The string is cut off at a maximum of 30 characters。 4.2。关系运算符 语句 相关性中的使用 AND 与:AND Length = 300 and Width = 200 OR 或:OR Color = ‘red' or Basic_material = ‘wood' NOT 非:NOT. NOT (Color = ‘blue’)
5、NOT (Color = ‘red’ and Basic_material = ‘wood’) IF 条件:IF. Color = 'red’ if Model = ‘A' IN 取某个范围中的值 COLOR IN (‘red’,‘green’,‘blue’) COLOR IN (1 — 5) *Not …IN SPECIFIED 指明某特性必须分配值,用于前提条件、选择条件、活动和程序。 SPECIFIED COLOR *Not Specified TYPE_OF 即指明仅对某个对象生效,如TYPE_OF($ROOT,(Material)(300)(NR=‘U91
6、’))用在BOM项目的选择条件中时则说明此项目仅对抬头物料号是U91时才生效;NOT TYPE_OF则相反;两者不能使用在约束中,后者不能使用在活动. *Not TYPE_OF $ROOT 指配置的最上层对象 $SELF 指相关性分配的当前对象 $PARENT 指当前对象的上级对象 4。3.运算符号 加:+ ,减:—,乘:* ,除:/。 CHAR_WIDTH = CHAR_LENGTH / 4 Sin 正弦 Cos 余弦 Tan 正切 Exp 指数 Ln 对数 Abs 绝对值 Sqrt 平方根 Arcsin Arc sine (inverse
7、 function of sin) Arcos Arc cosine (inverse function of cos) Arctan Arc tangent (inverse function of tan) SIN (2*3。14 * ANGLE / 360) 4.4。取整 功能 描述 X = 3。1 X = -3.1 ceil 最小整数但是不小于X(向上取整) +4 —3 trunc 直接取整 +3 —3 floor 最大整数但是不大于X(向下取整) +3 -4 $SELF。CHAR_A = FLOOR ($SELF.CHAR_B + $SE
8、LF.CHAR_C + 0。5) 4。5。大小判断运算 说明 第一种语法 第二种语法 第三种语法 备注 Greater than 〉 GT 大于 Greater than or equal to 〉= => GE 大于等于 Less than < LT 小于 Less than or equal to 〈= =〈 LE 小于等于 Equal to = EQ 等于 Not equal to 〉〈 <〉 NE 不等于 4。6.间隔/区间的输入语法 用语句”IN"标示 1 LENGTH IN (5 - < 10)
9、 大于等于5小于10 2 LENGTH IN (5 — 10) 大于等于5小于等于10 3 LENGTH IN (〉 5 — < 10) 大于5小于10 4 LENGTH IN (> 5 — 10) 大于5小于等于10 5 LENGTH IN (5 — 10, >20, 40) 满足这些条件(大于等于5小于等于10,大于20,等于40) 5.相关性用法 5.1.前提条件 前提条件:指满足什么条件才出现某个特性或特性值。 作用: 1、需要隐藏的特性。 2、需要隐藏的特性值。 3、当有A时才出来B。 例:现有一配置物料 自行车 它的其中一个特性是MODEL
10、 特性 特性值 相关性 MODEL Racing Standard Mountain Tandem TANDEM_SADDLE MODEL = ’Tandem' 要求:如果当我们选择特性MODEL的特性值为Tandem时,则将原本隐藏的特性TANDEM_SADDLE显示出来 语句:MODEL = 'Tandem'( MODEL eq ’Tandem') 点评:这样写照成的效果 1、如果MODEL选择的特性值是Tandem,则我们能看见特性TANDEM_SADDLE 2、如果MODEL选择其它的特性值,则我们看不见特性T
11、ANDEM_SADDLE 3、如果MODEL什么值都没有选择,则我们能看见TANDEM_SADDLE,因为我们在语句中没有写相关的限制。 要求:如果当我们选择特性MODEL的特性值为Tandem时,则将原本隐藏的特性TANDEM_SADDLE显示出来,并且MODEL什么值都不选择时,要求TANDEM_SADDLE也不显示。 语句:MODEL eq ’Tandem' and Specified MODEL 例如:当不选中温控模块时则温控分类特性为隐藏,选中温控模块时,温控分类才允许选择; 在温控分类特性中维护:T_CONTROL specified。 5。2。选择条件 选择条件
12、指满足什么条件才选择某BOM项目或工序,也用于满足某条件指明某特性必须输入的限定。 作用:1、通过特性选择决定BOM组件. 2、通过特性选择决定特性中特性值的选择。 例:有一个物料号PD-TJ179SY需要设置,当布种(特性名:“BH_04”)的特性值为Q(“色织布”)时,需要经过翻纱工序,当布种(特性名:“BH_04”)的特性值为P(“凈色布”)时,不需要经过翻纱工序。 1>用CA02进入物料号PD—TJ179SY需要设置选择工序的工艺路线之工序.双击对像相关性之字段,添加选择条OD,OD的内容大致如下: BH_04 = 'Q’ and specified BH_04
13、 2〉此时,只有当布种特性值为Q才参代出翻纱工序.如果生产工单已创建,需要到生产工单中重读生产计划主资料。 示例2:当温控特性值选中220V时,则在BOM中选中对应的220V物料; $parent。t_control_class = '220V'. 5。3。活动 活动:可用于修改数据或计算,计算结果或修改结果不允许再修改,这项一般极少使用,通常使用程序替代。 5。4。程序 程序:通过一定的规则(或公式)根据相关条件推算出值.一个对象有多个程序时还可定义其执行顺序. 作用:1、超级BOM中组件的数量修改计算。 2、超级BOM抬头物料的数量修改计算。
14、 3、特性中的特性值的修改计算。 格式要求:程序相关性的书写要求要以$SELF。开头。 5。4.1.某个可配置物料有颜色和电压2种特性,下面程序相关性的写法: 0010 $SELF。COLOR = ‘GREEN’ IF PRESSURE >= 10 当PRESSURE的值大于等于10时COLOR的特性值为绿色 0020 $SELF。COLOR = ‘YELLOW’ IF PRESSURE 〉= 50 当PRESSURE值大于等于50时COLOR的特性值为黄色 0030 $SELF.COLOR = ‘RED’ IF PRESSURE 〉= 100 当PRESSU
15、RE的值大于等于100时COLOR的特性值为红色 5。4。2。某自行车有以下特性 特性 特性值 Weight calculation WEIGHT (3 figures, 1 decimal place) — FRAME Aluminum Steel 10KG 14KG EXTRAS (multiple-value) Mudguard Luggage rack 0.5 kg 1。0 kg 有个自行车有2种款式Aluminum(车重10KG)和Steel(14KG),外加两种可选配件Mudguard(0.5 kg)和Luggage rack(1。0KG)
16、 下面要求根据款式和可选配件的选择自动算出自行车的重量。 1。语句: 0010 $SELF。 WEIGHT = 10 if FRAME = ‘Aluminum’, 0020 $SELF。 WEIGHT = 14 if FRAME = ‘Steel’ , 0030 $SELF。WEIGHT = $SELF.WEIGHT + 0.5 if EXTRAS = ’Mudguard', 0040 $SELF。WEIGHT = $SELF。WEIGHT + 1 if EXTRAS = ’Luggage rack’ 说明:如果FRAME选择Aluminum,则WEIGHT的重量为10,
17、然后2种可选配的都要选择10+0.5+1=11。5。
5。4。3.程序相关性中的缺省值写法
作用:为某个值书写缺省值
格式:$SET_DEFAULT ($SELF,
18、计算出长 例:当选中温控模块时默认选中220V温控设备 $set_default($self,t_control_class,'220V’) IF $root。T_CONTROL specified. 5.4。4。通过特性选择修改某一组件的BOM用量 例:有一个物料号PD—TJ179SY,当布种(特性名:“BH_04”)的特性值为Q(“色织布”)时,需要将BOM中纱线用量由0。95修改成2。 1〉用CT04创建一个名称为“BH_99”的特性。 2〉在特性“BH_99”的“附加数据”页接口上设置( 表名=STOP,域名=MENGE),保存即可。 3>用CS02进到物料PD-TJ179SY的BOM接口,在需要修改用量的行项目中写入局部程序OD,OD的内容如下: $self.BH_99 = 2 IF BH_04 = 'Q’ 4〉此时,对未创建工单的计划订单,设置已生效。如果生产工单已创建,需要到生产工单中重读生产计划主资料.






