Skip to main content

AccessTr.neT


Farklı formlarda bulunan giriş-çıkış tutarının Kasa formuna eklemek

Farklı formlarda bulunan giriş-çıkış tutarının Kasa formuna eklemek

#13
Hocam Kasa formunda Gelir ve Gider satırları haliyle beraber yürüyor,
-Resim  de görüldüğü gibi  Gider bölümüne Maasodeme ve Avans forumlarından gelen kayıtların dışında Kasa formunda bulunan gelir bölümüne veri girdim,Daha sonrada Maaşodeme formundan kayıt girdim bu sefer arada boşluk kaldı boşluk bırakmadan sırasıyla kayıt girilmesini sağlayabilirmiyiz,yani boşluk bırakmadan.
Saygılarımla.
.rar Adsız.png1.rar (Dosya Boyutu: 70,6 KB | İndirme Sayısı: 5)
Cevapla
#14
Sayın Ozan Hocam,
Rica etsem Olumlu veya olumsuz bir cevap verebilirmisiniz.
Saygılarımla.
Cevapla
#15
Yeni sorgu oluştur, Sql koduna aşağıdakileri ekle

SELECT TOP 1 tbl_KASA.ISLEMTARIHI, tbl_KASA.GELIRCESIDI, tbl_KASA.GIDERCESIDI, tbl_KASA.NAKIT1

FROM tbl_KASA
WHERE (((tbl_KASA.ISLEMTARIHI)=[Formlar]![frm_AVANS]![AVANSTAR]) AND ((tbl_KASA.GIDERCESIDI) Is Null));

bu sorguyu "srg_boskontrol" adında kaydet.


Avans formundaki  "AVANSTUTAR" metin kutusunun güncelleştirme sonrasında olayındaki kodu aşağıdaki ile değiştir.


If MsgBox("İşlem kaydedilsin mi?", vbInformation + vbYesNo) = vbYes Then

   DoCmd.RunCommand acCmdSaveRecord
   DoCmd.SetWarnings False
       If DCount("*", "srg_boskontrol") > 0 Then
           DoCmd.RunSQL "UPDATE srg_boskontrol SET srg_boskontrol.GIDERCESIDI = [Formlar]![frm_AVANS]![Metin24] & ' - Avans', srg_boskontrol.NAKIT1 = [Formlar]![frm_AVANS]![AVANSTUTAR] WHERE (((srg_boskontrol.ISLEMTARIHI)=[Formlar]![frm_AVANS]![AVANSTAR]));"
       Else
           DoCmd.RunSQL "INSERT INTO tbl_KASA ( ISLEMTARIHI, NAKIT1, GIDERCESIDI ) SELECT tbl_AVANS.AVANSTAR, tbl_AVANS.AVANSTUTAR, tbl_PERSONEL.ADISOYADI FROM tbl_AVANS INNER JOIN tbl_PERSONEL ON tbl_AVANS.PERSID = tbl_PERSONEL.PERSID WHERE (((tbl_AVANS.AVANSTAR)=[Formlar]![frm_AVANS]![AVANSTAR]) AND ((tbl_AVANS.AVANSTUTAR)=[Formlar]![frm_AVANS]![AVANSTUTAR]));"
       End If
   DoCmd.SetWarnings True
Else
   Me.Undo
