1

Konu: Nasıl index yaratayım?

Selamlar,

Tıbbi raporların saklandığı bir tablom var. Laboratuvarda 11 hekim görev yapıyor. Burada UZMAN1, UZMAN2 ve UZMAN3 adlarında 3 field oluşturdum. Bir raporu bir, bazan iki kimi zaman da 3 doktor imzalayabiliyor. Bir raporu bir uzman hekim imzaladıysa UZMAN1'e o hekimin kodu kaydediliyor. İki hekim imzaladıysa UZMAN1 ve UZMAN2'ye kodlar yazılıyor. Diğer field(lar) boş kalıyor.
Sorum şu; Nasıl bir indeks yapısı oluşturayım ki doktorlardan biri sadece kendi imzaladığı raporları görmek istediği zaman listeleyebilsin. Sorun şurda ki o hekimin kodu kimi raporlarda UZMAN1'de kiminde de UZMAN2'de ya da UZMAN3'DE kayıtlı olabilir.

Şimdiden teşekkürler...

2

Re: Nasıl index yaratayım?

rapor id  ve raporu imzalayan doktor id lerini içeren ek bir tablo ile bu problemi çözebilirsin.


kandilzade yazdı:

Selamlar,

Tıbbi raporların saklandığı bir tablom var. Laboratuvarda 11 hekim görev yapıyor. Burada UZMAN1, UZMAN2 ve UZMAN3 adlarında 3 field oluşturdum. Bir raporu bir, bazan iki kimi zaman da 3 doktor imzalayabiliyor. Bir raporu bir uzman hekim imzaladıysa UZMAN1'e o hekimin kodu kaydediliyor. İki hekim imzaladıysa UZMAN1 ve UZMAN2'ye kodlar yazılıyor. Diğer field(lar) boş kalıyor.
Sorum şu; Nasıl bir indeks yapısı oluşturayım ki doktorlardan biri sadece kendi imzaladığı raporları görmek istediği zaman listeleyebilsin. Sorun şurda ki o hekimin kodu kimi raporlarda UZMAN1'de kiminde de UZMAN2'de ya da UZMAN3'DE kayıtlı olabilir.

Şimdiden teşekkürler...

3

Re: Nasıl index yaratayım?

her üç field için de birer indeks yap. sonra da liste almak istediğinde:
xdr="AHMET DURAN"
select * from rapor where doktor1=xdr or doktor2=xdr or doktor3=xdr

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

4

Re: Nasıl index yaratayım?

Tekrar Selamlar,

Her iki çözüm de çok mantıklı. Ek tablo yapmaktansa, sanırım her fieldiçin indeks oluşturacağım.

Çok teşekkür ederim.

5 Son düzenleyen, cetinbasoz (24.04.2007 13:32:31)

Re: Nasıl index yaratayım?

Dizayn bastan sakat. Tablolar horizontal degil vertikal olarak daha rahat islenen seyler.
raporID, Uzman1, Uzman2, Uzman3 yerine:

raporID, UzmanID

yap.

Guncelleme: Ahmet bunu soylemis;) Ek tablo degil yalniz bu. Tablonun kendisini degistir.

6

Re: Nasıl index yaratayım?

Çetin Bey ilginiz için teşekkürler.
Projeyi kısaca açıklayacak olursam:
Bu bir patoloji programı ve tabloda (hasta.dbf) aşağıdaki field'lar var. Aslında benzer sorunu hastanın yer (hastalığın yeri) ve tanı (o yerin tanısı) kodları için de yaşıyorum. Bir hastanın aynı raporda birden fazla (en fazla 4 adet) yer ve tanısı olabilir. (örneğin deriden alınan bir parçada [biyopsi] birden fazla patolojik durum olabiliyor, hem de sıkça). Örneğin bir hekim, deride yerleşmiş belirli bir kanserin olduğu bütün olguları listelemek isteyebiliyor. Bu kodlama uzman konusunda olduğu gibi; yer1'de de olabilir yer2'de de yer4'de de.

