如何在速度脚本中进行反向foreach搜索?

时间:2016-07-22 20:20:51

标签: velocity marketo

Marketo最近有10个可搜索的机会,不幸的是,我们拥有超过10个机会的大量用户。

似乎foreach循环从最近最近更新的机会开始,并在列表中向上运行到最近的更新机会。这里的问题是,当它们超过10时,脚本无法访问最近更新的那些机会。我们可以通过颠倒脚本搜索机会列表的顺序(通过反转foreach)来解决这个问题。

这是我们现在的设置(脚本在机会中查找一组条件,如果它找不到它们则查找不同的集合,依此类推)。

#set($stip_guid = ${StipList.get(0).stip_opp_guid})

#foreach($opportunity in $OpportunityList)
#if($opportunity.o_opportunity_guid == $stip_guid && $opportunity.o_clear_to_close_date)
Display Unique Copy A
#break
#elseif($opportunity.o_opportunity_guid == $stip_guid && $opportunity.o_sent_to_underwriting)
Display Unique Copy B
#break
#elseif($opportunity.o_opportunity_guid == $stip_guid && $opportunity.o_processing_received)
Display Unique Copy C
#break
#else
Default Copy 
#break#end#end

1 个答案:

答案 0 :(得分:0)

Marketo似乎没有提供可以扭转集合的工具。

但为什么不看指数而不是对象呢?

#set($max = $opportunityList.size() - 1)
#foreach($i in [ $max ..  0 ])
  #set($opportunity = $opportunityList[$i])
  ...
#end