الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التحديد بالنموذج الفرعي

مغلقمُجاب
بدأه mahmoud_20 في 21 نوفمبر 2013 · 10 رد · 1,279 مشاهدة · في قواعد بيانات Microsoft Access
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

اخواني واخواتي الاعزاء

انا في صدد انشاء برنامج للاجازات لاحد زملائي بالعمل وقمت بتصميم جزء كبير به والحمد لله ولكن واجهتني مشكلة لم استطيع حلها حيث قمت بانشاء نموذج اساسي وبداخله نموذج فرعي والنموذج الفرعي به حقل اختيار (نعم/لا) وعندما قمت بانشاء زر يقوم بتحديد الكل او الغاء تحديد الكل لاحظت انها يقوم بتحديد لكل الموظفين وليس الموظف الحالي فقط وعند الالغاء ايضا يقوم بنفس الامر

post-274914-0-75757300-1385024989_thumb.

post-274914-0-95180300-1385025033_thumb.

وطلبي يتلخص في الاتي

اريد عند اختيار تحديد الكل او الغاء تحديد الكل بالنموذج الفرعي يقوم بتنفيذه للاسم الحالي وليس لجميع الاسماء المسجلة

ارجو تعديل الكود للزر وللتحديد الاخر

واسف للاطاله

مرفق مثال مبسط لمطلبي حيث لا استطيع رفع القاعدة الاساسية وذلك لكبر حجمها ( المرفق بتنسيق 2003 )

MM_20.rar

بالتوفيق

اخوكم ------ محمود المصري

تم تعديل هذه المشاركة بواسطة mahmoud_20 في 21 نوفمبر 2013 في 12:24

(اللَّهُمَّ أَنْتَ رَبِّي لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ أَبوءُ لَكَ بِنِعْمتِكَ علَيَ وأَبُوءُ بذَنْبي فَاغْفِرْ لي فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ)

اذا كانت المشاركة مفيدة لك فلا تبخل علينا بالتقييم

post-274914-0-91580400-1378113578.jpg
#2

تفضل اخي الكريم : محمود

 

 

استبدل جملة الإستعلام بهذه في الكود

 

 

DoCmd.RunSQL "UPDATE ss SET ss.Relay = Yes WHERE (((ss.id)=[FORMS]![GGG]![id]))"
 
 
DoCmd.RunSQL "UPDATE ss SET ss.Relay = NO WHERE (((ss.id)=[FORMS]![GGG]![id]))"
 
 
بالتوفيق

za-MM_20.rar

تم تعديل هذه المشاركة بواسطة zahrah في 21 نوفمبر 2013 في 12:34

2
#3

حقا ما اروعك علي سرعة الرد

الشكر فقط لا يكفي

اللهم إني اسألك من خير ما سألك به محمد صلى الله عليه وسلم ..
واستعيذ بك من شر ما استعاذ به محمد صلى الله عليه وسلم ..
اللهم ارزق ام عهود مغفرتك بلا عذاب ..
وجنتك بلا حساب ورؤيتك بلا حجاب ..
اللهم ارزقها زهور جنانك ..
وشربه من حوض نبيك واسكنها دار تضيء بنور وجهك ..
اللهم اجعلها ممن يورثون الجنان ويبشرون بروح وريحان ورب غير غضبان ..
اللهم حرم وجهها عن النار واسكنها الفردوس الاعلى بغير حساب

اللهم آمين

تم تعديل هذه المشاركة بواسطة mahmoud_20 في 21 نوفمبر 2013 في 12:45

(اللَّهُمَّ أَنْتَ رَبِّي لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ أَبوءُ لَكَ بِنِعْمتِكَ علَيَ وأَبُوءُ بذَنْبي فَاغْفِرْ لي فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ)

اذا كانت المشاركة مفيدة لك فلا تبخل علينا بالتقييم

post-274914-0-91580400-1378113578.jpg
#4

طبعا الدكتورة أم عهود عملت اقل تغيير على الكود الذي عملته انت ، ولم تكتب الكود من جديد :)

 

الكود الذي كتبته انت ، يرجع الى الجدول في كل مرة يحتاج فيها الى تغيير قيمة سجل معين ، يعني في حالتك 4 مرات ، ثم يحدث النموذج 4 مرات ،

بينما الكود الذي اضعه بين يديك كتبته من الصفر ، ولا يرجع للجدول ولا مرة ، وانما يغير القيم في النموذج مباشرة ، فهو اخف على البرنامج :)

 

Private Sub Choose_AfterUpdate()

Set rst = Me.RecordsetClone
rst.MoveFirst

For i = 1 To rst.RecordCount
rst.edit

Select Case Choose
Case 1
rst!Relay = -1
Case 2
rst!Relay = 0
End Select

rst.Update
rst.MoveNext
Next i

End Sub

Private Sub Chose_Click()


Set rst = Me.RecordsetClone
rst.MoveFirst


If Me.Chose.Caption = "Select All" Then

For i = 1 To rst.RecordCount
rst.edit
rst!Relay = -1
rst.Update
rst.MoveNext
Next i

Me.Chose.Caption = "Non-Select"


ElseIf Me.Chose.Caption = "Non-Select" Then

For i = 1 To rst.RecordCount
rst.edit
rst!Relay = 0
rst.Update
rst.MoveNext
Next i

Me.Chose.Caption = "Select All"

End If


End Sub

 

جعفر

96.MM_20.mdb.zip

3
#5
jjafferr كتب:

 

 

فهو اخف على البرنامج :)

 

 

 

بارك الله بك استاذنا الفاضل : جعفر

 

فعلا الكود البرمجي خفيف على ( المعدة )   :) كأنه زيت مازولا

 

اسفه اقصد خفيف على البرنامج فهو يستخدم مجموعة السجلات ولا علاقة له بالجدول

 

 

بالتوفيق

#6

هممم ، ومعلومة جديدة من الدكتورة الفاضلة أم عهود حفظها الله :)

خليني انزل المطبخ بسرعة واتأكد اننا نستعمل زيت مازولا ، الاخف على المعدة  :tbmuahaha:

 

جعفر

#7

الشكر موصول لاخي الكريم جعفر

بارك الله فيك وزادك علماً

(اللَّهُمَّ أَنْتَ رَبِّي لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ أَبوءُ لَكَ بِنِعْمتِكَ علَيَ وأَبُوءُ بذَنْبي فَاغْفِرْ لي فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ)

اذا كانت المشاركة مفيدة لك فلا تبخل علينا بالتقييم

post-274914-0-91580400-1378113578.jpg
#8

عيني عليك باردة اختي أم عهود :)

رديتي على الاخ محمود بسطرين ، قام جازاك بعشر اسطر دعاء غريب عجيب من اعماقه :)

 

انا قلت في نفسي ، قام حظك ياولد ، السماء الآن مفتوحة وتسمع دعاء الاخ محمود ،

ورديت عليه بـ 36 سطر ، وانا حاسبهم: 36 سطر * 10 اسطر دعاء / 2 = 180 سطر دعاء (يعني زيدي ونقصي شوي :) ) ،

بس :(

 

إحنا نغبطك أختي الفاضلة ، ونسأل الله ان يعطيك خير الدنيا والآخرة ، ويدفع عنك شر الدنيا والآخرة ، ولا تنسينا وقت حاجتنا اليك ، فانتي دائما متفضلة متكرمة سبّاقة :)

 

جعفر

#9

السلام عليكم


 


علم غزير وفوائد عظيمة بهذه الصفحة


أشكر أختنا أم عهود


وأشكر أخانا الأستاذ جعفر


---


أخى محمود 


أشكرك لسؤالك القيم


فقد استفدنا منه جميعا


 


لكن


ماذا بعد؟


 


ماذا بعد تحديد عمود ترحيل أو عدم تحديده


هل ستنقل السجلات المحددة لجدول آخر؟


هل ستمسحها؟


أنا فى شوق لمعرفة الخطة


طبعا لتشابه بين هذا البرنامج 


وآخر أقوم بتصميمه


 


جزاكم الله خيرا


#10 أفضل إجابة

انا غيرت في الكود ، وجعلته " أخف " من السابق :)

Private Sub Choose_AfterUpdate()
    
    Select Case Choose
    Case 1
        Call iSelect(-1)
    Case 2
        Call iSelect(0)
    End Select
    
End Sub

Private Sub Chose_Click()

    If Me.Chose.Caption = "Select All" Then
        Call iSelect(-1)
        Me.Chose.Caption = "Non-Select"
        
    ElseIf Me.Chose.Caption = "Non-Select" Then
        Call iSelect(0)
        Me.Chose.Caption = "Select All"
        
    End If

End Sub

Function iSelect(iWhat)

    DoCmd.GoToRecord , , acFirst
    
    For i = 1 To Me.RecordsetClone.RecordCount
        Me.Relay = iWhat
        DoCmd.GoToRecord , , acNext
    Next i
    
    DoCmd.GoToRecord , , acFirst
    
End Function

جعفر

96.MM_20.mdb.zip

1
#11

تسلم اخي الكريم جعفر سلمت يداك

وبالنسبة لاخي ابو لميس

فبعد التحديد سيتم الترحيل لجدول اخر للمحدد فقط ولكني ارسلت هذا المثال لتصحيح الكود الخاص بالتحديد فقط ولكن القاعدة الخاصة بي حجهما تعدي المساحة المتاحة بالمنتدي

تم تعديل هذه المشاركة بواسطة mahmoud_20 في 24 نوفمبر 2013 في 10:09

1

(اللَّهُمَّ أَنْتَ رَبِّي لا إِلَه إِلاَّ أَنْتَ خَلَقْتَني وأَنَا عَبْدُكَ وأَنَا على عهْدِكَ ووعْدِكَ ما اسْتَطَعْتُ أَعُوذُ بِكَ مِنْ شَرِّ ما صنَعْتُ أَبوءُ لَكَ بِنِعْمتِكَ علَيَ وأَبُوءُ بذَنْبي فَاغْفِرْ لي فَإِنَّهُ لا يغْفِرُ الذُّنُوبِ إِلاَّ أَنْتَ)

اذا كانت المشاركة مفيدة لك فلا تبخل علينا بالتقييم

post-274914-0-91580400-1378113578.jpg

هذا الموضوع مغلق.

مواضيع مشابهة