Skip to main content

AccessTr.neT


En Son Değer

En Son Değer

#13
(29/06/2020, 13:01)ozanakkaya yazdı: Neresinin olmadığını anlayamadım. Formu açtığınızda son kayda ait veriler geliyor.
hocam kusura bakmayın yanlış anlattım herhalde. formu açtığımda değilde yeni bir kayıt için açılan kutuları ve metin kutularını doldurup kaydettikten sonra bu kayıt alt forma ekleniyor ya bu arada bu doldurduğum açılan kutular ve metin kutuları boşalıyor. işte bu kutuların boşalmamasını istiyorum.
örneğin : birinci kaydı oluşturdum. ikinci yapacağım kayıtta birinci kaydın aynısı fakat sadece tarihi farklı o yüzden aynı bilgileri bütün açılan kutu ve metin kutularına doldurmaktansa birinci kaydı oluştururken doldurduğum yerler boşalmasın ben sadece tarihi değiştirip ikinci kaydı ekleyeyim.
Cevapla
#14
Merhaba, benim verdiğim kodlar form açılınca çalışıyor. Kodları yeni kayıt butonuna (olay yordamı) ekleyerek kullanabilirsiniz.
Cevapla
#15
(29/06/2020, 15:23)ozanakkaya yazdı: Merhaba, benim verdiğim kodlar form açılınca çalışıyor. Kodları yeni kayıt butonuna (olay yordamı) ekleyerek kullanabilirsiniz.
Hocam kusura bakmayın sizide meşgul ediyorum ama yapamadım kodları ekleyince başka bişey oldu size zahmet bakabilir misiniz?
.rar enginb.rar (Dosya Boyutu: 527,34 KB | İndirme Sayısı: 9)
Cevapla
#16
Private Sub Komut6_Click()

Komut6'nın tıklandığında olayını iki defa yazmışsızın.

Private Sub Komut6_Click()
If MsgBox("Kaydetmek istiyor musunuz? (hayır'a tıklarsanız geri alır)", vbYesNo, "Kaydet") = vbYes Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.GoToRecord , , acNewRec
Else
Me.Undo
Cancel = True
End If
Me.altforum.Requery
End Sub

Private Sub Komut6_Click()
DoCmd.GoToRecord , , acNewRec
Dim AccessTr_SNO As Integer

AccessTr_SNO = DMax("[no]", "Sorgu1")

