Skip to main content

AccessTr.neT


If-then-else şartını daha kısa nasıl yazabilirim?

If-then-else şartını daha kısa nasıl yazabilirim?

Çözüldü #13
Sayın Bilgisayarcı ;
Maalesef verdiğiniz kod çalışmadı(syntax) hatası verdi. 10 tane "(" , 11 tane ")" var. Bunu düzelttikten sonra " Compile error:Method or data member not found" hatasını verdi.
Hayri16, 12-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #14
Kod:
Me.Command162.Enabled = (Not ( (nz(Alan49,"-")="-") or (nz(alan50,"-")=50)) or (Nz(Alan51, "0") = "0") Or (Nz(Alan52, "0.0") = "0.0") ))
yerine aşağıdaki olacak.

Kod:
Me.Komut162.Enabled = (Not ((Nz(Alan49, "-") = "-") Or (Nz(Alan50, "-") = "-") Or (Nz(Alan51, "0") = "0") Or (Nz(Alan52, "0.0") = "0.0")))
FAKAT

Veri tabanı yapısı hiç uygun değil,yapılmaması gereken ölümcül hataların nerdeyse tamamı varImg-grin Tablo ilişkilendirme,normalizasyon ....
Hangi ucundan gireyim bilemedim. Kısaltılmış kod yukarıda.
Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes


Cevapla
Çözüldü #15
Değerli Bilgisayarcı;
Veritabanı yapısını ben belirlemedim. Bu SGK nın eczane reçete işlediğinde b.syara bıraktığı *csv dosya. Ben bunu alıp 7 tabloya ayırıyorum. Onları örneği buraya ekleyebilmek için sildim. Kısaca anlatayım. Benim tablolarımda ilaçlar ilaç tablosundaki kodlarıyla yeralıyor. Hastalar hasta bilgideki kodlarıyla. Her reçete 2 ayrı tablodan oluşuyor. Ama en iyisi ben size o tablo yapılarını buraya ekleyeyim.
Hayri16, 12-11-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
Çözüldü #16
Tamamdır sayın Hayri16.
Bu dosyanın içinde bir çok kişinin sicil numaraları olduğu için kaldırdım.
İçindeki dataları temizleyerek de alabilirdiniz. Bu durumda tabloların ve alanların isimlendirilmesi düzgün görünüyor.
Kodun düzeltilmiş halini de oraya yazdım. Onu çoğaltıp diğer komutlara göre uygulayabilirsiniz.

Peki neden tek bir hamlede csv dosyasından dikret aktarmıyorunuz? Teker teker butonlara tıklayarak aktarmak daha uzun değil mi? Hepsi aktarılsın, sonra istenmeyenler içinden silinir?
Bana işe yarayan bir müdür göster,sana dünyayı yerinden oynatayım.
                                                                                        Descartes


Cevapla
Çözüldü #17
Değerli bilgisayarcı neden direkt aktaramadığımı anlatayım;
1- Bildiğiniz gibi csv dosyalarda , ile alanlar birbirinden ayrılıyor. Fakat SGK veritabanında bazı ilaçların adlarında "," var. Özellikle m.g bazındakilerde Örneğin xxxxx 12,5 mg gibi. Böyle olunca Access "," den sonrasını başka bir alan gibi algılıyor ve tüm tablo kayıyor.
2-Burada yine bazı reçeteler kayıt esnasında hasara uğruyor. Bu nedenle ilaçların bazılarında fiyat 0.0 çıkıyor. Şahsa ait aynı ilaçları içeren 2 veya daha fazla reçete gözüküyor.
3-Birde biz bu reçeteleri tek tek elden geçirip eksiklik v.b lerini kontrol etmek zorundayız. Nasılsa tek tek elimden geçecek , kontrol yaparken aktarımımı da yaparım diye düşündüm. Buraya orjinal *csv dosyasını ekliyorum göz atarsanız ne demek istediğimi daha iyi anlarsınız.
Not: Dosyayı Excel ile açmayınız alanların hepsi sığmıyor. Notepadle açarsanız veri kaybı oluşmaz.
Sayın Bilgisayarcı;
Ellerinize sağlık. Şu anda çalışıyor. Fakat "0.0" değerini kontrol etmiyor. Orada ne gibi değişiklik yapmam lazım. (sizde dosya var. 9.kayda gittiğinizde 1. ilaç fiyatı "0.0" olmasına rağmen komut tuşu true durumda)
Saygılarımla...
.rar 14_12_2009.rar (Dosya Boyutu: 26,12 KB | İndirme Sayısı: 3)
Hayri16, 12-11-2009 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 17/12/2009, 15:43, Düzenleyen: Hayri16.
Cevapla
Çözüldü #18
küçük bir eklenti:
alanın boş olup olmadığını örneğin Isnull([Alan1]) şeklinde yazarak kesin sonuçlandırabiliriz.
Alanın dolu olduğunu (yani boş değil) olarak sorgulamak için de Isnull([Alan1])=False örneği ile sonuçlandırabiliriz.

Ayrıca kolaylık olması açısından "kurum kodundan kurum belirleme" olayını "işlem no dan eczane belirleme" alıyını neden bir tablo açarak ilgili kayıtları yapıp gerektiğinde tablodan seçim yaparak işlemlerinizi gerçekleştirmiyorsunuz. böylesi daha rahat olmaz mı? çünkü istediğiniz zaman bu kayıtlarda değişiklikleri yapma şansınız olur.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task