AccessTr.neT
Ribbon Menü - 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ığı: Ribbon Menü (/konu-ribbon-menu.html)

Sayfalar: 1 2 3


Ribbon Menü - metin02 - 17/07/2018

Hayırlı akşamlar.
Eklemiş olduğum dosyada birim sil butonunu form üzerinde yapabildim ancak menüde yapamadım. Menüde Yeni birim ekle ve kaydet yaptım.
Yardımcı olursanız sevinirim teşekkürler.


Cvp: Ribbon Menü - ozanakkaya - 17/07/2018

basRibbonCallbacks isimli modülde,


Case "btnBrmYonKadet"



Kodunun üzerine


Case "btnBrmYonSil"

If MsgBox(Forms![FRM_BIRIM_YONETIMI]![txtBirimNo] & " numaralı birimi silmek istediğinize emin misiniz", vbCritical + vbYesNo) = vbYes Then
   DoCmd.SetWarnings False
   DoCmd.RunSQL "DELETE BIRIMNO FROM TBLBİRİMLER WHERE (((TBLBİRİMLER.BIRIMNO)='" & Forms![FRM_BIRIM_YONETIMI]![txtBirimNo] & "'));"
   DoCmd.SetWarnings True
   Forms![FRM_BIRIM_YONETIMI].Requery
End If


kodu ekleyiniz.


Cvp: Ribbon Menü - metin02 - 18/07/2018

Teşekkürler.
Kodlar çalışıyor ancak  bu birimlerin altında birde dönemler var. Dönem olduğu zaman hata veriyor.
Aşağıdaki kodlar form üzerinde bulunan butona ait.

On Error GoTo Hata_Yakala
Dim varmi_donem As Byte
Dim silinecek_firma As String
    varmi_donem = DCount("DONEMYILI", "TBLDONEMLER", "BIRIMNO='" & Me.txtBirimNo & "'")
    If varmi_donem > 0 Then
        MsgBox "Seçtiğiniz Birime ait çalışma dönemi mevcut." & vbCrLf & vbCrLf & "Birimi silmek istediğinizden eminseniz önce tüm dönemleri silmelisiniz.", vbCritical + vbOKOnly, "Mevcut Dönemler Var"
        Me.Undo
        Exit Sub
    Else
        If MsgBox("Birimi sildiğiniz takdirde tüm bilgilerinizi kaybedeceksiniz!!!" & vbCrLf & vbCrLf & " " & Me.txtBirimAdi & " Biriminin kayıtlarını silmek istediğinize emin misiniz?", vbCritical + vbYesNo, "Kritik İşlem Kararı!") = vbYes Then
            silinecek_firma = CurrentProject.Path & "\Birimler\DataBirim\Birim" & Me.txtBirimNo
            DoCmd.SetWarnings False
            RmDir silinecek_firma
            DoCmd.RunCommand acCmdDeleteRecord
            Me.Lst_Birim.Requery
            Me.txtEmpTotal = Me.Lst_Birim.ListCount
            MsgBox "Birim başarıyla silindi.", vbInformation + vbOKOnly, "İşlem Başarılı"
            DoCmd.SetWarnings True
    End If
Hata_Cikis:
Me.Undo
    End If
    Exit Sub
Hata_Yakala:
    If Err.Number = 75 Then
        MsgBox "Silme işlemi gerçekleştirilemedi. Eğer program açık ise programdan çıkış yapmalısınız.", vbCritical + vbOKOnly, "Kritik Hata"
    End If
    Resume Hata_Cikis


Cvp: Ribbon Menü - ozanakkaya - 18/07/2018

Önceki mesajımda yazdığım kodu aşağıdaki ile değiştirerek deneyiniz.

Case "btnBrmYonSil"


   If MsgBox("Seçtiğiniz Birime ait çalışma dönemi mevcut." & vbCrLf & vbCrLf & "Birimi sildiğinizde çalışma dönemi de silinecektir. Dönemi ve Birimi Silmek İstediğinize emin misiniz?.", vbCritical + vbYesNo, "Mevcut Dönemler Var") = vbYes Then
   
       silinecek_firma = CurrentProject.Path & "\Birimler\DataBirim\Birim" & Forms![FRM_BIRIM_YONETIMI]![txtBirimNo]
       DoCmd.SetWarnings False
       RmDir silinecek_firma
   
       DoCmd.RunSQL "DELETE BIRIMNO FROM TBLDONEMLER WHERE (((BIRIMNO)='" & Forms![FRM_BIRIM_YONETIMI]![txtBirimNo] & "'));"
       DoCmd.RunSQL "DELETE BIRIMNO FROM TBLBİRİMLER WHERE (((BIRIMNO)='" & Forms![FRM_BIRIM_YONETIMI]![txtBirimNo] & "'));"
       DoCmd.SetWarnings True
       Forms![FRM_BIRIM_YONETIMI].Requery
       Forms![FRM_BIRIM_YONETIMI]!Lst_Birim.Requery
       Forms![FRM_BIRIM_YONETIMI]!txtEmpTotal = Forms![FRM_BIRIM_YONETIMI]!Lst_Birim.ListCount
       MsgBox "Birim başarıyla silindi.", vbInformation + vbOKOnly, "İşlem Başarılı"
       DoCmd.SetWarnings True
   
   
End If



Cvp: Ribbon Menü - metin02 - 18/07/2018

[Resim: KnAUIk.png][Resim: f3AodY.png]
Teşekkürler. Birimleri sildi ama dönem olan birimlerde eklemiş olduğum hatayı verdi.


Cvp: Ribbon Menü - metin02 - 18/07/2018

Birde birimde dönem olduğu mesajını gösterip silme işlemini iptal etmesini sağlayabilirmiyiz.