اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر

الساده المحترمون    ، محتاج كود لزر الأمر الموجود فى فاتورة البيع يظهر اسمه غلق الفاتورة وعند الضغط عليه يمنع التعديل بالنموذج الرئيسى وكل محتويات النموذج الفرعى ويمنع اضافة أى سطر جديد فى الفاتوره ويتغير إسمه بعد الغلق ل ( تعديل ) وعند الضغط للتعديل يطلب رقم سرى لتعديل بيانات الفاتوره

بعد التعديل.accdb

قام بنشر
منذ ساعه, المهاجر ابو معاذ said:

مشكور أخى الكريم

الكود يعمل على النموذج الفرعى ( تحليلى البيع ) ولكنه يسمح بالتعديل فى النموذج الرئيسى ( فاتورة البيع )

:wavetowel:

قد غفلت عنه فعلاً..

ولكن تستطيع انت ان تعدل وتقوم بإضافة سطر السماح بالتعديل او منع التعديل بنفس أماكن السماح والمنع للنموذج الفرعي.

 

ما لم تستطع ، فليوم غد إن شاء الله تعالى 

  • Like 1
  • تمت الإجابة
قام بنشر
20 ساعات مضت, المهاجر ابو معاذ said:

الكود يعمل على النموذج الفرعى ( تحليلى البيع ) ولكنه يسمح بالتعديل فى النموذج الرئيسى ( فاتورة البيع )

بعد إذن الاخ @Foksh مرفق لك التعديل المطلوب

تحياتي

بعد التعديل.rar

  • Like 1
قام بنشر

مشكووووور أخى الكريم منتصر

 

الكود فعلا ظبط مع النموذج الفرعى ويعمل بنجاح

ولكن النموذج الرئيسى مغلق والمطلوب عند الضغط على زر تعديل أن يعمل على كلا النوذجين الرئيسى والفرعى

لكن ماحدث هو يسمح بالتعديل على الفرعى ولا يسمح على الرئيسى 

والمطلوب أن يكون التحكم على كلا النموذجين

آسف جدا حيرتكم معى

قام بنشر
منذ ساعه, المهاجر ابو معاذ said:

والمطلوب أن يكون التحكم على كلا النموذجين

 

 

أخي الكريم ، كان حلك بسيط جداً وهو بإضافة جملتين فقط للتفعيل وجملتين للمنع ، كود حدث في الحالي للنموذج :-

Private Sub Form_Current()
    On Error GoTo ErrorHandler
    
    Dim frmSub As Form
    
    If Not IsNull(Me.تحليلى_البيع) Then
        Set frmSub = Me.تحليلى_البيع.Form
        
        If Me.NewRecord Then
            Me.أمر19.Caption = "إغلاق"
            
            frmSub.AllowEdits = True
            frmSub.AllowAdditions = True
            frmSub.AllowDeletions = True
            Me.AllowEdits = True
            Me.AllowDeletions = True
        
        ElseIf frmSub.RecordsetClone.RecordCount > 0 Then
            Me.أمر19.Caption = "تعديل"
            
            frmSub.AllowEdits = False
            frmSub.AllowAdditions = False
            frmSub.AllowDeletions = False
            Me.AllowEdits = False
            Me.AllowDeletions = False
        
        Else
            Me.أمر19.Caption = "إغلاق"
            
            frmSub.AllowEdits = True
            frmSub.AllowAdditions = True
            frmSub.AllowDeletions = True
            Me.AllowEdits = True
            Me.AllowDeletions = True
        End If
    End If

ExitHandler:
    Set frmSub = Nothing
    Exit Sub

ErrorHandler:
    MsgBox "حدث خطأ أثناء تحميل البيانات", vbCritical + vbMsgBoxRight, ""
    Resume ExitHandler
End Sub

أو كما أشار إليك الأستاذ @منتصر الانسي ، باستعمال جملة منع و منح صلاحية التعديل فقط ( انا قمت بمنع التعديل والاضافة والحذف ) - باستعمال جملته التالية ولكن في مكانها الصحيح :-

Me.AllowEdits = frmSub.AllowEdits

وكود الزر لا تعديل عليه

 

بعد التعديل.zip

  • Like 1
قام بنشر

اخي @المهاجر ابو معاذ تم تعديل المرفق ليعمل بعد نقر زر التعديل

اخي العزيز @Foksh دعني أخالفك الرأي في كلامك هذا

18 ساعات مضت, Foksh said:

باستعمال جملته التالية ولكن في مكانها الصحيح :-

يفترض بالكود أن يكون في الحد الأدنى من التكرار وطالما أنك قمت في جملة If بالتحقق من الشروط وتعيين خاصيتي السماح بالتعديل والسماح بالحذف في النموذج الفرعي هذا يعني أنه عند إنتهائها أي في End If يكون قد تم النحقق من الشروط وتعديل الخاصيتين وما قمت به أنا هو أني أخذتها عالجاهز وقمت بتعيين نفس النتيجة للنموذج الرئيسي وللتأكد لو راجعت نتائج التعديلين (الخاص بي والخاص بك) ستجد أنها نفس النتيجة وذلك لأنه لم يتم إجراء التعديل على كود النقر على الزر

تحياتي

بعد التعديل.rar

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information