编辑脚本路径:

保存数据(add ,set) 按照脚本执行的顺序顺序 


SCRIPT/SET/BEF   保存前

SCRIPT/SAVE/AFT//保存以后,查询结果以前,没有查询结果,reusult 为null ,若需更新保存后的数据在这里

SCRIPT/SET/AFT  保存以后,结果已经查询 , 

打开记录(get)

SCRIPT/GET/BEF   打开记录前

SCRIPT/GET/AFT   打开记录后



param 为编辑数据对象

result 参数为空



举例

  param.store("EDITDS").fv(0,'cgddid')       获得编辑数据集中的字段值

script.message = '保存完毕' + request.info().operation +

request.db().getValue('select count(*) from  t_cgdd',null)  + 

param.store("EDITDS").fv(0,"ecode" ) + "  cgddid "+

param.store("EDITDS").fv(0,'cgddid');

param.store("EDITDS").fv(0,"ecode" ,request.db().getNow())

<SCRIPT>

                               <SAVE>

                                       <AFT>

    var lp = new List();

    lp.add(param.store("EDITDS").fv(0,'zcrkid'));

    var lsSQL = "call srp_pro_generate_zcdn(?) " ;

    request.db().exeUpdate(lsSQL,lp);   

                                        </AFT>

                               </SAVE>

                       </SCRIPT>

<SCRIPT>

       <GET>

       <AFT>

script.message = '数据查询' + request.info().operation + request.db().getValue('select count(*) from  t_cgdd',null) 

+ param.store("EDITDS").fv(0,"ecode" ) + "  cgddid "+param.store("EDITDS").fv(0,'cgddid');


</AFT>

</GET>

<SAVE> 

                                       <AFT>

    var lp = new List();

    lp.add(param.store("EDITDS").fv(0,'cgddid'));

    var lsSQL = " update t_cgdd set tranmemo = 'abc'  where cgddid =  ? " ;

    request.db().exeUpdate(lsSQL,lp);  

                                       </AFT>

</SAVE>

<SET>

       <BEF>


script.returnValue =-1;

script.message ="不能保存" + param.store("EDITDS").fv(0,"ecode" ) ;



       </BEF>

       <AFT>


script.message = '保存完毕' + request.info().operation + request.db().getValue('select count(*) from  t_cgdd',null) 

+ param.store("EDITDS").fv(0,"ecode" ) + "  cgddid "+param.store("EDITDS").fv(0,'cgddid');



               </AFT>

</SET>

</SCRIPT>


举例

.... 

<ATTRIBUTE>

                       <SCRIPT>

                               <SAVE>

                                       <AFT>

/*扫码单数量,在保存后,查询数据之前调用*/

var lssql = "set @entityid = "+domain.entityId() +";  set @tranid ="+ param.store("EDITDS").fv(0,'ckdid') +";";

request.db().exeUpdate(lssql,null) ; 

lssql  ="select count(*)  from t_kcsmgl where entityid = @entityid and  tranid = @tranid; ";

if(request.db().getValue(lssql,null)==0) return;/*无数据*/

lssql  ="select count(*)  from t_ckdmx where ckdid= @tranid; ";

if(request.db().getValue(lssql,null)&gt;0) return;/*有数据*/

lssql  ="select count(*)  from t_ckdmxmd where ckdid= @tranid; ";

if(request.db().getValue(lssql,null)&gt;0) return;/*有数据*/

 /*生成码单 生成明细*/ 

lssql= "  insert into  t_ckdmx(wldnid,bpps,ywms,ckdid,eversion,xh) \

 SELECT  t_kcsmdmx.wldnid,if(t_ckd.sfth ='1' ,-1,1)*sum(t_kcsmdmx.bpps),if(t_ckd.sfth ='1' ,-1,1)*sum(t_kcsmdmx.ywms),@tranid,1,0 \

       FROM t_kcsmgl t_kcsmgl \

                 INNER JOIN  t_ckd on (t_ckd.ckdid = t_kcsmgl.tranid and t_kcsmgl.entityid =@entityid ) \

       INNER JOIN t_kcsmd t_kcsmd on (t_kcsmgl.kcsmdid = t_kcsmd.kcsmdid) \

       INNER JOIN t_kcsmdmx on (t_kcsmd.kcsmdid = t_kcsmdmx.kcsmdid) \

 where t_kcsmgl.entityid =@entityid and t_kcsmgl.tranid = @tranid \

 group by t_kcsmdmx.wldnid,t_ckd.sfth; ";

request.db().exeUpdate(lssql,null) ; 

lssql  =" insert into t_ckdmxmd(ckdmxid,mlzjmxmdid,bpps,ywms,ckdid,eversion,xh) \

  SELECT  t_ckdmx.ckdmxid, t_kcsmdmx.mlzjmxmdid,t_kcsmdmx.bpps,t_kcsmdmx.ywms,@tranid,1,0 \

  FROM t_kcsmgl t_kcsmgl \

 INNER JOIN t_kcsmd t_kcsmd on (t_kcsmgl.kcsmdid = t_kcsmd.kcsmdid) \

 INNER JOIN t_kcsmdmx on (t_kcsmd.kcsmdid = t_kcsmdmx.kcsmdid) \

  INNER JOIN  t_mlzjmxmd on (t_kcsmdmx.mlzjmxmdid = t_mlzjmxmd.mlzjmxmdid) \

 INNER JOIN t_ckdmx on (t_ckdmx.ckdid = @tranid and t_ckdmx.wldnid = t_mlzjmxmd.wldnid) \

 where t_kcsmgl.entityid =@entityid and t_kcsmgl.tranid = @tranid; ";

request.db().exeUpdate(lssql,null) ; 



                                       </AFT>

                               </SAVE>

                               <SET>

                                       <AFT>

/*更新仓库和库位信息*/

var lssql = " drop temporary table if exists tmp_id ;   \

create temporary table if not exists tmp_id(id bigint); \

insert into tmp_id (id) select mlzjmxmdid  from t_ckdmxmd  where ckdid= "+  param.store("EDITDS").fv(0,'ckdid');

request.db().exeUpdate(lssql,null) ;

system.service("MLZJD.DATA").exeShareFun(request,"update",param,result);

                                       </AFT>

                               </SET>

                       </SCRIPT>

               </ATTRIBUTE>

Created with the Personal Edition of HelpNDoc: Full-featured multi-format Help generator