function CheckYPKCALL(vCFLSH0:string): Boolean;//判断处方药品库存是否足够 var ls_msg:string;//库存不足提示信息 begin result:=false; if YS_SFQYBCCFSPDYPKCDGN<>'Y' then begin result:=true; Exit; end; try with frmdb.qrycmd do begin close; sql.clear; sql.add('select A.SYSL00-A.WJFSL0 SJSYSL,A.* from VW_YS_YPSYKC A where A.CFLSH0=rpad(:CFLSH0,16,'' '')'); parambyname('CFLSH0').asstring:=vCFLSH0; open; if not isempty then begin first; while not eof do begin //A.CFLSH0,C.YPNM00,C.YPBM00,C.YPMC00,G.BMMC00 YFMC00 ls_msg:=ls_msg+#13#10+'【'+fieldbyname('YFMC00').asstring+'】 ' +fieldbyname('YPMC00').asstring+'('+fieldbyname('YPBM00').asstring+')' +'原预扣库存为:' +fieldbyname('SYSL00').asstring+fieldbyname('CFDW00').asstring +',未交费数量为:' +fieldbyname('WJFSL0').asstring+fieldbyname('CFDW00').asstring +',剩余预扣库存为:' +fieldbyname('SJSYSL').asstring+fieldbyname('CFDW00').asstring ; next; end; showmessage('存在库存不足的药品,请核对:'+#13#10+ls_msg); Exit; end else begin result:=true; Exit; end; end; except on e:Exception do begin //ExecuteSQL('rollback'); MsgBox('判断处方药品库存是否足够出现异常!',e.Message,''); exit; end; end; end;