
IF  EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[FNMDL_PATOLOJI_GEREKTIREN_ISLEMDE_PAT_KONTROL]') AND xtype in (N'FN', N'IF', N'TF'))
DROP FUNCTION [dbo].[FNMDL_PATOLOJI_GEREKTIREN_ISLEMDE_PAT_KONTROL]
GO
CREATE FUNCTION [dbo].[FNMDL_PATOLOJI_GEREKTIREN_ISLEMDE_PAT_KONTROL](@HDOSYAID INTEGER,@MDLTEDAVITURU NVARCHAR(1))
RETURNS TABLE AS
RETURN
SELECT CASE WHEN PAT_AMLY_VAR=1 AND PAT_VAR=1 THEN 2
            WHEN PAT_AMLY_VAR=1 AND PAT_VAR=0 THEN 1
			END KONTROL, 'AmeliyatPatolojiKont.' KontrolAdi,
			'Fiyat Listesinde Patoloji Gerektiren İşlem olarak seçilmişler içerisinde Dosyaya Patoloji girilmiş mi?' Aciklama    FROM 
(
	SELECT
	      (SELECT CASE WHEN COUNT(*)>0 THEN 1  ELSE 0 END PAT_AMLY_VAR FROM VWHESAPISL H INNER JOIN TITEM ON TITEM.ITEMID=H.ITEMID WHERE H.IPTAL=0 AND H.HDOSYAID=HDOSYA.HDOSYAID AND PATOLOJIZORUNLU=1 ) PAT_AMLY_VAR,
	       (SELECT CASE WHEN COUNT(*)>0 THEN 1  ELSE 0 END FROM VWHESAPISL H  WHERE H.IPTAL=0 AND EXISTS( select * from dbo.PATOLOJIHIZMETLERILISTESI() P WHERE P.ITEMID=H.ITEMID AND H.HDOSYAID=HDOSYA.HDOSYAID )) PAT_VAR,
	
	HDOSYAID,MDLTEDAVITURU FROM HDOSYA WHERE HDOSYA.HDOSYAID=@HDOSYAID
) AS T
	
	

	