0% fanden dieses Dokument nützlich (0 Abstimmungen)
7 Ansichten5 Seiten

SQL Skripti

Das Dokument enthält SQL-Abfragen zur Abfrage von Patientendaten, einschließlich Informationen zu Patienten-ID, Namen, Aufnahme-Nummer, Hauptgruppen-Code, Dienstleistungs-Code, behandelnden Ärzten, Gebühren und Kosten. Es werden spezifische Bedingungen für die Berechnung von Kosten und Rechnungsbeträgen angegeben, um doppelte Zeilen zu vermeiden. Die Abfragen sind so strukturiert, dass sie sowohl für mehrere Patienten als auch für einen einzelnen Patienten ausgeführt werden können.

Hochgeladen von

Биле
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als DOCX, PDF, TXT herunterladen oder online auf Scribd lesen
0% fanden dieses Dokument nützlich (0 Abstimmungen)
7 Ansichten5 Seiten

SQL Skripti

Das Dokument enthält SQL-Abfragen zur Abfrage von Patientendaten, einschließlich Informationen zu Patienten-ID, Namen, Aufnahme-Nummer, Hauptgruppen-Code, Dienstleistungs-Code, behandelnden Ärzten, Gebühren und Kosten. Es werden spezifische Bedingungen für die Berechnung von Kosten und Rechnungsbeträgen angegeben, um doppelte Zeilen zu vermeiden. Die Abfragen sind so strukturiert, dass sie sowohl für mehrere Patienten als auch für einen einzelnen Patienten ausgeführt werden können.

Hochgeladen von

Биле
Copyright
© All Rights Reserved
Wir nehmen die Rechte an Inhalten ernst. Wenn Sie vermuten, dass dies Ihr Inhalt ist, beanspruchen Sie ihn hier.
Verfügbare Formate
Als DOCX, PDF, TXT herunterladen oder online auf Scribd lesen

Charge date: several patients

SELECT [Link] patient_id,


func_hasta_adsoyad_getir (hastano) name_surname,
[Link] admission_no,
anagrupkodu main_group_code,
hizmetkodu service_code,
sp_pers_adi_al ([Link]) admitting_dr,
sp_pers_adi_al (t.islem_doktor) performing_dr,
SIS.sp_hizmet_tanimi (hizmetkodu) service_description,
adedi quantity,
tarih charge_date,
tutar selling_price,
CASE
WHEN anagrupkodu NOT IN (13,
22,
28,
44,
45)
THEN
0
WHEN anagrupkodu = 45
THEN
tutar
ELSE
maliyet
END
AS cr_cost_selling_price,
fatura_tutar amount_wo_d_c,
CASE
WHEN odeme_swc = 'P'
THEN
0
ELSE
(SELECT SUM (fiyat)
FROM hasta_hizmet_detay h
WHERE [Link] = [Link]
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] in ('93256280','')
AND [Link] <> '1')
END
AS invoiced_amount,
maliyet cr_cost,
CASE
WHEN anagrupkodu NOT IN (13,
22,
28,
44,
45)
THEN
0
WHEN anagrupkodu = 45
THEN
tutar * adedi
ELSE
maliyet * adedi
END
AS cost_sepr_x_qty
FROM (SELECT [Link],
[Link],
[Link],
[Link],
[Link] doktor,
[Link] islem_doktor,
tarih,
adedi,
[Link],
[Link],
x.fatura_tutar,
x.odeme_swc,
CASE
WHEN SIS.pack_stok.erp_maliyet ([Link], [Link]) =
0
THEN
SIS.pack_stok.erp_maliyet ([Link],
ADD_MONTHS ([Link], -1))
ELSE
SIS.pack_stok.erp_maliyet ([Link], [Link])
END
AS maliyet
FROM hasta_hizmet x, hizmetler_fiyat f, hasta_hareket h
WHERE [Link] = [Link]
AND [Link] = 'I'
AND x.fiyat_swc = f.fiyat_swc
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] in ('93256280','')
AND [Link] BETWEEN TO_DATE ('01.01.2017', '[Link]')
AND TO_DATE ('20.06.2017', '[Link]')
-- AND TRUNC (ciktarih) > TO_DATE ('01.01.2017',
'[Link]')
-- AND TRUNC (ciktarih) < TO_DATE ('20.06.2017',
'[Link]')
AND listeno = '0') t

Hi Biljana,

Sorry it is my fault, I misse done other row for patient number, can you please run as below , now
you will not see douplicate rows. Sorry again.

For one patient:

SELECT [Link] patient_id,


