if exists(select name from sysobjects where name='p_sfdj2' and type='p') drop procedure p_sfdj2 go create procedure p_Sfdj2 @vRQ nvarchar(10), @vBlh nvarchar(8), @vSFKS nvarchar(10), @vKSBM nvarchar(8), @vID nvarchar(4), @vMC nvarchar(40), @vGG nvarchar(20), @vDW nvarchar(8), @vDJ money, @vSL decimal(10,2), @vFy money, @vSfdm nvarchar(6), @vCZYBM nvarchar(8), @vCZYXM nvarchar(10) as begin transaction --更新ZYYL UPDATE ZYYL SET FY=FY+@vFy,JSSY=JSSY-@vFy WHERE BLH=@vBlh --更新住院费用 --1、先得到费用名称 declare @vSfmc as nvarchar(10) declare Get_Sfmc cursor for select hym from sfxm where sfdm=@vSfdm open Get_Sfmc fetch next from Get_Sfmc into @vSfmc close Get_Sfmc deallocate Get_Sfmc --2、记入数据 if exists(SELECT FYMC FROM ZYFY WHERE BLH=@vBlh AND FYMC=@vSfmc) begin--进行累加 UPDATE ZYFY SET FYJE=FYJE+@vFy WHERE BLH=@vBlh AND FYMC=@vSfmc end else --新增记录 begin INSERT ZYFY(BLH,FYMC,FYJE)VALUES(@vBlh,@vSfmc,@vFy) end --记医嘱流水帐 insert yzlsz( RQ, BLH,ZYCS, SFKS, KSBM, FYLB,FYID, MC, GG, DW, DJ, SL, JE,YSKS,YSBM,YSXM, CZYBM, CZYXM) values(@vRQ,@vBLH,null,@vSFKS,@vKSBM,@vSfmc,@vID,@vMC,@vGG,@vDW,@vDJ,@vSL,@vFy,Null,Null,Null,@vCZYBM,@vCZYXM) if @@error!=0 begin rollback transaction return end --完成 commit transaction
drop procedure p_sfdj2
go
create procedure p_Sfdj2
@vRQ nvarchar(10),
@vBlh nvarchar(8),
@vSFKS nvarchar(10),
@vKSBM nvarchar(8),
@vID nvarchar(4),
@vMC nvarchar(40),
@vGG nvarchar(20),
@vDW nvarchar(8),
@vDJ money,
@vSL decimal(10,2),
@vFy money,
@vSfdm nvarchar(6),
@vCZYBM nvarchar(8),
@vCZYXM nvarchar(10)
as
begin transaction
--更新ZYYL
UPDATE ZYYL SET FY=FY+@vFy,JSSY=JSSY-@vFy WHERE BLH=@vBlh
--更新住院费用
--1、先得到费用名称
declare
@vSfmc as nvarchar(10)
declare Get_Sfmc cursor
for
select hym from sfxm where sfdm=@vSfdm
open Get_Sfmc
fetch next from Get_Sfmc into @vSfmc
close Get_Sfmc
deallocate Get_Sfmc
--2、记入数据
if exists(SELECT FYMC FROM ZYFY WHERE BLH=@vBlh AND FYMC=@vSfmc)
begin--进行累加
UPDATE ZYFY SET FYJE=FYJE+@vFy WHERE BLH=@vBlh AND FYMC=@vSfmc
end
else --新增记录
begin
INSERT ZYFY(BLH,FYMC,FYJE)VALUES(@vBlh,@vSfmc,@vFy)
end
--记医嘱流水帐
insert yzlsz( RQ, BLH,ZYCS, SFKS, KSBM, FYLB,FYID, MC, GG, DW, DJ, SL, JE,YSKS,YSBM,YSXM, CZYBM, CZYXM)
values(@vRQ,@vBLH,null,@vSFKS,@vKSBM,@vSfmc,@vID,@vMC,@vGG,@vDW,@vDJ,@vSL,@vFy,Null,Null,Null,@vCZYBM,@vCZYXM)
if @@error!=0
begin
rollback transaction
return
end
--完成
commit transaction