- 论坛徽章:
- 0
|
create procedure "informix".st_billheadcancel(__SheetID char(16),__UserCName char( ) returning int;
define __Err,__BreakPoint,__ISAM int;
define __Msg varchar(255);
define __BeginWork smallint;
define __PayableMoney dec(12,2);
define __SupplyID int;
define __SheetType int;
ON EXCEPTION SET __Err,__ISAM,__Msg
if __BeginWork = 1 then
rollback;
end if;
raise exception -746,0,'Err='||__Err||',Msg='||__BreakPoint||'-'||__Msg
END EXCEPTION
let __SheetType = 5203;
let __BreakPoint = 721610;
let __BeginWork = 0;
begin work;
update Billhead0 Flag=0,note=nvl(note,'')||__UserCName||'取消' where SheetID=__SheetID;
if DBInfo('sqlca.sqlerrd2')=0 then
raise exception -746,0,'结算单'||__SheetID||'并不存在!';
end if;
end work;
let __BreakPoint = 721620;
insert Billhead9 select * from Billhead0 where sheetid=__sheetid;
let __BreakPoint = 721630;
delete BillheadKXItem0 where sheetid=__sheetid;
let __BreakPoint = 721632;
execute ST_BillCancel1(__SheetID);
commit;
end procedure |
|