IF  EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[SPUSS_262_HASTA_NAKIL_BILGILERI]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
DROP PROCEDURE SPUSS_262_HASTA_NAKIL_BILGILERI
GO

CREATE PROCEDURE [dbo].[SPUSS_262_HASTA_NAKIL_BILGILERI] 
	@HDOSYAID INT=0,
	@HNAKILID INT=0,
	@TUMUNUTEKRAR BIT = 0
AS
BEGIN

	--SPUSS_262_HASTA_NAKIL_BILGILERI 271704,5,1
	DECLARE @HATA NVARCHAR(2000) = ''
	DECLARE @MESAJ NVARCHAR(2000) = ''
	DECLARE @SAYIHATA BIT = 0
	DECLARE @XMLBASLIK NVARCHAR(2000) = ''
	DECLARE @SUBEID INT = 1
	DECLARE @GONDERIMTABLOSU TABLE 
		(
			GONDERILECEKXML XML,
			HATA NVARCHAR(2000),
			MESAJ NVARCHAR(2000),	
			XMLBASLIK NVARCHAR(3500),
			TABLOID INT,
			MINID INT,
			MAXID INT
		)

	IF OBJECT_ID('tempdb..#TMPHNAKILBILDIR') IS NOT NULL 
		DROP TABLE #TMPHNAKILBILDIR

	IF OBJECT_ID('tempdb..#TMPISLEMDOSYA') IS NOT NULL 
		DROP TABLE #TMPISLEMDOSYA

	SELECT	   SUBELER.SUBEADI AS SUBELER_SUBEADI,			
			   HDOSYA.SUBEID AS HDOSYA_SUBEID,
			   HDOSYA.SNOTAKIPNO AS HDOSYA_SNOTAKIPNO,
			   HDOSYA.MDLTAKIPVAR AS HDOSYA_MDLTAKIPVAR,			   	   
			   HDOSYA.MDLTAKIPNO AS HDOSYA_MDLTAKIPNO,
			   ISNULL((SELECT TOP 1 VALUESTR FROM CONFIG WITH(NOLOCK) WHERE SECTIONSTR='Saglik-Net' AND PROGNAME='MEDISOFT' AND KEYNAME= CONVERT(VARCHAR,HDOSYA.SUBEID)+' numaralı şubenin kurum numarası'),'') AS SAGLIKNETKURUMKODU,
			   ISNULL((SELECT TOP 1 VALUESTR FROM CONFIG WITH(NOLOCK) WHERE SECTIONSTR='E-Nabız' AND PROGNAME='MEDISOFT' AND KEYNAME= 'E-nabız SGK Bildirim ID'),'2') AS ENABIZSGKBILDIRIMID
		INTO #TMPISLEMDOSYA
		FROM HDOSYA WITH(NOLOCK)
			 LEFT JOIN SUBELER WITH(NOLOCK) ON SUBELER.SUBEID = HDOSYA.SUBEID
		WHERE   
			  HDOSYA.HDOSYAID = @HDOSYAID



