上一篇都写总体上的认识,现在开始具体点,先把规则文件贴出来 <?xml version="1.0" encoding="UTF-8"?><xBusinessRules xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="xBusinessRules.xsd"> <!-- global values --> <Integer id="10i" value="10"/> <Integer id="40i" value="40"/> <ObjectLookup id="QuantityOrdered" objectId="CurrentOrder" member="Quantity"/> <Logic> <If> <And> <GreaterThanEqualTo leftId="ClientRating" rightId="ClientRatingThreshold"> <ObjectLookup id="ClientRating" objectId="CurrentOrder" member="ClientRating"/> <String id="ClientRatingThreshold" value="C"/> </GreaterThanEqualTo> </And> <Do> <!-- Discount rules for high rate customers --> <Logic> <If> <And> <GreaterThan leftId="QuantityOrdered" rightId="40i"/> </And> <Do> <Evaluate id="AppliedDiscount"> <Parameter name="Percent" value=".7"/> </Evaluate> </Do> </If> <ElseIf> <And> <GreaterThan leftId="QuantityOrdered" rightId="10i"/> </And> <Do> <Evaluate id="AppliedDiscount"> <Parameter name="Percent" value=".8"/> </Evaluate> </Do> </ElseIf> <Else> <Evaluate id="AppliedDiscount"> <Parameter name="Percent" value=".9"/> </Evaluate> </Else> </Logic> </Do> </If> <Else> <!-- Discount rules for low rate customers --> <Logic> <If> <And> <GreaterThan leftId="QuantityOrdered" rightId="40i"/> </And> <Do> <Evaluate id="AppliedDiscount"> <Parameter name="Percent" value=".9"/> </Evaluate> </Do> </If> <Else> <Evaluate id="AppliedDiscount"> <Parameter name="Percent" value="1"/> </Evaluate> </Else> </Logic> </Else> </Logic></xBusinessRules> 以下是关于上面的规则文件写的伪码 int 10i = 10;int 40i = 40;Order order;QuantityOrdered = CurrentOrder.QuantityOrdered;//数量string ClientRatingThreshold = "C";//等级 相关文章: 2021-07-07 2021-06-22 2021-12-03 2021-11-18 2021-11-18 2021-08-17 2021-06-14