学习集成和使用Drools 3 问题和求教

阅读更多

   开始试着集成Drools 3到开发框架中去,选了一个典型的ERP中订单转生产来配置规则来做测试 做着做着问题就来了

  业务简要描述:

     来了1笔订单明细,首先查询库房有没有存货,有转销售,没有转订单要求生产, 生产根据Bom分解内容,需要订货的订货,自己加工的分解加工,涉及到调用流程/数据保存的地方已经很好的集成进去了,规则无非就是判断做什么,可是下面的问题就头痛了,也许是刚入门的缘故,希望那位懂Drools的指点一下

    -----------------------------------------

  1. 基础问题,检查库存 LHS里面如何检查我的数量,我在global内集成一个hib方法,可以查询数量,可我看了半天也没明白怎么在LHS使用,或者说是用变量?我希望在Rule里面实现下面的效果,其中,ds,wf是global中引用的类

  1. rule "库存不足"  
  2.        
  3.     when   
  4.         od:Orders(count > ds.queryCount(od))   
  5.     then    
  6.         wf.createFlow("订单生产",od);          
  7. end  

 ps:上面的东西是没法通过jrule ide检查的 

  2. 难道我要为每一个产品分解建立一条规则?实现倒是没有问题,不过感觉似乎比使用Bom表方式效率低太多,应该不是最好的解决方式  

  1. rule "产品_1配料清单"  
  2.   when    
  3.      pd:product( name =="产品1")   
  4.   then   
  5.     ......   
  6. end   

3.上面的东西都是逐一处理,当然也可以,批量的东西怎么引入规则或者设计?比如给一个 List, 其中一个detail或者所有detail来决定怎么处理 order怎么处理?

 

       也许问题很简单,也许我的用法就是错的,希望能有人指点一下。。

 

你可能感兴趣的:(电信,软件测试,Hibernate,工作,IDE)