Me.txtil.DefaultValue = Dlookup ("il_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtilce.DefaultValue = Dlookup ("ilce_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtmerkez.DefaultValue = Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtfider.DefaultValue = Nz(DLookup("fider_kodu", "fider", "[merkez_kodu]='" & Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Me.txtsebep.DefaultValue = Nz(DLookup("[no]", "kesinti_yapan", "[kesinti_yapan]='" & Dlookup ("kesinti_sebebi", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)

End Sub

Aynı olayı iki defa yazamazsınız.

Her iki kodu da silip yerine aşağıdaki kodu ekleyiniz.


Private Sub Komut6_Click()

Dim AccessTr_SNO As Integer

If MsgBox("Kaydetmek istiyor musunuz? (hayır'a tıklarsanız geri alır)", vbYesNo, "Kaydet") = vbYes Then

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.GoToRecord , , acNewRec
AccessTr_SNO = DMax("[no]", "Sorgu1")
Me.txtil.DefaultValue = Nz(DLookup("il_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtilce.DefaultValue = Nz(DLookup("ilce_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtmerkez.DefaultValue = Nz(DLookup("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtfider.DefaultValue = Nz(DLookup("fider_kodu", "fider", "[merkez_kodu]='" & Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Me.txtsebep.DefaultValue = Nz(DLookup("[no]", "kesinti_yapan", "[kesinti_yapan]='" & Dlookup ("kesinti_sebebi", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Else
Me.Undo
Cancel = True
End If
Me.altforum.Requery
End Sub
Cevapla
#17
(29/06/2020, 16:51)ozanakkaya yazdı:
Private Sub Komut6_Click()

Komut6'nın tıklandığında olayını iki defa yazmışsızın.

Private Sub Komut6_Click()
If MsgBox("Kaydetmek istiyor musunuz? (hayır'a tıklarsanız geri alır)", vbYesNo, "Kaydet") = vbYes Then
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
DoCmd.GoToRecord , , acNewRec
Else
Me.Undo
Cancel = True
End If
Me.altforum.Requery
End Sub

Private Sub Komut6_Click()
DoCmd.GoToRecord , , acNewRec
Dim AccessTr_SNO As Integer

AccessTr_SNO = DMax("[no]", "Sorgu1")

Me.txtil.DefaultValue = Dlookup ("il_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtilce.DefaultValue = Dlookup ("ilce_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtmerkez.DefaultValue = Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO)
Me.txtfider.DefaultValue = Nz(DLookup("fider_kodu", "fider", "[merkez_kodu]='" & Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Me.txtsebep.DefaultValue = Nz(DLookup("[no]", "kesinti_yapan", "[kesinti_yapan]='" & Dlookup ("kesinti_sebebi", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)

End Sub

Aynı olayı iki defa yazamazsınız.

Her iki kodu da silip yerine aşağıdaki kodu ekleyiniz.


Private Sub Komut6_Click()

Dim AccessTr_SNO As Integer

If MsgBox("Kaydetmek istiyor musunuz? (hayır'a tıklarsanız geri alır)", vbYesNo, "Kaydet") = vbYes Then

    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
    DoCmd.GoToRecord , , acNewRec
    AccessTr_SNO = DMax("[no]", "Sorgu1")
    Me.txtil.DefaultValue = Nz(DLookup("il_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
    Me.txtilce.DefaultValue = Nz(DLookup("ilce_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
    Me.txtmerkez.DefaultValue = Nz(DLookup("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
    Me.txtfider.DefaultValue = Nz(DLookup("fider_kodu", "fider", "[merkez_kodu]='" & Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
    Me.txtsebep.DefaultValue = Nz(DLookup("[no]", "kesinti_yapan", "[kesinti_yapan]='" & Dlookup ("kesinti_sebebi", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Else
    Me.Undo
    Cancel = True
End If
    Me.altforum.Requery
End Sub


Hocam formülü ekledim açılan kutular boşalmıyor ama ikinci kaydı kaydederken açılan kutular boşmuşçasına kaydetmiyor. ekteki hatayı veriyor.
Cevapla
#18
Resimleri ek dosya olarak eklemeyiniz. Resim Ekle butonuna tıklayarak ekleyiniz.
Kaydetme kodunun çalışabilmesi için Kesinti Nedeni ve Enerji Kodu gibi alanların dolu olması gerekiyor. Resimde hatalı gösterilen kod kaydetme kodu.
tablo isimli tabloda gerekli özelliği evet olarak seçilmiş alanlar var. Kaydedebilmeniz için bu alanlar dolu olmalı.

Ayrıca, koddaki veri aktaran kodları aşağıdaki ile değiştirin.


Me.txtil.Requery
Me.txtil = Nz(DLookup("il_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtilce.Requery
Me.txtilce = Nz(DLookup("ilce_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtmerkez.Requery
Me.txtmerkez = Nz(DLookup("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO), 0)
Me.txtfider.Requery
Me.txtfider = Nz(DLookup("fider_kodu", "fider", "[merkez_kodu]='" & Dlookup ("merkez_kodu", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)
Me.txtsebep = Nz(DLookup("[no]", "kesinti_yapan", "[kesinti_yapan]='" & Dlookup ("kesinti_sebebi", "tablo", "[no]=" & AccessTr_SNO) & "'"), 0)

Me.mtnil = txtil.Column(0)
Me.mtnfider = txtfider.Column(0)
Me.mtnilce = txtilce.Column(0)
Me.mtnsebep = txtsebep.Column(1)
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da