SELECT 
				HASTAHUKUMLUMU AS HHUKUMLUMU,
				HASTAADLIVAKAMI AS HADLIVAKAMI,
				HKANGRUBU AS HKANGRUBU,
				TRIAJ AS TRIAJ,
				NABIZSAYISI AS NABIZSAYISI,
				SISTOLIKKANBASINCIDEGERI AS SISKANBASINCIDEGERI,
				DIASTOLIKKANBASINCIDEGERI AS DIASTOLIKKANBASINCIDEGERI,
				BILINC AS BILINC,
				KANSEKERI AS KANSEKERI,
				ATES AS ATES,
				SOLUNUM AS SOLUNUM,
				SOLUNUMSAYISI AS SOLUNUMSAYISI,
				SOLUNUMISLEMI AS SOLUNUMISLEMI,
				NAKLINTALEPEDILDIGIZAMAN AS NAKLINTALEPEDILDIGIZAMAN,
				NAKILTALEPEDENTELEFON AS NAKILTALEPEDENTELEFON,
				NAKILTALEPEDENKLINIK AS NAKILTALEPEDENKLINIK,
				HASTANINBULUNDUGUKLINIK AS HBULUNDUGUKLINIKID,
				NAKILEDILMEKISTENDIGIKLINIK AS NAKILEDILMEKISTENDIGIKLINIK,
				HASTANAKILTIPI AS HNAKILTIPI,
				GERCEKLESTIRILMESIISTENENKOMUTAMERKEZI AS ISTKOMUTAMERKEZI,
				HYAKINIAD AS HYAKINIAD,
				HYAKINISOYAD AS HYAKINISOYAD,
				HYAKINITEL AS HYAKINITEL,
				HYAKINIACIKADRES AS HYAKINIADRES,
				GLASKOWGOZLER AS GOZLER,
				GLASKOWMOTOR AS MOTOR,
				GLASKOWSOZEL AS SOZLER,
				PATOLOJIKMUAYENEBILGILERI AS PATMUAYENEBILGI,
				TETKIKBILGILERI AS TETKIKBILGILERI,
				YAPILANMEDIKALISLEMLER AS YAPMEDISLEMLER,
				ISTENENMEDIKALISLEMLER AS ISTMEDISLEMLER,
				SEVKEDILENKURUMDANYAPILMASIISTENENMEDIKALISLEMLER AS SEVKEDKRMISTMEDISLEMLER,
				EPIKRIZBILGISIBASLIK AS EPBILGIBASLIK ,
				EPIKRIZBILGISIACIKLAMA AS EPBILGIACIKLAMA,
				ICD10 AS ICDTANI,
				LABCA AS LABCA,
				LABCO2 AS LABCO2,
				LABCRP AS LABCRP,
				LABETCO2 AS LABETCO2,
				LABFIO2 AS LABFIO2,
				LABHCO3 AS LABHCO3 ,
				LABK AS LABK,
				LABNA AS LABNA,
				LABPH AS LABPH,
				LABPO2 AS LABPO2,
				LABSPO2 AS LABSPO2,
				YDGESTASYONHAFTASI AS GESTASYONHAFTASI,
				YDAPGAR1 AS APGAR1,
				YDAPGAR5 AS APGAR5,
				YDDOGUMAGIRLIGI AS DOGUMAGIRLIGI,
				YDDOGUMYONTEMI AS DOGUMYONTEMI,
				YDMEVCUTAGIRLIGI AS YDMEVCUTAGIRLIGI,
				TRANSFERNEDENLERIACIKLAMA AS TRANSNEDENACIKLAMA,
				TRANSFERNEDENLERISEVKNEDENI AS TRANSNEDENSEVKNEDENI,
				TRANSPORTMALZEME AS TRANSPORTMALZEME,
				TRANSPORTMALZEMESAYISI AS TRANSPORTMALZEMESAYISI,
				SEVKHEKIMAD AS SEVKHEKIMAD,
				SEVKHEKIMSOYAD AS SEVKHEKIMSOYAD,
				SEVKHEKIMKIMLIKNUMARASI AS SEVKHEKIMKIMLIKNO,
				SEVKHEKIMTELEFONNUMARASI AS SEVKHEKIMTELNO,
				KABULEDENKURUMIL AS KABULEDENKURUMIL,
				KABULEDENKURUM AS KABULEDENKURUMID,
				KABULEDENKLINIK AS KABULEDENKLINIK,
				KABULEDENKLINIK.KLINIKADI AS KABULEDENKLINIKADI,
				KABULEDENPERSONELADI AS KABULEDENPERSONELADI,
				KABULEDENPERSONELSOYADI AS KABULEDENPERSONELSOYADI,
				KABULEDENPERSONELTELEFON AS KABULEDENPERSONELTEL,				 
				TKANGRUBU.KANGRUBU AS KANGRUBU,
				TKANGRUBU.KANGRUBUID AS KANGRUBUID,
				TALEPEDENKURUM.ADI AS NAKLITALEPEDENKURUMADI,
				TALEPEDENKURUM.KODU AS NAKLITALEPEDENKURUMID,
				KABULEDENKURUM.ADI AS KABULEDENKURUMADI,
				BULUNDUGUKLINIK.KLINIKADI AS BULUNDUGUKLINIKADI,
				NAKILISTENDIGIKLINIK.KLINIKADI AS NAKILISTENDIGIKLINIKADI,
				TALEPEDENKLINIK.KLINIKADI AS NAKILTALEPEDENKLINIKADI,
				KOMUTAMERKEZI.ADI AS KOMUTAMERKEZIADI,
				TSOLUNUM.SOLUNUMADI AS SOLUNUMADI,
				TICD.ICDADI AS ICDADI,
				TDOGUMYONTEMI.DOGUMYONTEMI AS DOGUMYONTEMIADI,
				DOKTORIHTIYACI AS DOKTORIHTIYACI,
				TEYITLIVAKAMI AS TEYITLIVAKAMI,
				NAKILYOLU AS NAKILYOLU,
				TSEVKNEDENI.SEVKNEDENADI AS SEVKNEDENIADI,
				BOY AS BOY,
				KILO AS KILO,
				TIL.IL AS KABULEDENKURUMILADI,
				TPERSONELBRANS.PERSONELBRANSADI	AS BRANSADI,
				BRANSIHTIYACI AS BRANSIHTIYACI,				
				HDOSYA.GSSACIKLAMA AS GSSACIKLAMA

		INTO #TMPHNAKILBILDIR
		FROM HNAKILBILGILERI
			 INNER JOIN HDOSYA WITH(NOLOCK) ON HDOSYA.HDOSYAID = HNAKILBILGILERI.HDOSYAID	
			 LEFT JOIN TKANGRUBU  WITH(NOLOCK) ON TKANGRUBU.KANGRUBUID = HNAKILBILGILERI.HKANGRUBU	
			 LEFT JOIN KURUMLAR TALEPEDENKURUM WITH(NOLOCK) ON  TALEPEDENKURUM.KODU = HNAKILBILGILERI.NAKILTALEPEDENKURUM
			 LEFT JOIN KURUMLAR KABULEDENKURUM  WITH(NOLOCK) ON  KABULEDENKURUM.KODU = HNAKILBILGILERI.KABULEDENKURUM
			 LEFT JOIN KURUMLAR KOMUTAMERKEZI  WITH(NOLOCK) ON  KOMUTAMERKEZI.KODU = HNAKILBILGILERI.GERCEKLESTIRILMESIISTENENKOMUTAMERKEZI
			 LEFT JOIN TKLINIK TALEPEDENKLINIK   WITH(NOLOCK) ON TALEPEDENKLINIK.KLINIKKODU = HNAKILBILGILERI.NAKILTALEPEDENKLINIK	
			 LEFT JOIN TKLINIK BULUNDUGUKLINIK  WITH(NOLOCK) ON BULUNDUGUKLINIK.KLINIKKODU = HNAKILBILGILERI.HASTANINBULUNDUGUKLINIK
			 LEFT JOIN TKLINIK KABULEDENKLINIK  WITH(NOLOCK) ON KABULEDENKLINIK.KLINIKKODU = HNAKILBILGILERI.KABULEDENKLINIK	
			 LEFT JOIN TKLINIK NAKILISTENDIGIKLINIK  WITH(NOLOCK) ON NAKILISTENDIGIKLINIK.KLINIKKODU = HNAKILBILGILERI.NAKILEDILMEKISTENDIGIKLINIK
			 LEFT JOIN TSOLUNUM WITH(NOLOCK) ON TSOLUNUM.SOLUNUMID = HNAKILBILGILERI.SOLUNUM
			 LEFT JOIN TICD WITH(NOLOCK) ON TICD.ICDKOD = HNAKILBILGILERI.ICD10	 
			 LEFT JOIN TDOGUMYONTEMI WITH(NOLOCK) ON TDOGUMYONTEMI.DOGUMYONTEMIID = HNAKILBILGILERI.YDDOGUMYONTEMI	 
			 LEFT JOIN TSEVKNEDENI WITH(NOLOCK) ON TSEVKNEDENI.SEVKNEDENADI = HNAKILBILGILERI.TRANSFERNEDENLERISEVKNEDENI
			 LEFT JOIN TIL WITH(NOLOCK) ON TIL.ILID = HNAKILBILGILERI.KABULEDENKURUMIL	
			 LEFT JOIN TPERSONELBRANS WITH(NOLOCK) ON TPERSONELBRANS.PERSONELBRANSKODU = HNAKILBILGILERI.BRANSIHTIYACI
		WHERE 
			HDOSYA.HDOSYAID = @HDOSYAID AND
			HNAKILBILGILERI.HNAKILBILGILERIID = @HNAKILID




	IF (SELECT COUNT(*) FROM #TMPHNAKILBILDIR) = 0
	BEGIN
		SET @SAYIHATA = 1
		SET @MESAJ = @MESAJ + '262 Hasta Nakil Bilgileri paketi için işlem kaydı bulunamadı! '
	END



	IF (SELECT COUNT(*) FROM #TMPISLEMDOSYA WHERE HDOSYA_SUBEID IS NULL) > 0 
		SET @HATA = @HATA + 'İşlemin şube kaydı bulunamadı! '

    IF NOT  EXISTS(SELECT NAKLITALEPEDENKURUMADI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Nakli Talep eden kurum adı girilmemiş! '

    IF NOT  EXISTS(SELECT HBULUNDUGUKLINIKID FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Hastanın bulunduğu klinik adı girilmemiş! '

    IF NOT  EXISTS(SELECT NAKILTALEPEDENKLINIK FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Nakli talep eden klinik adı girilmemiş! '

    IF NOT EXISTS(SELECT NAKLINTALEPEDILDIGIZAMAN FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Naklin Talep edildiği zaman bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT NAKILEDILMEKISTENDIGIKLINIK FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Nakil edilmek istenen klinik bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT HNAKILTIPI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Nakil tipi bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT ISTKOMUTAMERKEZI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Komuta merkezi bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT ICDTANI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'ICD tanı bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT SISKANBASINCIDEGERI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Sistolik kan basıncı bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT DIASTOLIKKANBASINCIDEGERI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Diastolik kan basıncı bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT SOLUNUM FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Solunum bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT SOLUNUMISLEMI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Solunum işlemi bilgisi girilmemiş! '

    IF NOT EXISTS(SELECT BILINC FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Bilinç durumu bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT GOZLER FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Glaskow gözler bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT SOZLER FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Glaskow sözel bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT MOTOR FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Glaskow motor bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT EPBILGIACIKLAMA FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Epikriz açıklama bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT EPBILGIBASLIK FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Epikriz başlık bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT SEVKHEKIMAD FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Hekim ad bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT SEVKHEKIMSOYAD FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Hekim soyad bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT SEVKHEKIMTELNO FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Hekim telefon bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT SEVKHEKIMKIMLIKNO FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Hekim TC kimlik bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT TRANSNEDENSEVKNEDENI FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Transfer sevk nedeni bilgisi girilmemiş! '

   IF NOT EXISTS(SELECT TRANSNEDENACIKLAMA FROM #TMPHNAKILBILDIR )
		SET @HATA =@HATA+  'Transfer açıklama bilgisi girilmemiş! '

		
	IF @HATA='' AND @SAYIHATA=0 
	BEGIN		
		SELECT @SUBEID = HDOSYA_SUBEID FROM #TMPISLEMDOSYA
		DECLARE @TBLXMLBASLIK TABLE (XMLBASLIK NVARCHAR(2000), HATA NVARCHAR(2000),MESAJ NVARCHAR(2000))
		INSERT INTO @TBLXMLBASLIK (XMLBASLIK, HATA, MESAJ) EXEC SPUSS_000_XML_BASLIK @SUBEID		
		SELECT @HATA=HATA, @MESAJ=MESAJ, @XMLBASLIK=XMLBASLIK FROM @TBLXMLBASLIK		
	END

	IF @HATA = '' AND @SAYIHATA=0
	BEGIN


	

					BEGIN TRY
						INSERT INTO @GONDERIMTABLOSU (GONDERILECEKXML,HATA,MESAJ,XMLBASLIK,TABLOID,MINID,MAXID) 
						SELECT							 
							(
								SELECT 
									NEWID() as 'messageGuid/@value',
									'1' as 'messageType/@version',
									'918e32b3-04eb-4444-b721-e979fcee8c60' as 'messageType/@codeSystemGuid',
									'262' as 'messageType/@code',
									'Hasta Nakil Bilgileri' as 'messageType/@value',
									LEFT(REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR(19),GETDATE(),120),' ',''),'-',''),':',''),12) as 'documentGenerationTime/@value',
											(
						 
												SELECT	
													'1' AS 'healthcareProvider/@version',
													'c3eade04-4f91-5dab-e043-14031b0ac9f9' as 'healthcareProvider/@codeSystemGuid',
													SAGLIKNETKURUMKODU AS 'healthcareProvider/@code',
													SUBELER_SUBEADI as 'healthcareProvider/@value'  
												FOR XML PATH('author'), TYPE
											),
											'C740D0288ED4C45FE0407C0A04162BDD' as 'firmaKodu/@value',
											(
											
														SELECT 
																(
																	SELECT
																		ISNULL(HDOSYA_SNOTAKIPNO,'') AS 'SYSTakipNo/@value'
																	FOR XML PATH('HASTA_TAKIP_BILGISI'), TYPE
																),
												(
													SELECT														

											  '1' AS 'HASTA_HUKUMLU_MU/@version',
											  'c9d56fee-d143-4602-ad7b-ba131ef92ad9' AS 'HASTA_HUKUMLU_MU/@codeSystemGuid',
											  CASE WHEN HHUKUMLUMU=1 THEN '1'ELSE '2' END AS 'HASTA_HUKUMLU_MU/@code',
											  CASE WHEN HHUKUMLUMU=1 THEN 'EVET' ELSE 'HAYIR' END AS 'HASTA_HUKUMLU_MU/@value',
											  '1' AS 'HASTA_ADLI_VAKA_MI/@version',
											  'c9d56fee-d143-4602-ad7b-ba131ef92ad9' AS 'HASTA_ADLI_VAKA_MI/@codeSystemGuid',
											  CASE WHEN HADLIVAKAMI=1 THEN '1' ELSE '2'END AS 'HASTA_ADLI_VAKA_MI/@code',
											  CASE WHEN HADLIVAKAMI=1 THEN 'EVET' ELSE  'HAYIR' END AS 'HASTA_ADLI_VAKA_MI/@value',
                                              CASE	WHEN ISNULL(KANGRUBUID,0) <> 0 THEN '1' END AS 'KAN_GRUBU/@version',
											  CASE	WHEN ISNULL(KANGRUBUID,0) <> 0 THEN  'a3d6e943-5d85-4c75-ac72-709115974fb7' END AS 'KAN_GRUBU/@codeSystemGuid',
											  CASE	WHEN ISNULL(KANGRUBUID,0) <> 0 THEN  KANGRUBUID END AS 'KAN_GRUBU/@code',
											  CASE	WHEN ISNULL(KANGRUBUID,0) <> 0 THEN KANGRUBU END AS 'KAN_GRUBU/@value',
											 LEFT(REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR(19),DATEADD(MINUTE,-15,GETDATE()),120),' ',''),'-',''),':',''),12) AS 'PAKETE_AIT_ISLEM_ZAMANI/@value', 
											  LEFT(REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR(19),NAKLINTALEPEDILDIGIZAMAN,120),' ',''),'-',''),':',''),12) AS 'NAKLIN_TALEP_EDILDIGI_ZAMAN/@value',											  
											  '1' AS 'NAKIL_TALEP_EDEN_KURUM/@version',
											  'c3eade04-4f91-5dab-e043-14031b0ac9f9' AS 'NAKIL_TALEP_EDEN_KURUM/@codeSystemGuid',
											  ISNULL(NAKLITALEPEDENKURUMID,0)  AS 'NAKIL_TALEP_EDEN_KURUM/@code',
											  ISNULL(NAKLITALEPEDENKURUMADI,'') AS 'NAKIL_TALEP_EDEN_KURUM/@value',
											  ISNULL(NAKILTALEPEDENTELEFON,'') AS 'NAKIL_TALEP_EDEN_KURUM_TELEFON/@value',

											  '1' AS 'NAKIL_TALEP_EDEN_KLINIK/@version',
											  'c04bee57-c5d4-443d-e040-7b0a6f146a3d' AS 'NAKIL_TALEP_EDEN_KLINIK/@codeSystemGuid',
											  ISNULL(NAKILTALEPEDENKLINIK,0) AS 'NAKIL_TALEP_EDEN_KLINIK/@code',
											  ISNULL(NAKILTALEPEDENKLINIKADI,'') AS 'NAKIL_TALEP_EDEN_KLINIK/@value',

											  '1' AS 'HASTANIN_BULUNDUGU_KLINIK/@version',
											  'c04bee57-c5d4-443d-e040-7b0a6f146a3d' AS 'HASTANIN_BULUNDUGU_KLINIK/@codeSystemGuid',
											  ISNULL(HBULUNDUGUKLINIKID,0) AS 'HASTANIN_BULUNDUGU_KLINIK/@code',
											  ISNULL(BULUNDUGUKLINIKADI,'') AS 'HASTANIN_BULUNDUGU_KLINIK/@value',

											  '1' AS 'NAKIL_EDILMEK_ISTENDIGI_KLINIK/@version',
											  'c04bee57-c5d4-443d-e040-7b0a6f146a3d' AS 'NAKIL_EDILMEK_ISTENDIGI_KLINIK/@codeSystemGuid',
											  ISNULL(NAKILEDILMEKISTENDIGIKLINIK,0) AS 'NAKIL_EDILMEK_ISTENDIGI_KLINIK/@code',
											  ISNULL(NAKILISTENDIGIKLINIKADI,'') AS 'NAKIL_EDILMEK_ISTENDIGI_KLINIK/@value',

											  '1'  AS 'HASTA_NAKIL_TIPI/@version',
											  'c81aa38f-77b7-4520-957c-658648d4559a' AS 'HASTA_NAKIL_TIPI/@codeSystemGuid',
											  HNAKILTIPI  AS 'HASTA_NAKIL_TIPI/@code',
											   (CASE HNAKILTIPI 
																		WHEN 1 THEN 'SERVİS'
																		WHEN 2 THEN 'YOĞUN BAKIM'
																		WHEN 3 THEN 'KONSÜLTASYON'
																		WHEN 4 THEN 'TIBBİ TETKİK'
																		WHEN 5 THEN 'ACİL SERVİS'
																		ELSE 'PALYATİF BAKIM' END)   AS 'HASTA_NAKIL_TIPI/@value',

											  '1' AS 'GERCEKLESTIRILMESI_ISTENEN_KOMUTA_MERKEZI/@version',
											  'c3eade04-4f91-5dab-e043-14031b0ac9f9' AS 'GERCEKLESTIRILMESI_ISTENEN_KOMUTA_MERKEZI/@codeSystemGuid',
											  ISTKOMUTAMERKEZI AS 'GERCEKLESTIRILMESI_ISTENEN_KOMUTA_MERKEZI/@code',
											  KOMUTAMERKEZIADI AS 'GERCEKLESTIRILMESI_ISTENEN_KOMUTA_MERKEZI/@value',												
																(SELECT --HASTA_YAKINI_BILGILERI
													ISNULL(HYAKINIAD,'') AS 'AD/@value',
										            ISNULL(HYAKINISOYAD,'') AS 'SOYAD/@value',
													ISNULL(HYAKINITEL,'') AS 'TELEFON_NUMARASI/@value',
										            ISNULL(HYAKINIADRES,'') AS 'ACIK_ADRES/@value'
									               WHERE HYAKINIAD IS NOT NULL
													FOR XML PATH('HASTA_YAKINI_BILGILERI'),TYPE),
											  ( SELECT --HASTA_KLINIK_BILGILERI
													ISNULL(PATMUAYENEBILGI,'') AS 'PATOLOJIK_MUAYENE_BILGILERI/@value',
										            ISNULL(TETKIKBILGILERI,'') AS 'TETKIK_BILGILERI/@value',
													ISNULL(YAPMEDISLEMLER, '') AS 'YAPILAN_MEDIKAL_ISLEMLER/@value',
										            ISNULL(ISTMEDISLEMLER,'') AS 'ISTENEN_MEDIKAL_ISLEMLER/@value',
													ISNULL(SEVKEDKRMISTMEDISLEMLER,'') AS 'SEVK_EDILEN_KURUMDAN_YAPILMASI_ISTENEN_MEDIKAL_ISLEMLER/@value',
													'1' AS 'TRIAJ/@version',
													'1ddcbef5-4006-41fe-87c0-6190c9801708' AS 'TRIAJ/@codeSystemGuid',
													ISNULL(TRIAJ,0) AS 'TRIAJ/@code',
													( SELECT CASE TRIAJ																	
															WHEN 1 THEN 'YEŞİL'
															WHEN 2 THEN 'SARI'
															WHEN 3 THEN 'KIRMIZI'															
															ELSE 'BELİRTİLMEMİŞ'
														END ) AS 'TRIAJ/@value'

											  
											  ,
											  ( SELECT --VITAL_BULGULAR
													CASE	WHEN ISNULL(NABIZSAYISI,0) <> 0 THEN NABIZSAYISI END AS 'NABIZ_SAYISI/@value',
										            CASE	WHEN ISNULL(SISKANBASINCIDEGERI,0) <> 0 THEN SISKANBASINCIDEGERI END AS 'SISTOLIK_KAN_BASINCI_DEGERI/@value',
													CASE	WHEN ISNULL(DIASTOLIKKANBASINCIDEGERI,0) <> 0 THEN DIASTOLIKKANBASINCIDEGERI END AS 'DIASTOLIK_KAN_BASINCI_DEGERI/@value',
										            CASE	WHEN ISNULL(BILINC,0) <> 0 THEN '1' END AS 'BILINC/@version',
													CASE	WHEN ISNULL(BILINC,0) <> 0
															THEN'556485f3-9765-4bff-8147-fba4ac1f2a29' END AS 'BILINC/@codeSystemGuid',
													CASE	WHEN ISNULL(BILINC,0) <> 0 THEN BILINC END AS 'BILINC/@code',
										            CASE	WHEN ISNULL(BILINC,0) <> 0 THEN ( SELECT CASE BILINC																	
															WHEN 1 THEN 'AÇIK'
															WHEN 2 THEN 'BULANIK'
															WHEN 3 THEN 'KAPALI'
															WHEN 4 THEN 'KOMA'
															WHEN 5 THEN 'KONFÜZE'
															WHEN 6 THEN 'SEMİKOMA'
															WHEN 7 THEN 'SEDATİZE'
														END ) END AS  'BILINC/@value',
													CASE	WHEN ISNULL(ATES,'') <> '' THEN ATES END AS 'ATES/@value',
													CASE	WHEN ISNULL(SOLUNUM,0) <> 0 THEN '1' END AS 'SOLUNUM/@version',
													CASE	WHEN ISNULL(SOLUNUM,0) <> 0 THEN 'fec05758-b107-4a40-acbc-61b23a3243d5'END AS 'SOLUNUM/@codeSystemGuid',
													CASE	WHEN ISNULL(SOLUNUM,0) <> 0 THEN SOLUNUM END AS 'SOLUNUM/@code',
													CASE	WHEN ISNULL(SOLUNUM,0) <> 0 THEN SOLUNUMADI END AS 'SOLUNUM/@value',
													ISNULL(SOLUNUMSAYISI,'') AS 'SOLUNUM_SAYISI/@value',
                                                    ISNULL(KANSEKERI,'') AS 'KAN_SEKERI/@value',													
													CASE	WHEN ISNULL(SOLUNUMISLEMI,0) <> 0 THEN '1' END AS 'SOLUNUM_ISLEMI/@version',
													CASE	WHEN ISNULL(SOLUNUMISLEMI,0) <> 0 THEN '1ec0522b-337c-4a7f-ba11-c31e5f9c75e2' END AS 'SOLUNUM_ISLEMI/@codeSystemGuid',
													CASE	WHEN ISNULL(SOLUNUMISLEMI,0) <> 0 THEN SOLUNUMISLEMI END AS 'SOLUNUM_ISLEMI/@code',
													CASE	WHEN ISNULL(SOLUNUMISLEMI,0) <> 0 THEN ( SELECT CASE SOLUNUMISLEMI																	
															WHEN 1 THEN 'ENTÜBE'
															WHEN 2 THEN 'NON-INVASIVE'
															ELSE 'SPONTAN'	
														END ) END AS 'SOLUNUM_ISLEMI/@value'

											  FOR XML PATH('VITAL_BULGULAR'), TYPE
											  ),
											  ( SELECT --GLASGOW_SKALASI
													ISNULL(GOZLER,'') AS 'GOZLER/@value',
										            ISNULL(SOZLER,'') AS 'SOZEL/@value',
													ISNULL(MOTOR,'') AS 'MOTOR/@value'
											  FOR XML PATH('GLASGOW_SKALASI'), TYPE
											  ),
											  ( SELECT --SEVKE_ESAS_TANI_BILGILERI
													'1' AS 'ICD10/@version',
													'c3eaabad-8c4c-56ee-e043-14031b0a5530' AS 'ICD10/@codeSystemGuid',
													ICDTANI AS 'ICD10/@code',
													ICDADI AS 'ICD10/@value'
											  FOR XML PATH('SEVKE_ESAS_TANI_BILGILERI'), TYPE
											  ),
											  ( SELECT --NAKIL_LAB_BILGILERI
													ISNULL(LABPO2,'') AS 'PO2/@value',
										            ISNULL(LABSPO2,'') AS 'SPO2/@value',
													ISNULL(LABETCO2,'') AS 'ETCO2/@value',
										            ISNULL(LABCRP,'') AS 'CRP/@value',
													ISNULL(LABPH,'') AS 'PH/@value',
                                                    ISNULL(LABFIO2,'') AS 'FIO2/@value',
													ISNULL(LABCO2,'') AS 'CO2/@value',
                                                    ISNULL(LABHCO3,'') AS 'HCO3/@value',	
										            ISNULL(LABK,'') AS 'K/@value',
													ISNULL(LABCA,'') AS 'CA/@value',
                                                    ISNULL(LABNA,'') AS 'NA/@value'	
													WHERE LABPO2 IS NOT NULL
											  FOR XML PATH('NAKIL_LAB_BILGILERI'), TYPE
											  ),
											  ( SELECT --EPIKRIZ_BILGISI
													ISNULL(EPBILGIBASLIK,'') AS 'EPIKRIZ_BILGISI_BASLIK/@value',
										            ISNULL(EPBILGIACIKLAMA,GSSACIKLAMA) AS 'EPIKRIZ_BILGISI_ACIKLAMA/@value'	
													WHERE EPBILGIBASLIK IS NOT NULL
										      FOR XML PATH('EPIKRIZ_BILGISI'), TYPE
											  ),
											  ( SELECT --YENIDOGAN_BILGILERI
													ISNULL(GESTASYONHAFTASI,'') AS 'GESTASYON_HAFTASI/@value',
										            ISNULL(DOGUMAGIRLIGI,'') AS 'DOGUM_AGIRLIGI/@value',
													ISNULL(YDMEVCUTAGIRLIGI,'') AS 'MEVCUT_AGIRLIGI/@value',
													'1' AS 'DOGUM_YONTEMI/@version',
													'c03d71af-54c5-4245-aea4-ad58e876e8bd' AS 'DOGUM_YONTEMI/@codeSystemGuid',
													ISNULL(DOGUMYONTEMI,0) AS 'DOGUM_YONTEMI/@code',
													ISNULL(DOGUMYONTEMIADI,'') AS 'DOGUM_YONTEMI/@value',
										            ISNULL(APGAR1,'') AS 'APGAR_1/@value',
													ISNULL(APGAR5,'') AS 'APGAR_5/@value'
													WHERE DOGUMYONTEMI IS NOT NULL																										
										      FOR XML PATH('YENIDOGAN_BILGILERI'), TYPE
											  
											  )

									  FOR XML PATH('HASTA_KLINIK_BILGILERI'), TYPE
									),
									( SELECT --NAKIL_BILGILERI
													'1' AS 'DOKTOR_IHTIYACI/@version',
													'c9d56fee-d143-4602-ad7b-ba131ef92ad9' AS 'DOKTOR_IHTIYACI/@codeSystemGuid',
													CASE WHEN DOKTORIHTIYACI=1 THEN '1' ELSE '2'END AS 'DOKTOR_IHTIYACI/@code',
											        CASE WHEN DOKTORIHTIYACI=1 THEN 'EVET' ELSE  'HAYIR' END AS 'DOKTOR_IHTIYACI/@value',									

													CASE WHEN ISNULL(BRANSIHTIYACI,0) <> 0 THEN '1' END AS 'BRANS_IHTIYACI/@version',
													CASE WHEN ISNULL(BRANSIHTIYACI,0) <> 0 THEN '63dd9340-8c17-48c4-b798-7cf27067f301' END AS 'BRANS_IHTIYACI/@codeSystemGuid',
												    CASE WHEN ISNULL(BRANSIHTIYACI,0) <> 0 THEN BRANSIHTIYACI END  AS 'BRANS_IHTIYACI/@code',
													CASE WHEN ISNULL(BRANSIHTIYACI,0) <> 0 THEN BRANSADI END AS 'BRANS_IHTIYACI/@value',
													
													'1' AS 'TEYITLI_VAKA_MI/@version',
													'c9d56fee-d143-4602-ad7b-ba131ef92ad9' AS 'TEYITLI_VAKA_MI/@codeSystemGuid',
													CASE WHEN TEYITLIVAKAMI=1 THEN '1' ELSE '2'END AS 'TEYITLI_VAKA_MI/@code',
											        CASE WHEN TEYITLIVAKAMI=1 THEN 'EVET' ELSE  'HAYIR' END AS 'TEYITLI_VAKA_MI/@value',

													 '1'  AS 'NAKIL_YOLU/@version',
													'139c2d5f-c8a8-4437-b4f3-5f28c14d905e' AS 'NAKIL_YOLU/@codeSystemGuid',
													CASE WHEN NAKILYOLU=1 THEN '1' ELSE '2' END AS 'NAKIL_YOLU/@code',
													CASE WHEN NAKILYOLU=1 THEN 'HAVAYOLU'ELSE 'KARAYOLU' END AS 'NAKIL_YOLU/@value'
																									
										      FOR XML PATH('NAKIL_BILGILERI'), TYPE
									 ),
									( SELECT --TRANSPORT_SIRASINDA_GEREKSINIMLER
													CASE WHEN ISNULL(TRANSPORTMALZEME,0) <> 0 THEN '1' END AS 'MALZEME/@version',
													CASE WHEN ISNULL(TRANSPORTMALZEME,0) <> 0 THEN '47c43bbf-c18b-4a51-bcdd-a32f72e53c42' END AS 'MALZEME/@codeSystemGuid',
													CASE WHEN ISNULL(TRANSPORTMALZEME,0) <> 0 THEN TRANSPORTMALZEME END AS 'MALZEME/@code',
													CASE WHEN ISNULL(TRANSPORTMALZEME,0) <> 0 THEN ( SELECT CASE TRANSPORTMALZEME																	
															WHEN 1 THEN 'KÜVÖZ'
															WHEN 2 THEN 'MONİTÖR'
															WHEN 4 THEN 'İNFÜZYON POMPASI'
															WHEN 7 THEN 'PACE MAKER'
															WHEN 8 THEN 'OMURGA TAHTASI'
															WHEN 9 THEN 'BEŞİK'
															WHEN 10 THEN 'INTRAAORTİK BALON POMPASI (IABP)'
															WHEN 11 THEN 'BOYUNLUK'
															ELSE 'RADYAN ISITICI'
														END ) END AS 'MALZEME/@value',

													CASE WHEN ISNULL(TRANSPORTMALZEMESAYISI,0) <> 0 THEN TRANSPORTMALZEMESAYISI END AS 'MALZEME_SAYISI/@value'
																									
										      FOR XML PATH('TRANSPORT_SIRASINDA_GEREKSINIMLER'), TYPE
									 ),

									( SELECT --SEVK_HEKIM_BILGILERI

													SEVKHEKIMKIMLIKNO  AS 'HEKIM_KIMLIK_NUMARASI/@value',
													SEVKHEKIMTELNO AS 'TELEFON_NUMARASI/@value',
													SEVKHEKIMAD  AS 'AD/@value',
													SEVKHEKIMSOYAD AS 'SOYAD/@value'
																									
										      FOR XML PATH('SEVK_HEKIM_BILGILERI'), TYPE
									 ),
									( SELECT --TRANSFER_NEDENLERI

													TRANSNEDENACIKLAMA AS 'ACIKLAMA/@value',
													'1' AS 'SEVK_NEDENI/@version',
													'8d1f1313-3921-4c01-8403-a2f03ab375f3' AS 'SEVK_NEDENI/@codeSystemGuid',
													ISNULL(TRANSNEDENSEVKNEDENI,0) AS 'SEVK_NEDENI/@code',
													ISNULL(SEVKNEDENIADI,'') AS 'SEVK_NEDENI/@value'
												WHERE TRANSNEDENSEVKNEDENI IS NOT NULL													
										      FOR XML PATH('TRANSFER_NEDENLERI'), TYPE
											  
									 ),
									( SELECT --BOY_KILO_BILGILERI

													ISNULL(BOY,0) AS 'BOY/@value',
													ISNULL(KILO,0) AS 'KILO/@value'
																									
										      FOR XML PATH('BOY_KILO_BILGILERI'), TYPE
									 ),
									( SELECT --KABUL_EDEN_KURUM_BILGILERI

													CASE WHEN ISNULL(KABULEDENKURUMIL,0) <> 0 THEN '1' END AS 'IL/@version',
													CASE WHEN ISNULL(KABULEDENKURUMIL,0) <> 0 THEN '5bc508fa-782a-4d75-831f-34948e350e72' END AS 'IL/@codeSystemGuid',
													CASE WHEN ISNULL(KABULEDENKURUMIL,0) <> 0 THEN KABULEDENKURUMIL END AS 'IL/@code',
													CASE WHEN ISNULL(KABULEDENKURUMILADI,'') <> '' THEN KABULEDENKURUMILADI END AS 'IL/@value',

													CASE WHEN ISNULL(KABULEDENKURUMID,0) <> 0 THEN '1' END AS  'KABUL_EDEN_KURUM/@version',
													CASE WHEN ISNULL(KABULEDENKURUMID,0) <> 0 THEN 'c3eade04-4f91-5dab-e043-14031b0ac9f9' END AS 'KABUL_EDEN_KURUM/@codeSystemGuid',
													CASE WHEN ISNULL(KABULEDENKURUMID,0) <> 0 THEN KABULEDENKURUMID END AS 'KABUL_EDEN_KURUM/@code',
													CASE WHEN ISNULL(KABULEDENKURUMADI,'') <> '' THEN KABULEDENKURUMADI END AS 'KABUL_EDEN_KURUM/@value',

													CASE WHEN ISNULL(KABULEDENKLINIK,0) <> 0 THEN '1' END AS 'KABUL_EDEN_KLINIK/@version',
													CASE WHEN ISNULL(KABULEDENKLINIK,0) <> 0 THEN 'c04bee57-c5d4-443d-e040-7b0a6f146a3d' END AS 'KABUL_EDEN_KLINIK/@codeSystemGuid',
													CASE WHEN ISNULL(KABULEDENKLINIK,0) <> 0 THEN KABULEDENKLINIK END AS 'KABUL_EDEN_KLINIK/@code',
													CASE WHEN ISNULL(KABULEDENKLINIKADI,'') <> '' THEN KABULEDENKLINIKADI END AS 'KABUL_EDEN_KLINIK/@value',

													CASE WHEN ISNULL(KABULEDENPERSONELADI,'') <> '' THEN KABULEDENPERSONELADI END AS 'KABUL_EDEN_PERSONEL_ADI/@value',
													CASE WHEN ISNULL(KABULEDENPERSONELSOYADI,'') <> '' THEN KABULEDENPERSONELSOYADI END AS 'KABUL_EDEN_PERSONEL_SOYADI/@value',
													CASE WHEN ISNULL(KABULEDENPERSONELTEL,'') <> '' THEN KABULEDENPERSONELTEL END AS 'KABUL_EDEN_PERSONEL_TELEFON/@value'
																									
										      FOR XML PATH('KABUL_EDEN_KURUM_BILGILERI'), TYPE
									 )											    
																	 	
																												
															FROM #TMPHNAKILBILDIR
																							
									     
													FOR XML PATH('ERISKIN_HASTA_NAKIL_BILGILERI'),TYPE
																)															
													FOR XML PATH('recordData'), TYPE
										)
		   
				FROM #TMPISLEMDOSYA

				FOR XML PATH(''), ROOT('SYSMessage')
	
	
							) AS GONDERILECEKXML,
							@HATA AS HATA, 
							@MESAJ AS MESAJ,
							@XMLBASLIK AS XMLBASLIK,
							@HNAKILID AS TABLOID,
							0 AS MINID,
							0 AS MAXID

					END TRY
					BEGIN CATCH
						SET @HATA = ERROR_MESSAGE()
						IF @HATA = ''
							SET @HATA = 'Bilinmeyen bir hata oluştu'

						INSERT INTO ZAMANLAYICIHATALARI (HDOSYAID,ISLEMKODU,TABLOID,HATAVEREN,HATAKODU,HATA,MESAJ,OLUSTURULMAZAMANI)
						SELECT @HDOSYAID,'262',@HNAKILID,'SP','',@HATA,@MESAJ,GETDATE()
			
						INSERT INTO @GONDERIMTABLOSU (GONDERILECEKXML,HATA,MESAJ,XMLBASLIK,TABLOID,MINID,MAXID)		
						SELECT	'' AS GONDERILECEKXML,
								@HATA AS HATA, 
								@MESAJ AS MESAJ,
								'' AS XMLBASLIK,
								@HNAKILID AS TABLOID,
								0 AS MINID,
								0 AS MAXID
			

					END CATCH
				



	END
	ELSE
	BEGIN
		IF @HATA<>''
			INSERT INTO ZAMANLAYICIHATALARI (HDOSYAID,ISLEMKODU,TABLOID,HATAVEREN,HATAKODU,HATA,MESAJ,OLUSTURULMAZAMANI)
			SELECT @HDOSYAID,'262',@HNAKILID,'SP','',@HATA,@MESAJ,GETDATE()
		
		INSERT INTO @GONDERIMTABLOSU (GONDERILECEKXML,HATA,MESAJ,XMLBASLIK,TABLOID,MINID,MAXID)
		SELECT	'' AS GONDERILECEKXML,
				@HATA AS HATA, 
				@MESAJ AS MESAJ,
				'' AS XMLBASLIK,	
				@HNAKILID AS TABLOID,
				0 AS MINID,
				0 AS MAXID		 
	END

	
	IF OBJECT_ID('tempdb..#TMPHNAKILBILDIR') IS NOT NULL 
		DROP TABLE #TMPHNAKILBILDIR

	IF OBJECT_ID('tempdb..#TMPISLEMDOSYA') IS NOT NULL 
		DROP TABLE #TMPISLEMDOSYA


	SELECT * FROM @GONDERIMTABLOSU


END
GO


