Ekli örnekte araç görüntüleme formunda araçları plakasına göre seçebiliyoruz. SOnrasında listboxta üzerine çift tıklama ile araç detay formuna geçilmeli ve bu form yüklenirken ilgili data ARACLAR adlı tablodan çekilecek ve ilgili bilgiler ilgili textboxlara yazılacak ayrıca p1 adlı sütündaki adresteki resim resim_sag_camurluk adlı nesneye picture olarak atanacak p2 adlı sütündaki adresteki resim de resim_sag_kapi adlı nesneye picture olarak atanacak.
Bunları yapmak için select * from ARACLAR where PLAKA = Text_Plaka.value gibi bir sorgu cümlesi ile plakaya göre seçme yaptırmam gerekiyor. Ancak bu sorgu cümlesini nereye nasıl yazacağımı da bilmiyorum... Direk bu şekilde yazdığımda
Access "select" ten sonra "case" bekleniyor diye hata veriyor.
bana yardımcı olabilecek kimse var mı? Sanırım accesse
Sql sorgusu yaptığımı anlatmam gerek ama ben bunu beceremiyorum.
Merhaba Sn. oceanblues;
Sizin örneğiniz üzerinde yaptığım çalışmada liste kutusuna gelen sonuç üzerinde tıklayarak(yalnız çift değil tek oldu benimkisi) açılan Araç Detay formundaki metin kutularına ilgili bilgileri getiriyoruz. Bunu liste kutusu üzerinde makro ile yaptık. Liste kutusunda seçilen satırın Plaka bilgisi Araçlar tablosunun plaka bilgisine eşit olanı Araç Detay formunda göster olarak yaptık. Fakat burda da liste kutusundan seçilenin plaka bilgisini makroda yazamadım. Yani yazdım ama çalışmadı. Bende bu bilgiyi form üzerindeki başka bir metin kutusuna çekip makro içindeki kontrolü bu metin kutusundan yaptırdım.
Bahsettiğiniz resimlerinde gelmesi için Araç Detay formuna P1,P2... gibi resin yollarının olduğu alanları da ekleyip sonrasında örneğimde olduğu gibi bu resimlerin gösterileceği kontrollerin Denetim Kaynağı özelliğine ilgili resim yolu kontrolü atanarak resimleri de gösterebilirsiniz.
Çok fazla konuştum (yazdım ) sanırım.
Umarım yardımcı olabilmişimdir.
İyi çalışmalar.
Sayın direnist,
İlginize çok teşekkür ederim. Örneğinizde kullandığınız şekilde makro kullanarak çözdüm. Ancak resim kaynağı özelliğine ilgili resim yolu kontrolünü atayamadım. Bunu nasıl yapabilirim? Orda sıkıntı yaşıyorum. Kod kullanarak form'un load olayına resim_sag_camurluk.picture = Metin_P1.value tanımladım. Ancak bu durumda da hata alıyorum ve ayrıca da resmi de görüntüleyemiyorum.
Ayrıca
Sql kodlarını nasıl kullanabileceğimi de merak ediyorum. Bilgili biri bu konuda da yardımcı olabilirse sevinirim.
(02/04/2013, 00:18)oceanblues yazdı: Ayrıca Sql kodlarını nasıl kullanabileceğimi de merak ediyorum. Bilgili biri bu konuda da yardımcı olabilirse sevinirim.
Mesela Liste kutusu için RowSource özelliğinde şu şekilde kullanabilirsiniz.
Me.Liste_ARACLAR.RowSource="Select * From Tablo"
form ve raporlar için .recordsource özelliğini kullanabilirsiniz.
Liste kutusu üzerinde çift tıklandığında ilgili plakaya ait detayı görüntülemek için;
Private Sub Liste_ARACLAR_DblClick(Cancel As Integer)
DoCmd.OpenForm "ARAC_DETAY", acNormal, ,"PLAKA='" & Me.Liste_ARACLAR.Value & "'"
End Sub
P1 alanındaki resmin istediğiniz yerde görünmesi için (On Current) geçerli olduğunda olayına aşağıdaki kodu yazıyoruz.
"On error resume next" satırı bu alan boş olan veya resim dosyası bulunamayan kayıtlarda hata vermemesi için yazıldı.
Me.Resim_SAG_CAMURLUK.Picture = "" satırı ise hata vermeden önce aklında kalan bir önceki kayda ait resmi kaldırması için.
Private Sub Form_Current()
On Error Resume Next
Me.Resim_SAG_CAMURLUK.Picture = ""
Me.Resim_SAG_CAMURLUK.Picture = Me.P1.Value
End Sub
Öncelikle çok teşekkürler ilginize. Çift tıklamayla formu açtıktan sonra resmi atamaya çalışıyorum. Ama bahsettiğiniz şekilde yapınca da aşağıda eklerde de görebileceğiniz hata mesajını alıyorum.