天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 612|回复: 4

[已解决] 加重的代码没执行,能帮看看有什么问题?

[复制链接]
沈阳铁路局 发表于 2013-11-12 19:50:34 | 显示全部楼层 |阅读模式
本帖最后由 kimi 于 2013-11-14 17:30 编辑

var  bma=getItemValueAsString("编码");
var  mc=getItemValueAsString("食材名称");
var  dw=getItemValueAsString("计量单位");
var  cksl=getItemValueAsDouble("数量");
var  dj=getItemValueAsDouble("单价");
var  je=getItemValueAsDouble("金额");

var process = getDocumentProcess();     
var formProcess = getFormProcess();
var subform = formProcess.doView("11e3-49f6-89312a56-b305-71c79c6344e8");//表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
var doc = process.doNew(subform,getWebUser(),createParamsTable());
var sql="select * from  stgl.tlk_库存单 where item_编码 ='"+bma+"'";
//println(sql);
var datas = queryBySQL(sql);
//println(datas);
var value;
if(datas.size()>0){
        for (var iter = datas.iterator(); iter.hasNext();) {      
                var data = iter.next();            
value = data.getItemValueAsDouble("数量");
        }
        value-=cksl;
println(value);
var num = parseDouble(value);
if  (num<0 ){
        msg = "不允许透支,请检查支出数量!";
       
}
msg;

       data.findItem("数量").setValue(value);

//println(cksl);

        process.doUpdate(data);
}else
{
msg ="仓库中无此食材库存,不能支出!";
msg;

//doc.addDoubleItem("数量",cksl);
//doc.addStringItem("食材名称",mc);        
//doc.addStringItem("编码",bma);
//doc.addStringItem("计量单位",dw);  
//doc.addDoubleItem("单价",dj);
//doc.addDoubleItem("金额",je);
//process.doCreate(doc);
}
sophie 发表于 2013-11-13 09:15:45 | 显示全部楼层
您好,您打印一下num的值看是否满足执行条件呀?且您的value取提值不是Double类型么?怎么再转换一次呢?
kimi 发表于 2013-11-13 09:15:58 | 显示全部楼层
您好:麻烦您把代码改为类似如下:

  1. var  bma=getItemValueAsString("编码");
  2. var  mc=getItemValueAsString("食材名称");
  3. var  dw=getItemValueAsString("计量单位");
  4. var  cksl=getItemValueAsDouble("数量");
  5. var  dj=getItemValueAsDouble("单价");
  6. var  je=getItemValueAsDouble("金额");

  7. var process = getDocumentProcess();     
  8. var formProcess = getFormProcess();
  9. var subform = formProcess.doView("11e3-49f6-89312a56-b305-71c79c6344e8");//表单ID值。可以通过数据库客户端查看那张表的formid字段值就可以。
  10. var doc = process.doNew(subform,getWebUser(),createParamsTable());
  11. var sql="select * from  stgl.tlk_库存单 where item_编码 ='"+bma+"'";
  12. //println(sql);
  13. var datas = queryBySQL(sql);
  14. //println(datas);
  15. var value=0;
  16. var msg="";
  17. if(datas.size()>0){
  18.     for (var iter = datas.iterator(); iter.hasNext();) {      
  19.         var data = iter.next();            
  20.         value = data.getItemValueAsDouble("数量");
  21.     }
  22.     value=value-cksl;
  23.     println(value);
  24.     var num = parseDouble(value);
  25.         println(num+"   =====num====");
  26.     if(num<0){
  27.         msg = "不允许透支,请检查支出数量!";                
  28.     }else
  29.         {
  30.        data.findItem("数量").setValue(value);
  31.            process.doUpdate(data);
  32.         }      
  33. }else
  34. {
  35.     msg ="仓库中无此食材库存,不能支出!";

  36. //doc.addDoubleItem("数量",cksl);
  37. //doc.addStringItem("食材名称",mc);        
  38. //doc.addStringItem("编码",bma);
  39. //doc.addStringItem("计量单位",dw);  
  40. //doc.addDoubleItem("单价",dj);
  41. //doc.addDoubleItem("金额",je);
  42. //process.doCreate(doc);
  43. }
  44. msg;
复制代码
如果您说加重的地面没有执行,那就把您对于的if判断中的值打印出来,然后用debug模式调试啊,看您对应的值是否小于0啊
 楼主| 沈阳铁路局 发表于 2013-11-14 17:27:52 | 显示全部楼层
结贴         OK 谢谢
kimi 发表于 2013-11-14 17:30:28 | 显示全部楼层
嗯好的,感谢您的反馈。

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-13 08:15

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表