/****** Object: StoredProcedure [dbo].[Clinic_EditOrder_before_Judge] Script Date: 2017-07-05 9:46:52 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO --alter 2017.3.3 ALTER proc [dbo].[Clinic_EditOrder_before_Judge] @ACF01 tinyint ,@VAA01 int ,@VAA07 int ,@ftype tinyint = 0 --0=门诊医师站 1=住院医师站 2=护士工作站 ,@fbckid int=0 as declare @smsg varchar(256),@blp04 int,@vaa10 int,@tvaf36 datetime,@bdate datetime set @bdate=GETDATE() --返回提示信息标记说明:=? 表示询问 ==表示提醒 没有前面两个表示限制 if @acf01 = 1 begin if exists(select * from BLP1 where BLP02 = 45 and blp04 > 0) begin select @blp04 = BLP04 from BLP1 where BLP02 = 45 and blp04 > 0 select @vaa10 = VAA10 from VAC1 where VAC01 = @vaa07 and AAU01='Y' if @vaa10 >= @blp04 and exists(select * from VCJ1 where VAA07 = @VAA07 and (isnull(VCJ04,'')='' or isnull(VCJ05,'')='') ) begin select @smsg= '病人超过'+cast(@blp04 as varchar)+'岁,必须要输入收缩压和舒张压.' RAISERROR(@smsg, 16, 1) with nowait RETURN 45 end end end if @acf01=2 begin if exists(select * from BLP1 where BLP02 = 84) begin if exists(select a.vaf01 from vaf2 a with(nolock) left join BBX1 b on b.bbx01 = a.BBX01 where a.VAF06 = @vaa07 and a.VAF10 in (8,9) and b.BDA01 = 'Z' and b.BBX13='6') begin select @tvaf36 = MAX(a.VAF36) from vaf2 a with(nolock) left join BBX1 b on b.bbx01 = a.BBX01 where a.VAF06 = @vaa07 and a.VAF10 in (8,9) and b.BDA01 = 'Z' and b.BBX13='6' if exists(select VAF01 from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后24小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>24) begin select @smsg= '=="'+ VAF22+' --术后24小时用药"抗菌药物术后用药已超过24小时,请及时停嘱,如果继续使用请在病程记录中说明理由.' from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后24小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>24 RAISERROR(@smsg, 16, 1) with nowait RETURN 2 end if exists(select VAF01 from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后48小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>48) begin select @smsg= '=="'+ VAF22+' --术后48小时用药 "抗菌药物术后用药已超过48小时,请及时停嘱,如果继续使用请在病程记录中说明理由.' from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后48小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>48 RAISERROR(@smsg, 16, 1) with nowait RETURN 2 end if exists(select VAF01 from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后72小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>72) begin select @smsg= '=="'+ VAF22+' --术后72小时用药 "抗菌药物术后用药已超过72小时,请及时停嘱,如果继续使用请在病程记录中说明理由.' from VAF2 where VAF06=@vaa07 and VAF10=3 and BIW02='术后72小时用药' and DATEDIFF(HOUR,@tvaf36,@bdate)>72 RAISERROR(@smsg, 16, 1) with nowait RETURN 2 end end end end