IF  EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[MEDWEB_GECMISTUMTETKIKLER]') AND xtype in (N'FN', N'IF', N'TF'))
DROP FUNCTION [dbo].[MEDWEB_GECMISTUMTETKIKLER]
GO
CREATE FUNCTION [dbo].[MEDWEB_GECMISTUMTETKIKLER](@HKIMLIKID int) 
RETURNS @retGecmisTetkikler TABLE 
(
	TETKIKTURADI nvarchar(50),
	ITEMADI nvarchar(150),
	HTETKIKID int,
	LTCKIMLIKNO nvarchar(25),
	LADISOYADI nvarchar(75),
	LDTARIHI datetime,
	LHYASI int,
	HCINSIYETI nvarchar(5),
	HDOSYAID nvarchar(50),
	LBOLUM nvarchar(50),
	LDOKTOR nvarchar(50),
	LUYGBOLUM nvarchar(50),
	LUYGDRADI nvarchar(50),
	UYGDRUNVAN nvarchar(50),
	UYGDRUZMANLIKADI nvarchar(100),
	HTETKIKKARTID INT,
	HKIMLIKID INT, 
	HTRAPORUVAR BIT,
	GIRISTARIH DATETIME
)
AS
BEGIN
	INSERT INTO @retGecmisTetkikler
	SELECT TETKIKTURADI, ITEMADI, HTETKIKID, LTCKIMLIKNO, LADISOYADI, LDTARIHI, LHYASI, HCINSIYETI, HDOSYAID, LBOLUM,
                 LDOKTOR, LUYGBOLUM, LUYGDRADI, UYGDRUNVAN, UYGDRUZMANLIKADI, HTETKIKKARTID, HKIMLIKID, CASE WHEN HTRAPORU IS NULL THEN 0 ELSE 1 END AS HTRAPORUVAR, GIRISTARIH 
	FROM VWTETKIK 
	WHERE HKIMLIKID = @HKIMLIKID AND DURUM = 2 AND WEBGORUNSUN = 1 	
	AND HDOSYAID NOT IN (SELECT HYATIS.HDOSYAID FROM HYATIS JOIN HESAPISL ON HESAPISL.HESAPISLID = HYATIS.HESAPISLID 
						WHERE HESAPISL.IPTAL = 0 AND HESAPISL.ONAYLI = 1 AND HESAPISL.TEKLIF = 0 
							AND HYATIS.HDOSYAID= VWTETKIK.HDOSYAID AND HYYATISTIPI=2 
							AND EXISTS (SELECT CONFIGID FROM CONFIG WHERE SECTIONSTR='Tetkik' AND KEYNAME='Webde yogun bakim tetkikleri gorunmesin' AND VALUESTR='1' )) 
	ORDER BY HTETKIKKARTID DESC, HTETKIKID DESC
    RETURN
END
GO

IF EXISTS (SELECT [name] FROM [sys].[database_principals] WHERE [type] = N'S' AND [name] = N'mediwebuser')
BEGIN
	BEGIN TRY
		GRANT SELECT ON [dbo].[MEDWEB_GECMISTUMTETKIKLER] TO [mediwebuser]
	END TRY
	BEGIN CATCH
	END CATCH
END
GO