arkadaşlar hepinizi saygıyla selamlıyorum. ekte gönderdiğim bir örnekte nöbet takip projesi yapmaya çalışıyorum. aslında nöbet ile ilgili çok örnek var. ancak istediğim konu ile alakalı bir örnek bulamadım. örnekte nobetdata diye bir formumuz var. burada personelin ay içerisinde nöbet gününü seçtikten sonra hangi gün kaç defa nöbet tuttuğunun istatistiğini bulabilmek adına nöbetarşivi tblosuna aktarma işlemini yapıyorum. ancak nöbet arşıvıne aktarma yaptıktan sonra nobet_data_arsiv diye bir formumuz var. burada personelin hangi gün kaç defa nöbet tuttuğunun toplamını görebilmek istiyorum. ben biraz uğraştım araştırdım ancak yapamadım. umarım isteğimi anlatabilmişimdir. şimdiden teşekkür eder iyi seneler dilerim. hoşçakalın
Günleri Saydırmak
nobetdataarsiv sorgusuna pazartesi için
şeklinde kod ekledim.
Formun kayıt kaynağında nobetdataarsiv sorgusunun günlere göre toplamını aldırdım.
İnceleyip olumlu-olumsuz bildirimde bulununuz.
Pazartesi: IIf([nobetgunu]="1";"1";"0")
, salı içinSalı: IIf([nobetgunu]="2";"1";"0")
şeklinde kod ekledim.
Formun kayıt kaynağında nobetdataarsiv sorgusunun günlere göre toplamını aldırdım.
İnceleyip olumlu-olumsuz bildirimde bulununuz.
ozan bey ilgi ve alakanızdan dolayı teşekkür ederim. tam istediğim gibi olmuş elinize sağlık. saygılar iyi çalışmalar
Sayın alperadn01,
Uygulamanız için önemli olacağı kanısı ile bir hususa dair aşağıdaki bilgiyi paylaşmak sureti ile,oluşturmaya çalıştığınız bu uygulamanızda elde etmeyi istediğiniz temelini oluşturan sorgu sonucunun doğru ve gerçek değerleri içermesini sağlamanıza yardımcı olmak isterim.
Nobetdata adlı formunuzda yer alan Arşive Kaldır adlı butonunun yaptığı işlev sonucunda, nobet_data adlı tablonuzda yer alan tüm kayıtları ekle adlı ekleme sorgusu ile nobet_data_arsiv adlı tabloya aktarmaktasınız.fakat,bu işlem uygulandığında arşiv tablosunda sağlıklı sonuçlar oluşmamaktadır. çünkü,her ne zaman formdaki arşive gönderme işlemini uygulamak istediğinizde bu işlem öncesinde arşiv tablosunda mevcut olan eski kayıtların üzerine bir katı kadar daha aynı kayıtları aktarmakta olduğu gözlenmiştir.dolayısı ile de,nobet_data_arsiv adlı formunuz incelenmek istendiğinde de,tutarlı ve sağlıklı sonuçlar vermemekte olduğu görülmektedir.
Bu sorunu düzeltmek için,şöyle iki yöntem uygulanabilir.
1) Formdaki bu arşive aktarma işlemini gerçekleştirme butonu içeriğine, nobet_data_arsiv adlı tablo içeriğini önce tamamen tüm kayıtları bir Sql Delete sorgusu ile temizleme işlemini uygulatıp ardından kayıtları arşive gönderme işlemini gerçekleştirmeniz daha iyi olacaktır.böylece,elde edilecek sorgu sonucunun doğru,gerçek ve kesin sonuçlar olmasını sağlamış olursunuz.
2) Her bir yeni kaydı,mükerrer kayıt kontrolü de yaptırmak şartı ile tek tek arşive göndermek sureti ile de gerçekleştirebilirsiniz.
Her iki yönteme yönelik olarak,site içi aramalarda hem bilgiler hem de örnekler tedarik ederek inceleme imkanı bulabilirsiniz.bilginize.
İyi çalışmalar,
Saygılar.
Uygulamanız için önemli olacağı kanısı ile bir hususa dair aşağıdaki bilgiyi paylaşmak sureti ile,oluşturmaya çalıştığınız bu uygulamanızda elde etmeyi istediğiniz temelini oluşturan sorgu sonucunun doğru ve gerçek değerleri içermesini sağlamanıza yardımcı olmak isterim.
Nobetdata adlı formunuzda yer alan Arşive Kaldır adlı butonunun yaptığı işlev sonucunda, nobet_data adlı tablonuzda yer alan tüm kayıtları ekle adlı ekleme sorgusu ile nobet_data_arsiv adlı tabloya aktarmaktasınız.fakat,bu işlem uygulandığında arşiv tablosunda sağlıklı sonuçlar oluşmamaktadır. çünkü,her ne zaman formdaki arşive gönderme işlemini uygulamak istediğinizde bu işlem öncesinde arşiv tablosunda mevcut olan eski kayıtların üzerine bir katı kadar daha aynı kayıtları aktarmakta olduğu gözlenmiştir.dolayısı ile de,nobet_data_arsiv adlı formunuz incelenmek istendiğinde de,tutarlı ve sağlıklı sonuçlar vermemekte olduğu görülmektedir.
Bu sorunu düzeltmek için,şöyle iki yöntem uygulanabilir.
1) Formdaki bu arşive aktarma işlemini gerçekleştirme butonu içeriğine, nobet_data_arsiv adlı tablo içeriğini önce tamamen tüm kayıtları bir Sql Delete sorgusu ile temizleme işlemini uygulatıp ardından kayıtları arşive gönderme işlemini gerçekleştirmeniz daha iyi olacaktır.böylece,elde edilecek sorgu sonucunun doğru,gerçek ve kesin sonuçlar olmasını sağlamış olursunuz.
2) Her bir yeni kaydı,mükerrer kayıt kontrolü de yaptırmak şartı ile tek tek arşive göndermek sureti ile de gerçekleştirebilirsiniz.
Her iki yönteme yönelik olarak,site içi aramalarda hem bilgiler hem de örnekler tedarik ederek inceleme imkanı bulabilirsiniz.bilginize.
İyi çalışmalar,
Saygılar.
öncelikle yardımlarından dolayı ozanakkaya'ya ve atoz112'ye sonsuz teşekkürlerimi sunarım.
*** nöbetdata formu bilindiği üzere nobet_data tablosundan yararlanmaktadır. bir personelin nöbet girişini yaptıktan sonra, yani hangi gün tutacağı belirtildikten sonra o personel için artık işlemim bitmiş sayılıyor. bu nedenle bir sonraki ay için veya bir sonraki nöbet gününü seçebilmemiz adına bir buton yardımıyla personelin sicili ve adı soyadı bilgileri kalsın, ancak diğer bilgileri yani nöbet günü ve nöbet ayı gibi bilgilerin nöbet arşivine kaldırıldıktan sonra otomatik olarak boşaltılmasını istiyorum. boşaltma işlemini yaparken tek tek değil de nöbet gününü seçtiğim tüm personelin nöbet ayı ve nöbet günü bilgilerinin boşaltılmasını istiyorum.
***bunu istememdeki maksat bir sonraki nöbeti girerken hem kolaylık olsun, hemde arşive kaldırırken mükerrer kayıt aktarılmasının önüne geçmek.
şimdiden yardımlarınız için teşekkür eder saygılarımı sunarım... umarım isteğimi anlatabilmişimdir.
*** nöbetdata formu bilindiği üzere nobet_data tablosundan yararlanmaktadır. bir personelin nöbet girişini yaptıktan sonra, yani hangi gün tutacağı belirtildikten sonra o personel için artık işlemim bitmiş sayılıyor. bu nedenle bir sonraki ay için veya bir sonraki nöbet gününü seçebilmemiz adına bir buton yardımıyla personelin sicili ve adı soyadı bilgileri kalsın, ancak diğer bilgileri yani nöbet günü ve nöbet ayı gibi bilgilerin nöbet arşivine kaldırıldıktan sonra otomatik olarak boşaltılmasını istiyorum. boşaltma işlemini yaparken tek tek değil de nöbet gününü seçtiğim tüm personelin nöbet ayı ve nöbet günü bilgilerinin boşaltılmasını istiyorum.
***bunu istememdeki maksat bir sonraki nöbeti girerken hem kolaylık olsun, hemde arşive kaldırırken mükerrer kayıt aktarılmasının önüne geçmek.
şimdiden yardımlarınız için teşekkür eder saygılarımı sunarım... umarım isteğimi anlatabilmişimdir.
Sayın alperadn01,
EK’te;uygulamanız üzerinde bazı düzenlemelerde bulunmak sureti ile talep ettiğinize uygun olabileceği düşünülen bir uygulama hazırlanmıştır.inceleyebilirsiniz.
Uygulamada;arşiv işlevi iptal edilmiştir ve yerine tek tablo üzerinden sorgu aracılığı ile ilgili form görselleri yapılmaktadır.elbette,form yerine rapor da oluşturabilirsiniz.tercih ve denemeler sizindir.
Arşiv tablolarının genelde şu amaç ile kullanılması daha geçerlidir.belirli bir dönemde oluşturulmuş kayıtların,o dönem sonunda saklanması ve istenildiğinde tekrar,ister raporlama ister denetim için geri dönüş yapılmak sureti ile incelenmesi içindir.ve bunun için de mevcut var olan asıl tablodaki kayıtların istenilen durumlara ve tercihlere göre silinerek iptal edilmesi ve bu iptal öncesinde de oluşturulan bu arşiv amaçlı tabloda saklanmasıdır.bu,aynı zamanda,uygulama üzerinde ikinci bir aynı içerik ve özelliklerde tablo daha barındırmak sureti ile uygulamanın mevcut miktarını artırmamak ve şişmesine neden olarak performans kaybı içerisinde olmamasını da sağlamak içindir.
Konunuzun 4.mesajında yapılmak istenen açıklama ve iki yöntem önerisi de bu kapsamda değerlendirilmek sureti ile yapılmıştır.çünkü;eğer arşivleme için ayrı bir tablo uygulanması isteniyorsa,önce arşive aktarılacak kayıtların bu arşiv tablosuna aktarımını geçerli şekilde sağlamak gerekmektedir.ya kontrollü olarak tek tek her bir kayıt girildikten sonra aktarılmalı ya da örneğinizdeki gibi topluca yapılmak durumu söz konusu ise,o zaman da bir o kadar daha kayıt eklenmemesi için önceki mevcut kayıtların silinip yenilerinin aktarılması sağlanmalı.
Yok eğer,son 5.mesajınızda belirttiğiniz gibi arşiv tablosunda personel bilgilerinin kalması ve sadece diğer bilgilerin boşaltılması ise,o zaman;bunu bir UPDATE Sql sorgu ifadesi ile veya bir Güncelleme sorgusu ile sadece istenilen alanların boş bırakılması sağlanabilir.böylece,tercihe göre personel bilgileri kalır ve diğer bilgiler bu sonucu elde edebilir.bu;alternatif öneri mahiyetinde yapılmış bir açıklamadır.bilginize...İyi çalışmalar,Saygılar.
EK’te;uygulamanız üzerinde bazı düzenlemelerde bulunmak sureti ile talep ettiğinize uygun olabileceği düşünülen bir uygulama hazırlanmıştır.inceleyebilirsiniz.
Uygulamada;arşiv işlevi iptal edilmiştir ve yerine tek tablo üzerinden sorgu aracılığı ile ilgili form görselleri yapılmaktadır.elbette,form yerine rapor da oluşturabilirsiniz.tercih ve denemeler sizindir.
Arşiv tablolarının genelde şu amaç ile kullanılması daha geçerlidir.belirli bir dönemde oluşturulmuş kayıtların,o dönem sonunda saklanması ve istenildiğinde tekrar,ister raporlama ister denetim için geri dönüş yapılmak sureti ile incelenmesi içindir.ve bunun için de mevcut var olan asıl tablodaki kayıtların istenilen durumlara ve tercihlere göre silinerek iptal edilmesi ve bu iptal öncesinde de oluşturulan bu arşiv amaçlı tabloda saklanmasıdır.bu,aynı zamanda,uygulama üzerinde ikinci bir aynı içerik ve özelliklerde tablo daha barındırmak sureti ile uygulamanın mevcut miktarını artırmamak ve şişmesine neden olarak performans kaybı içerisinde olmamasını da sağlamak içindir.
Konunuzun 4.mesajında yapılmak istenen açıklama ve iki yöntem önerisi de bu kapsamda değerlendirilmek sureti ile yapılmıştır.çünkü;eğer arşivleme için ayrı bir tablo uygulanması isteniyorsa,önce arşive aktarılacak kayıtların bu arşiv tablosuna aktarımını geçerli şekilde sağlamak gerekmektedir.ya kontrollü olarak tek tek her bir kayıt girildikten sonra aktarılmalı ya da örneğinizdeki gibi topluca yapılmak durumu söz konusu ise,o zaman da bir o kadar daha kayıt eklenmemesi için önceki mevcut kayıtların silinip yenilerinin aktarılması sağlanmalı.
Yok eğer,son 5.mesajınızda belirttiğiniz gibi arşiv tablosunda personel bilgilerinin kalması ve sadece diğer bilgilerin boşaltılması ise,o zaman;bunu bir UPDATE Sql sorgu ifadesi ile veya bir Güncelleme sorgusu ile sadece istenilen alanların boş bırakılması sağlanabilir.böylece,tercihe göre personel bilgileri kalır ve diğer bilgiler bu sonucu elde edebilir.bu;alternatif öneri mahiyetinde yapılmış bir açıklamadır.bilginize...İyi çalışmalar,Saygılar.
Konuyu Okuyanlar: 2 Ziyaretçi