找回密码
 注册成为天翎用户
楼主: anten

[已解决] 两个子文档之间的数据关联更新

[复制链接]
bobo 发表于 2013-9-22 17:12:44 | 显示全部楼层
回复 10# anten


    麻烦您贴出您相应的代码,谢谢!
 楼主| anten 发表于 2013-9-22 17:17:29 | 显示全部楼层
回复 11# bobo


    //确定最低卖价和最高买价
var pdoc=getParentDocument();
var process = getDocumentProcess();

var docid=getCurrentDocument().getId();
var sql="select * from tlk_买报价 where parent='"+pdoc.getId()+"' order by item_买价 desc";
        println(sql+ "   ====sql===");
var doc=findBySQL(sql);
        println(doc+"     ======doc=====");

/*
var sellprice=getItemValueAsDouble("最低卖价");
        println(sellprice+"    ======最低卖价111======");
var buyprice=getItemValueAsDouble("最高买价");
        println(buyprice+"    ======最高买价222======");
*/

var tsql="select * from tlk_卖报价 where parent='"+pdoc.getId()+"' order by item_卖价";
        println(tsql+ "   ====tsql===");
var tdoc=findBySQL(tsql);
        println(tdoc+"     ======tdoc=====");

if(doc!=null){
        var value1=doc.getItemValueAsDouble("买价");
                println(value1+" ==value1==");
        var value2=tdoc.getItemValueAsDouble("卖价");
                println(value2+" ==value2==");
        pdoc.findItem("最高买价").setValue(value1);
                println(pdoc.getItemValueAsDouble("最高买价")+"    ======最高买价======");
        process.doUpdate(pdoc);
                println("1111111");
}       
                       
//根据成交条件判断是否能够成交,并实时更新数据
var jdoc=getRelateDocument();
var tcode=jdoc.getItemValueAsString("成交代码");
var tprice=jdoc.getItemValueAsDouble("成交价格");
var process=getDocumentProcess();
var tprice=0;
        println(tprice+"     ====tprice====");
        println(tcode+"    ======成交代码=====");       
        println(tprice+"   ====成交价格====");

if(value1>=value2){
        println(value1+"  ====value1===***");
        var tprice=(value1+value2)/2;
        println(tprice+"   ====tprice===***");
        jdoc.addStringItem("成交代码",tcode);
        jdoc.addDoubleItem("成交价格",tprice);
       process.doCreate(jdoc);
                println("     ====成交价格===="+tprice);
                               
        }else{
        var tprice=0.01;
               
        }
                println(tprice+"    ****===tprice====");
                println("***********************************************************************");
 楼主| anten 发表于 2013-9-22 17:21:41 | 显示全部楼层
回复 12# anten
执行结果:

    JsUtil:select * from tlk_买报价 where parent='11e3-206b-41d1ba92-8d6a-3fabe31aca9c' order by item_买价 desc ====sql===
JsUtilocument:交易管理系统/产品资料/产品交易/买报价
买家doctorli
买价600.0
冻结买金30.0
买价日期2013-09-22 16:39:45.0
======doc=====
JsUtil:select * from tlk_卖报价 where parent='11e3-206b-41d1ba92-8d6a-3fabe31aca9c' order by item_卖价 ====tsql===
JsUtilocument:交易管理系统/产品资料/产品交易/卖报价
冻结卖金0.0
卖价500.0
卖家tester
卖价日期2013-09-18 22:05:06.0
======tdoc=====
JsUtil:600 ==value1==
JsUtil:500 ==value2==
JsUtil:600 ======最高买价======
JsUtil:1111111
JsUtil:0 ====tprice====
JsUtil: ======成交代码=====
JsUtil:0 ====成交价格====
JsUtil:600 ====value1===***
JsUtil:550 ====tprice===***
org.mozilla.javascript.WrappedException: Wrapped com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '11e3-206b-41d1ba92-8d6a-3fabe31aca9c' for key 'PRIMARY' (11e3-1cfa-0814cf75-8d6a-3fabe31aca9c).保存afterActionScript#50)
at org.mozilla.javascript.Context.throwAsScriptRuntimeEx(Unknown Source)
at org.mozilla.javascript.MemberBox.invoke(Unknown Source)
at org.mozilla.javascript.NativeJavaMethod.call(Unknown Source)
at org.mozilla.javascript.optimizer.OptRuntime.call1(Unknown Source)
kimi 发表于 2013-9-22 17:37:20 | 显示全部楼层
本帖最后由 bobo 于 2013-9-22 18:03 编辑

您好:这里的错误提示您插入的主键值重复了,麻烦您仔细检查您的代码。q上已经给客户提供相关解决方案,客户正在尝试中
kimi 发表于 2013-9-23 18:07:21 | 显示全部楼层
您好:该问题的实践需求和http://www.teemlink.com/bbs/view ... 26amp%3Btypeid%3D12 帖子一直,故该贴关闭。

本版积分规则

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

GMT+8, 2026-9-27 02:21

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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