ad              Ch 18
soyad         Ch 28
protno        Ch 10
tarih           Ch 8
biopsino      Ch  9
klinik          Memo
makro        Memo
mikro         Memo
tani            Memo
yorum        Memo
yer1          Ch 4
yer2          Ch 4
yer3          Ch 4
yer4          Ch 4
tani1          Ch 4
tani2          Ch 4
tani3          Ch 4
tani4          Ch 4
Uzman1     Ch 4
Uzman2     Ch 4
Uzman3     Ch 4

Kullanıcı, giriş formunda yer'leri, tanı'ları ve uzman'ları listbox'tan seçiyor.
Bu durumda tablo design'nını nasıl değiştirmem gerek. Benim yazılanlardan anladığım şu; Ayrı iki tablo yaratıp birine biopsino (rapor id gibi bir şey) ve uzman, diğerine yine biopsino, yer ve tanı gibi field'lar oluşturmak.

Teşekkürler

7

Re: Nasıl index yaratayım?

protokolno buyuk ihtimalle ana anahtar olarak kullanilabilir (tek bir protokol hastanın her gelisini dosya olarak ayırıyor).

Ne zaman tekrarlayan birsey gorsen onu baska bir tabloya almayı dusun. Yerler biopsinin alındıgı yer ve tanıda ona bagımlı o zaman o ikisi bir cift olarak baska tabloda yer alabilir:

protNo, yer, tanı gibi.

Bu sekıldeki bir dizayn maximum 4 sınırlamasını da kaldırır (genelde doktorlar en fazla 4 dese de her zaman 5.ye yer olsun). Onlar icin c(4) kullanma (eger o ICD9-10 kodu degilse - o 4e sigarmıydı unuttum).
Sorgulaması da kolay olur. Asıl problem zaten ICD9-10'dan kacmalarından, bir "akut apandisit" tanısını bile eger bırakırsan 20 degisik sekilde yazmalarıdan kaynaklanıyor.

8

Re: Nasıl index yaratayım?

Çetin Bey, Haklısınız. Ama patolojide kodlamalar daha doğru yapılıyor klinisyenlere göre. Ben de zaten örnek olsun diye vermiştim. Doğru; aslında yer ve tanı kodları 5'er karakterlik.
Sanırım siz de bu konuda çalıştınız. Şimdilerde pek görüşemiyoruz ama, İzmir'de bir doktor arkadaşım (İsmail Şahin) var. Sağlık ocakları için VFP6'da program yazmıştı. Siz de o ekipte olabilir misiniz? Çünkü ekipte Çetin adında bir arkadaşı vardı. Hatta patoloji laboratuvarları için de prg yazmışlardı yanlış anımsamıyorsam.

Teşekkürler...

9

Re: Nasıl index yaratayım?

Ismail'e sor Dr.Cetin Basoz'u tanir misin diye:) Saglik ocaklari programi fox2xte yazildi, o zaman VFP3 bile yoktu.

10

Re: Nasıl index yaratayım?

smile:)
İsmail sizden "müthiş biri" ve "UT'de adı geçen hemen hemen tek Türk" diye söz etmişti. Bir zamanlar ben SSK'de patolog olarak çalışırken İsmail'den bilgisayar satın almıştım ve sanırım sizinle ofiste karşılaşmıştık.
İsmail de bana VFP'den söz etmişti, bir ara da incelemem için sağlık ocağı prg nın VFP'6'daki versiyonunu vermişti. Hala da bende durur.
Şu günlerde VFP merağı yeniden başladı bende. Ancak bilgim sınırlı; bu yüzden kimi sorularım saçma ya da basit görünebilir size.

11

Re: Nasıl index yaratayım?

ya ne kadar programcılığa geçiş yapmış doktor arkadaş var böyle... smile
benim de bir doktor arkadaşım vardı. foxpro ile programcılık yapıyordu. doktorluğu pek sevmiyordu. bir yandan bir sağlık ocağında pratisyen hekimlik yapıyordu, diğer yandan da foxpro ile programcılık. çok sene geçti adını filan unuttum malesef... bir tek çetin gibi onun da bıyıklı olduğunu hatırlıyorum.

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com