基础管理 > 支持协作 > 工作流管理 > 工作流工具 > 工作流模板管理 > 工作流代码示例 > 票数计数器 > 投票示例:三个事件
  
投票示例:三个事件
在此示例中,有一个包含 10 位成员的团队。团队正在为他们的队服设计新衬衫。
团队正在投票以选出要采用的颜色。给出了三种路由选择事件:
蓝色
黄色
红色
每位成员都是必需的参与者。
WfTally.any
您可以投票选择蓝色、黄色或红色。
新衬衫的设计可包含票数等于或大于 1 的所有颜色。
路由类型
表达式
投票
结果
“手工排除”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.any(self, userEvents);
黄色 9 票
蓝色 0 票
红色 1 票
黄色和红色
WfTally.all
您可以投票选择蓝色、黄色、红色或任意几种颜色。
如果每位用户都投票选择了某一种颜色,即某一种颜色票数为 10,则在新衬衫设计中将包含该颜色。
如果没有一种颜色收到来自每位用户的投票,即没有票数为 10 的颜色,则不会设计新衬衫。
路由类型
表达式
投票
结果
“手动”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.all(self, userEvents);
黄色 8 票
蓝色 3 票
红色 9 票
没有新衬衫
WfTally.all
您可以投票选择蓝色、黄色或红色。
如果每位用户都投票选择了蓝色,即蓝色票数为 10,则新衬衫将为蓝色。
如果每位用户都投票选择了黄色,即黄色票数为 10,则新衬衫将为黄色。
如果这些用户投票选择了多种颜色,则新衬衫将为红色。
路由类型
表达式
投票
结果
“手工排除”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Specify the result.
result = WfTally.all(self, "Blue", "Red");
if (result != "Blue")
{
result = WfTally.all(self, "Yellow", "Red");
}
黄色 8 票
蓝色 2 票
红色 0 票
红色
WfTally.percent
您可以投票选择蓝色、黄色、红色或任意几种颜色。
衬衫可包含票数超过 30% 的所有颜色。
有关详细信息,请参阅计数操作符
路由类型
表达式
投票
结果
“手动”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.percent(self, WfTally.GT, 30, userEvents);
黄色 7 票
蓝色 4 票
红色 2 票
黄色和蓝色
WfTally.number
您可以投票选择蓝色、黄色、红色或任意几种颜色。
如果某种颜色票数等于或大于 3 票,则新衬衫设计中将包含该颜色。
有关详细信息,请参阅计数操作符
路由类型
表达式
投票
结果
“手动”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.number(self, WfTally.GTE, 3, userEvents);
黄色 2 票
蓝色 9 票
红色 3 票
蓝色和红色
WfTally.plurality
您可以投票选择蓝色、黄色或红色。
衬衫采用票数最多的颜色。
如果票数最多的颜色的票数相同,则新衬衫将包括票数相同的所有颜色。
路由类型
表达式
投票
结果
“手工排除”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.plurality(self, userEvents);
黄色 2 票
蓝色 4 票
红色 4 票
蓝色和红色
WfTally.notPlurality
您可以投票选择蓝色、黄色或红色。
新衬衫采用票数最少的颜色。
如果票数最多的颜色的票数相同,则新衬衫将包括票数相同的所有颜色。
路由类型
表达式
投票
结果
“手工排除”
//Get the object that represents this activity.
WfAssignedActivity mySelf = ((WfAssignedActivity)self.getObject());
//Get the routing events for this activity.
Vector userEvents = (Vector)mySelf.getUserEventList();

//Specify the result.
result = WfTally.notPlurality(self, userEvents);
黄色 2 票
蓝色 4 票
红色 4 票
黄色
相关主题