func_hasta_adsoyad_getir (hastano) name_surname,
[Link] admission_no,
anagrupkodu main_group_code,
hizmetkodu service_code,
sp_pers_adi_al([Link]) admitting_dr,
sp_pers_adi_al(t.islem_doktor) performing_dr,
SIS.sp_hizmet_tanimi (hizmetkodu) service_description,
adedi quantity,
tarih charge_date,
tutar selling_price,
CASE
WHEN anagrupkodu NOT IN
(13, 22, 28, 44, 45)
THEN 0
WHEN anagrupkodu = 45
THEN tutar
ELSE maliyet
END AS cr_cost_selling_price,
fatura_tutar amount_wo_d_c,
CASE
WHEN odeme_swc = 'P'
THEN 0
ELSE (SELECT SUM (fiyat)
FROM hasta_hizmet_detay h
WHERE [Link] = [Link]
AND [Link] = [Link]
AND [Link] = [Link]
and [Link]='93256280'
AND [Link] <> '1')
END AS invoiced_amount,
maliyet cr_cost,
CASE
WHEN anagrupkodu NOT IN (13, 22, 28, 44, 45)
THEN 0
WHEN anagrupkodu = 45
THEN tutar * adedi
ELSE maliyet * adedi
END AS cost_sepr_x_qty
FROM (SELECT [Link], [Link], [Link], [Link],[Link]
doktor,[Link] islem_doktor, tarih, adedi,
[Link], [Link], x.fatura_tutar, x.odeme_swc,
CASE
WHEN SIS.pack_stok.erp_maliyet ([Link],
[Link]) = 0
THEN SIS.pack_stok.erp_maliyet
([Link],
ADD_MONTHS ([Link],
-1))
ELSE SIS.pack_stok.erp_maliyet ([Link],
[Link])
END AS maliyet
FROM hasta_hizmet x, hizmetler_fiyat f,hasta_hareket h
WHERE [Link] = [Link]
AND [Link] = 'I'
AND x.fiyat_swc = f.fiyat_swc
AND [Link] = [Link]
AND [Link]=[Link]
AND [Link]=[Link]
and [Link]='93256280'
AND TRUNC(ciktarih)> TO_DATE ('11.01.2017', '[Link]')
AND TRUNC (ciktarih) < TO_DATE ('12.01.2017', '[Link]')
AND listeno = '0')t
Script with charge date:
SELECT [Link] patient_id,
func_hasta_adsoyad_getir (hastano) name_surname,
[Link] admission_no,
anagrupkodu main_group_code,
hizmetkodu service_code,
sp_pers_adi_al ([Link]) admitting_dr,
sp_pers_adi_al (t.islem_doktor) performing_dr,
SIS.sp_hizmet_tanimi (hizmetkodu) service_description,
adedi quantity,
tarih charge_date,
tutar selling_price,
CASE
WHEN anagrupkodu NOT IN (13,
22,
28,
44,
45)
THEN
0
WHEN anagrupkodu = 45
THEN
tutar
ELSE
maliyet
END
AS cr_cost_selling_price,
fatura_tutar amount_wo_d_c,
CASE
WHEN odeme_swc = 'P'
THEN
0
ELSE
(SELECT SUM (fiyat)
FROM hasta_hizmet_detay h
WHERE [Link] = [Link]
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] in ('93256280','')
AND [Link] <> '1')
END
AS invoiced_amount,
maliyet cr_cost,
CASE
WHEN anagrupkodu NOT IN (13,
22,
28,
44,
45)
THEN
0
WHEN anagrupkodu = 45
THEN
tutar * adedi
ELSE
maliyet * adedi
END
AS cost_sepr_x_qty
FROM (SELECT [Link],
[Link],
[Link],
[Link],
[Link] doktor,
[Link] islem_doktor,
tarih,
adedi,
[Link],
[Link],
x.fatura_tutar,
x.odeme_swc,
CASE
WHEN SIS.pack_stok.erp_maliyet ([Link], [Link]) =
0
THEN
SIS.pack_stok.erp_maliyet ([Link],
ADD_MONTHS ([Link], -1))
ELSE
SIS.pack_stok.erp_maliyet ([Link], [Link])
END
AS maliyet
FROM hasta_hizmet x, hizmetler_fiyat f, hasta_hareket h
WHERE [Link] = [Link]
AND [Link] = 'I'
AND x.fiyat_swc = f.fiyat_swc
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] = [Link]
AND [Link] in ('93256280','')
AND [Link] BETWEEN TO_DATE ('01.01.2017', '[Link]')
AND TO_DATE ('20.06.2017', '[Link]')
-- AND TRUNC (ciktarih) = TO_DATE ('01.01.2017',
'[Link]')
-- AND TRUNC (ciktarih) < TO_DATE ('20.06.2017',
'[Link]')
AND listeno = '0') t

Das könnte Ihnen auch gefallen