End If
Cevapla
#16
Sayın Ozan Hocam,
-Dediklerinizi aynen uyguladım sonuç mükemmel oldu ellerinize sağlık,
-Maasodmede aynı işlemimi yapmam gerek.Yoksa farklı bir kodmu yazılması gerekiyor.
Saygılarımla.
Cevapla
#17
(09/08/2015, 18:47)fascioğlu yazdı: If MsgBox("İşlem kaydedilsin mi?", vbInformation + vbYesNo) = vbYes Then

   DoCmd.RunCommand acCmdSaveRecord
   DoCmd.SetWarnings False
       If DCount("*", "srg_boskontrol") > 0 Then
           DoCmd.RunSQL "UPDATE srg_boskontrol SET srg_boskontrol.GIDERCESIDI = [Formlar]![frm_AVANS]![Metin24] & ' - Avans', srg_boskontrol.NAKIT1 = [Formlar]![frm_AVANS]![AVANSTUTAR] WHERE (((srg_boskontrol.ISLEMTARIHI)=[Formlar]![frm_AVANS]![AVANSTAR]));"
       Else
           DoCmd.RunSQL "INSERT INTO tbl_KASA ( ISLEMTARIHI, NAKIT1, GIDERCESIDI ) SELECT tbl_AVANS.AVANSTAR, tbl_AVANS.AVANSTUTAR, tbl_PERSONEL.ADISOYADI FROM tbl_AVANS INNER JOIN tbl_PERSONEL ON tbl_AVANS.PERSID = tbl_PERSONEL.PERSID WHERE (((tbl_AVANS.AVANSTAR)=[Formlar]![frm_AVANS]![AVANSTAR]) AND ((tbl_AVANS.AVANSTUTAR)=[Formlar]![frm_AVANS]![AVANSTUTAR]));"
       End If
   DoCmd.SetWarnings True
Else
   Me.Undo
End If


Aynı kodu yazarsan çalışmaz. kodda görüleceği üzere frm_avans isimli formdaki alanlardaki veriyi aktarıyor.


frm_maas isimli formdaki odenen metin kutusunun güncelleştirme sonrasında olayına aşağıdaki kodu ekle.



Private Sub ODENEN_AfterUpdate()

If MsgBox("İşlem kaydedilsin mi?", vbInformation + vbYesNo) = vbYes Then

   DoCmd.RunCommand acCmdSaveRecord
  DoCmd.SetWarnings False
      If DCount("*", "srg_boskontrol2") > 0 Then
          DoCmd.RunSQL "UPDATE srg_boskontrol2 SET GIDERCESIDI = [Formlar]![frm_MAASODEME]![ADISOYADI] & ' - Maaş', NAKIT1 = [Formlar]![frm_MAASODEME]![frm_MAAS].[Form]![ODENEN] WHERE (((ISLEMTARIHI)=[Formlar]![frm_MAASODEME]![frm_MAAS].[Form]![ODMTAR]));"
      Else
          DoCmd.RunSQL "INSERT INTO tbl_KASA ( ISLEMTARIHI, NAKIT1, GIDERCESIDI ) SELECT tbl_MAAS.ODMTAR, tbl_MAAS.ODENEN, tbl_PERSONEL.ADISOYADI FROM tbl_MAAS INNER JOIN tbl_PERSONEL ON tbl_MAAS.PERSID = tbl_PERSONEL.PERSID WHERE (((tbl_MAAS.ODMTAR)=[Formlar]![frm_MAASODEME]![frm_MAAS].[Form]![ODMTAR]) AND ((tbl_MAAS.ODENEN)=[Formlar]![frm_MAASODEME]![frm_MAAS].[Form]![ODENEN]));"
      End If
  DoCmd.SetWarnings True
Else
  Me.Undo
End If

End Sub



srg_boskontrol2 adında sorgu oluştur, Sql koduna aşağıdakileri ekle.


SELECT TOP 1 tbl_KASA.ISLEMTARIHI, tbl_KASA.GELIRCESIDI, tbl_KASA.GIDERCESIDI, tbl_KASA.NAKIT1 FROM tbl_KASA WHERE (((tbl_KASA.ISLEMTARIHI)=[Formlar]![frm_MAASODEME]![frm_MAAS].[Form]![ODMTAR]) AND ((tbl_KASA.GIDERCESIDI) Is Null));
Cevapla
#18
Sayın Ozan Hocam
Maasodemede sorunsuz çalıştı,ço teşekkür ederim,projeyi tamamlamam için Urungırıs ile Uruncıkıs kaldı onuda tamamlayıp siteye koyacağım.Malum benim(Hastalığımdan dolayı) zamanım kısıtlı ne zaman ne olacağı belli değil.
Saygılarımla.
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da
Task