Mükerrer kayıt uyarısında hata - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Mükerrer kayıt uyarısında hata (/konu-mukerrer-kayit-uyarisinda-hata.html) Sayfalar:
1
2
|
Mükerrer kayıt uyarısında hata - alpertunga65 - 25/11/2014 Herkese selamlar, öncellikle hayatımızın her anında emeği bulunan öğretmenlerimize şükran ve minnetlerimi sunmak isterim. Sorum şöyle; yapmış olduğum veri tabanında iki kritere bağlı olarak mükerrer kayıt ikazı almak istiyorum. Kodu yazdım ancak, kod düzenli olarak çalışmadı. Birkaç yol denedim fakat maalesef sonuç değişmedi. Kodu aşağıya yazıyorum. Dim a,b As Integer a = DCount("[FREID]", "TLSCVRFREKANSISLEMLERI", "[FREID]=" & Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREID]) b = DCount("[VERYERID]", "TLSCVRFREKANSISLEMLERI", "[VERYERID]=" & Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![VERYERID]) If Nz((a And d), 0)) > 0 Then MsgBox Me.[FREKANS] & " numaralı kayıttan daha önce girilmiş." Me.Undo Else Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![TEMASFRE] = Me.FREKANS Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREDGRT] = Me.FREDEGER Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREKODT] = FREKODURET(Len(J - 1)) KULLANIM = -1 End If Bu veri tabanında yapmak istediğim şey; frekans Listesinden seçtiğim frekansı FREID ve VERYERID kriterlerine bağlı olarak bir telsiz çevrimine atamak istiyorum. VERYERID; bir yerin otomatik sayısı. Ben VERYERID'si aynı olan yere FREID'si aynı olan frekanstan (örneğin 45.500) sadece bir defa atama yapılsın istiyorum. Ama VERYERID değiştiğinde, yani farklı bir yere aynı frekans (45.500) atanabilsin istiyorum. Bir butonun Klik özelliğine yazdım bu kodu. Kırmızı ile yazdığım bölüm problemsiz çalışıyor, ancak üst taraf, kriterli olan yeri maalesef kararsızlık gösterdi, bazen çalıştı bazen çalışmadı. Uzun süredir uğraşıyorum bu problemle. yardımcı olabilirseniz sevinirim. Şimdiden teşekkür ederim. NE MUTLU TÜRK'ÜM DİYENE... Cvp: Mükerrer kayıt uyarısında hata - ozanakkaya - 25/11/2014 örnek uygulamayı görmeden yanıt bulmak zor. If Nz((a And d), 0)) > 0 Then yerine If nz(a,0) and nz(b,0) > 0 Then şeklinde deneyiniz. Cvp: Mükerrer kayıt uyarısında hata - POWER - 25/11/2014 (25/11/2014, 22:36)alpertunga65 yazdı: Herkese selamlar, If Nz((a And d), 0)) > 0 Then yazan yeri If Nz((a And b), 0)) > 0 Then yazarak denermisiniz.... Cvp: Mükerrer kayıt uyarısında hata - alpertunga65 - 25/11/2014 Bu kadar kısa zamanda cevapladığınız için teşekkürler. Sayın Power, ben "b" yerine yanlışlıkla "d" yazmışım...Ancak sayın ozanakkaya haklı, konuyla ilgili bir küçük örnek hazırlayıp siteye eklemeye karar verdim. Örneği hazırlayınca ekleyeceğim. Çok teşekkürler. Cvp: Mükerrer kayıt uyarısında hata - alpertunga65 - 26/11/2014 Tekrar selam, sitedeki arkadaşların yapıcı uyarıları ile sorumu tekrar ediyorum ve konuyla ilgili bir de örnek veri tabanı ekliyorum. Bu veri tabanında yaptığım şey, örnek veri tabanında "Frm_VERICIYERI_FREKANS_TAHSISI" adlı form üzerinden önce UST BİRLİK ve daha sonra VERİCİ YERİ seçerek seçilen verici yerindeki telsiz çevrimleri formda görüntüleniyor. bu formun altformunda yer alan TEMAS FREKANSI, ESAS FREKANS VE YEDEK FREKANS alanlarına tıkladığımda "Frm_VERICIYERI_FREKANS_ATAMA" formu açılıyor ve ben listeden bir frekansı tıklamak suretiyle seçiyorum. (FREKANS alanındaki değer). Aynı form üzerinde yer alan "Temas Frekansı Tahsisi", Esas Frekans Tahsisi" ve "Yedek Frekans Tahsisi" butonlarından herhangi birine bastığımda, seçtiğim frekans değeri "Frm_VERICIYERI_FREKANS_TAHSISI" formu üzerindeki ilgili yere gidiyor. Temas, Esas ve yedek frekans değerleri için ben bu işlemi sırayla yapıyorum. Buraya kadar problem yok. Atamalar yapılıyor. Ancak, aynı "Verici Yeri"ndeki çevrimlere aynı frekansı atamamak gerekiyor. yani çevrimin adı ne olursa olsun, eğer aynı Verici Yerinde iseler aynı frekansı kullanamazlar. Diğer bir deyimle, bir frekans bir verici yerinde sadece ve sadece bir defa kullanılabilir. Eğer yanlışlıkla bu kurala aykırı olarak aynı frekans bir verici yerine birden fazla atanırsa mükerrer kayıt ikazı almak istiyorum. Burada ben FREID ve VERYERID alanlarını (sayısal değer) kriter olarak kullandım. yazdığım aşağıdaki kod ise "Frm_VERICIYERI_FREKANS_ATAMA" formunun üzerindeki "Temas Frekansı Tahsisi", Esas Frekans Tahsisi" ve "Yedek Frekans Tahsisi" butonlarının her birinin Tıklama özelliğinde. Ama maalesef problemli. Çok uğraştım, internette aradım ama başarılı olamadım bu konuda. yardımcı olabilirseniz, benim için AYA GİTMEK kadar önemli bir adım olacak...Teşekkürler...Saygılar... Dim a,b As Integer a = DCount("[FREID]", "TLSCVRFREKANSISLEMLERI", "[FREID]=" & Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREID]) b = DCount("[VERYERID]", "TLSCVRFREKANSISLEMLERI", "[VERYERID]=" & Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![VERYERID]) If Nz((a And d), 0)) > 0 Then MsgBox Me.[FREKANS] & " numaralı kayıttan daha önce girilmiş." Me.Undo Else Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![TEMASFRE] = Me.FREKANS Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREDGRT] = Me.FREDEGER Forms![Frm_VERICIYERI_FREKANS_TAHSISI]![VERICIYERITLSCVRFREKANSISLEMLERI].[Form]![FREKODT] = FREKODURET(Len(J - 1)) KULLANIM = -1 End If "Frm_VERICIYERI_FREKANS_ATAMA" Ne Mutlu Türk'üm Diyene... Cvp: Mükerrer kayıt uyarısında hata - ozanakkaya - 26/11/2014 İsteğiniz oldu mu emin değilim. Sorudan anladığım kadarıyla örnek uygulamanızı düzenledim. İnceleyip bilgi veriniz. |