decimal r_skbl,r_mone
string r_sheetid,r_sheetid_xs,r_code1,r_code2,r_code3,r_code4,r_code5,r_code6,r_oper_code,r_note
integer r_yesno
date r_sheetdate
integer r_count,r_row,r_len
boolean r_flag=true
r_yesno = messagebox('提示','是否确认收款?',question!,yesno!,2)
if r_yesno =2 then return
r_code=sle_code1.text
//messagebox('tip',r_code1)
r_skbl=dec(sle_skbl.text)
r_sheetdate=date(dateem_skrq.text)
INSERT INTO SHEET_SK (SHEETID,SHEETDATE,OPER_CODE,SHEETID_XS,MONE,CODE,NOTE)
select table_xh.xh,sheetdate,oper_code,sheetid,mone,code,note from sheet_xs right join
(select sheetid sheetxsid,row_number() over(order by sheetid asc) xh from sheet_xs
where code= :r_code1) as table_xh
on sheet_xs.sheetid= table_xh.sheetxsid;
update sheet_sk
set sheetdate = :r_sheetdate;
//messagebox('tip',string(r_skbl))
update sheet_sk
set mone = mone * :r_skbl;
messagebox('tip',string(r_mone*r_skbl))
update sheet_sk set sheetid=right('000'+cast(sheetid as varchar),3);
//update sheet_sk set mone = :r_mone*:r_skbl;
//update sheet_sk set sheetdate = :r_skrq;
如何实现分批执行以上数据 不对表中已有的数据产生影响 只对新插入的数据进行相应计算?