数据管理功能 > 管理部件结构 > Windchill 选项与变型功能 > 管理选项和变型的数据 - 参考 > 将数据加载到选项和变型中 > 条件型规则
  
条件型规则
使用 Windchill 加载程序将 com.ptc.windchill.option.model.ConditionalRule 对象加载到 Windchill 数据库中。
csvBeginConditionalRule 的属性
属性
说明
是必需还是可选?
csvnumber
规则名称或编号
可选
csvversion
规则的版本
可选
csviteration
规则的小版本
可选
csvdescription
规则说明
可选
csvruleType
规则类型
必需的
csvlocal
指定是否为本地规则
可选
csvoptionSet
指定为之创建本地规则的选项集
可选
csvcontainerPath
源选择所在上下文的路径
可选
csvlifecycletemplate
生命周期模板
可选
csvlifecyclestate
生命周期状态模板
可选
csvteamTemplate
团队模板
可选
csvmerged
指定是否已合并规则
可选
BeginAssignExpression 的属性
属性
说明
是必需还是可选?
csvexpression
由规则评估的表达式
必需的
AddLogicalExpression 的属性
属性
说明
是必需还是可选?
csvMemberNumber
规则名称或编号
可选
csvdescription
规则说明
可选
csvexpression
由规则评估的表达式
必需的
AddLogicalExpressionMember 的属性
属性
说明
是必需还是可选?
csvmemberName
选择名称
必需的
csvMemberNumber
规则名称或编号
可选
csvmemberClass
选择等级
必需的
csvcontainerPath
选择所在上下文的路径
可选
AddRuleMember 的属性
属性
说明
是必需还是可选?
csvmemberName
选择名称
必需的
csvMemberNumber
选择编号
可选
csvmemberClass
选择等级
必需的
csvcontainerPath
选择所在上下文的路径
可选
csvruleMemberAction
由规则执行的操作
必需的
示例
<!-- Conditional Rule -->
<csvBeginConditionalRule handler="com.ptc.windchill.option.load.Loader.beginConditionalRule">
<csvnumber>RED_APPLE</csvnumber>
<csvruleType>CONDITIONAL_RULE</csvruleType>
<csvcontainerPath/>
<csvmerged>true</csvmerged>
</csvBeginConditionalRule>
<csvBeginAssignExpression handler="com.ptc.windchill.option.load.Loader.beginAssignExpression">
<csvexpression>EXP0</csvexpression>
</csvBeginAssignExpression>
<csvAddLogicalExpression handler="com.ptc.windchill.option.load.Loader.addLogicalExpression">
<csvnumber>EXP0</csvnumber>
<csvexpression>AE_RED AND AE_APPLE</csvexpression>
<csvdescription>Allow red and apple</csvdescription>
</csvAddLogicalExpression>
<csvAddLogicalExpressionMember handler="com.ptc.windchill.option.load.Loader.addLogicalExpressionMember">
<csvmemberName>AE_RED</csvmemberName>
<csvmemberNumber/>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath>/wt.inf.container.OrgContainer=ATO Tests Organization/wt.pdmlink.PDMLinkProduct=ATOTests</csvcontainerPath>
<csvAddLogicalExpressionMember handler="com.ptc.windchill.option.load.Loader.addLogicalExpressionMember">
</csvAddLogicalExpressionMember>
<csvmemberName>AE_APPLE</csvmemberName>
<csvmemberNumber/>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath>/wt.inf.container.OrgContainer=ATO Tests Organization/wt.pdmlink.PDMLinkProduct=ATOTests</csvcontainerPath>
</csvAddLogicalExpressionMember>
<csvEndLogicalExpression handler="com.ptc.windchill.option.load.Loader.endLogicalExpression"/>
<csvEndAssignExpression handler="com.ptc.windchill.option.load.Loader.endAssignExpression"/>
<!-- Add Rules from the ChoiceRule to the Choices -->
<csvAddRuleMember handler="com.ptc.windchill.option.load.Loader.addRuleMember">
<csvmemberName>AE_RED</csvmemberName>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath>/wt.inf.container.OrgContainer=ATO Tests Organization/wt.pdmlink.PDMLinkProduct=ATOTests</csvcontainerPath>
<csvruleMemberAction>SELECT</csvruleMemberAction>
</csvAddRuleMember>
<csvAddRuleMember handler="com.ptc.windchill.option.load.Loader.addRuleMember">
<csvmemberName>AE_APPLE</csvmemberName>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath>/wt.inf.container.OrgContainer=ATO Tests Organization/wt.pdmlink.PDMLinkProduct=ATOTests</csvcontainerPath>
<csvruleMemberAction>SELECT</csvruleMemberAction>
</csvAddRuleMember>
<csvEndConditionalRule handler="com.ptc.windchill.option.load.Loader.endConditionalRule"/>
单独列出 "Then" 部分中的操作
如果规则已在 "Then" 部分列出多个操作,则具有相同操作的行可以合并或保持分离。例如,如果输入多行并选择“包括”操作,则这些选择可以合并在一个“包括”操作下的同一行中。前一示例显示了在合并行情况下的加载文件。为了保持各项操作与输入时一样分别位于单独的行中,请按如下所示在加载文件中对各行进行描述 (也可根据需要为其他各行添加类似部分)。请注意,ACTIONCHOICE_ACHOICE_B 必须替换为实际操作名称和选择名称。
<csvBeginRuleMemberAction handler="com.ptc.windchill.option.load.Loader.beginRuleMemberAction">
<csvruleMemberAction>ACTION</csvruleMemberAction>
</csvBeginRuleMemberAction>
<csvAddRuleActionMember handler="com.ptc.windchill.option.load.Loader.addRuleActionMember">
<csvmemberName>CHOICE_A</csvmemberName>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath/>
</csvAddRuleActionMember>
<csvAddRuleActionMember handler="com.ptc.windchill.option.load.Loader.addRuleActionMember">
<csvmemberName>CHOICE_B</csvmemberName>
<csvmemberClass>com.ptc.windchill.option.model.ChoiceMaster</csvmemberClass>
<csvcontainerPath/>
</csvAddRuleActionMember>
<csvEndRuleMemberAction handler="com.ptc.windchill.option.load.Loader.endRuleMemberAction"/>