[SORGU] Sorguda 3 olayın yanyana getirilmesi
#1
Selam,

Öncelikli olarak üstadlara ve uzmanlara çalışmalarıma kattıkları desteklerden ötürü saygılarımı sunarım.


Devam etmekte olduğum ve bitirmeme çok az kalan "denetim" konulu çalışmamla ilgili bir kaç sorum var. Çalışmamı bitirdiğimde siteye ekleyeceğim.


Sorularım;

1-GunBirim isimli bir sorgum var. Birime göre gruplanan Tarihler alanı yanyana fonksiyonu ile yanyana getirilmiştir. Yanyana gelen tarihlerde tespit edilen toplam aksaklık sayısı tarihlerin hemen yanında "()" içinde görülmektedir. Tarihler alanına ilgili tarihte yapılan kontrolün KayıtNo sunu nasıl getirilebilir. GunBirim sorgusu Tarihler alanı 1-22.02.2019(9) olmalı. 1=KayitNo


2-Form üzerindeki Aylık Raporu Hazırla butonu DosyaGecici tablosundaki verileri DosyaAy tablosuna atmaktadır. Atmadan önce atılacak verilerin DosyaAy tablosunda olup olmadığının kontrol ettirilmesini, kontrol sonrasında aktarma işlemi öncesi evet/hayır sorusunun bulunmasını ve cevap evet ise prosedürün uygulanmasını, hayır ise uygulanmamasını nasıl sağlarız.

Teşekkürler


Eklenti Dosyaları
.rar   Denetim.rar (Boyut: 1,37 MB / İndirilme: 78)
.rar   Denetim1.rar (Boyut: 1,37 MB / İndirilme: 68)



  Alıntı
Bu mesajı beğenenler:
#2
Public Function GB(strField As String, strTable As String, Optional strWhere As String, Optional
...
strSql = "SELECT [KayitNo] & '-' & " & strField & " & ' (' & Count(*) & ')' As Kac FROM " & strTable
...
strSql = strSql & " GROUP BY DosyaGun." & strField & ", DosyaGun.[Birim], DosyaGun.[KayitNo]"
...
end sub
Koyu olan yerleri ekleyiniz.

Visual Basic
  1. Private Sub AylıkRapor_Click()
  2. Dim Kyt As New ADODB.Recordset, Cvp As Long
  3. Kyt.Open "Select Birim, Madde, Oneri from DosyaGecici", CurrentProject.Connection, adOpenKeyset, adLockReadOnly
  4. If Kyt.RecordCount <= 0 Then Exit Sub
  5. Kyt.MoveFirst
  6. Do Until Kyt.EOF
  7. If DCount("*", "DosyaAy", "([Tarih] & [Birim] & [Madde])='" & Date & Kyt!Birim & Kyt!Madde & "'") > 0 Then
  8. Cvp = MsgBox("Var olan kaydi yuklemek istermsiniz?", vbCritical + vbYesNo, "Kayit Kontrol")
  9. Else
  10. Cvp = 6
  11. End If
  12. If Cvp = 6 Then
  13. CurrentDb.Execute "insert into DosyaAy([KayitNo],[Tarih],[Birim],[Madde],[Oneri])" & _
  14. "Values('" & DMax("[KayitNo]", "[SıraA]") + 1 & "','" & Date & "', '" & Kyt!Birim & "', '" & Kyt!Madde & "', '" & Kyt!Oneri & "')"
  15. End If
  16. Kyt.MoveNext
  17. Loop
  18. Kyt.Close: Set Kyt = Nothing
  19. CurrentDb.Execute "delete DosyaGecici, * from DosyaGecici"
  20. End Sub



DosyaAy'a kayit yuklemeyi, kontrollu yapilabilmesi icin once sor, sonra yukle ile VBA ile yapilabilir.



  Alıntı
Bu mesajı beğenenler:
#3
Sayın dsezgin üstad cevap için teşekkürler,
#Mesaj-1# ekine Denetim1 ekledim. Bi düzeltmem olacak.

1.Sorum sonuçlandı.

2.Sorumu aşağıdaki şekilde düzeltmek istiyorum.

"Form üzerindeki Aylık Raporu Hazırla butonu DosyaGecici tablosundaki verileri önce DosyaKalici tablosunda aramalı,
A-DosyaGecici tablosundaki verilerin tamamı (KayitNosu, Tarihi, Birimi, Maddesi, Onerisi = ise) DosyaKalici tablosunda varsa işlem İPTAL olmalı, hiç bir yere hiçbir kayıt atmamalı.

B-Kayıt yoksa DosyaKalici ve DosyaAy tablolarına atmalı. Verileri aktarmadan önce evet/hayır sorusu sormalı. Cevap Evet ise prosedür uygulansın, Cevap hayır ise hiçbir değişiklik yapmasın.

Teşeküürler

Açıklama:
1-DosyaKalici tablosunun olma nedeni aylık rapora gönderilen günlük raporların kayıtlarını muhafaza edecektir.
2-DosyaAy (Buraya atılacak kayıtlar ayda bir kez atılacağı için aylık tek KayitNo artar ve işlemin yapıldığı tarihi alır. DosyaGecici tablosunda kayıtlı veriler zaman içinde giderilen aksaklıklar nedeniyle azalabilmektedir. Buradaki form üzerinde buton ve formların birçoğu bulunmuyor. İşlem bitince atacağım)



  Alıntı
Bu mesajı beğenenler:
#4
Puf noktasi Dcount(... fonksiyonu, yontemleri kendi senaryonuza uygun degisiklikleri yapabilirsiniz.



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [SORGU] Sorguda Iif mart02 7 227 10-09-2023, 14:23
Son Mesaj: halily
  Sorguda Toplam Alma Bora34 3 297 23-07-2022, 22:07
Son Mesaj: onur_can
  Sorguda Sıralama Işlemi Hk. adnnfrm 11 517 09-07-2022, 14:04
Son Mesaj: dsezgin
  Sorguda ıff Kullanımı alikagan 2 336 30-06-2022, 18:39
Son Mesaj: alikagan
  [SORGU] Sorguda Son 5 Id Yi Seçme ahmetsan 8 278 20-06-2022, 09:43
Son Mesaj: ahmetsan
  Sorguda Toplam Işlevi calief 24 1.261 16-08-2021, 09:52
Son Mesaj: calief
  [SORGU] Sorguda Döngü Kullanımı askme_16 4 717 29-06-2020, 10:45
Son Mesaj: askme_16
  Access Sorguda Toplama enginceken 7 992 20-04-2020, 07:18
Son Mesaj: dsezgin

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi