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

استدعاء النماذج الفرعية بصورة الية

مغلق
بدأه ايهاب عثمان في 29 نوفمبر 2006 · 7 رد · 2,770 مشاهدة · في قسم أرشيف النماذج والنماذج الفرعية
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني...

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

هذا المقال منقول عن موقع Database Journal وكاتب المقال هو Danny Lesandrini

واليكم شرح للمقال ....

  • يهدف الكاتب من هذا المقال الى عرض طريقة لتحسين اداء تطبيقات الاكسيس من خلال الاقتصار على استدعاء البيانات فقط وقت احتياج المستخدم لها.
  • بدأ الكاتب بالاشارة الى سهولة انشاء النماذج الفرعية وذلك بسحب النموذج الفرعي ثم افلاته في النموذج الرئيسي Drag And Drop
    ثم ضبط خواص الربط لحقول الاباء والابناء (الرئيسية والفرعية) 0000الى هنا والكلام جميل جداً
    ولكن اذا كان الامر يتعلق بالعديد من النماذج الفرعية المرتبطة بالعديد من الجداول مع الاف السجلات ، فلنا ان نتصور حجم الصعوبة.
  • هنا تأتي فكرة المقال والتي تقوم عل مبدأ عدم استدعاء اية بيانات الا وقت الحاجة اليها فقط.
  • وقد ارفق بالمقال مثال عبارة عن قاعدة بيانات بها نموذج رئيسي مقسم الى صفحات (السنة تبويب) كما بالصورة..
    3f540b5035.gif
    بالضغط على الصفحة (لسان التبويب) يظهر النموذج الفرعي الذي يعرض محتوياتها
  • تقوم فكرة المثال على عدم ربط النموذج الرئيسي باية نماذج فرعية الا من خلال الكود المرتبط بحدث "عند التغيير" .فلو قمت بفتح النموذج على طريقة العرض : تصميم لفوجئت بعدم وجود اية نماذج فرعية سوى كائن غير منضم وخاصية "مرئي" مضبوطة على الوضع "لا" ومكانه باعلى يمين النموذج كما بالصورة..
    f44e7680ad.gif
    وباجراء الحدث (تغيير الصفحة) يعمل الكود على تغيير حجم وموقع هذا الكائن غير المنضم وربطه بالنموذج الفرعي الملائم.
    اضغط هنا لتحميل المثال
  • لا يتبقى لنا سوى الحديث عن الكود ....ها هو الكود.
    Private Sub tabPublisher_Change()
    	  On Error Resume Next
    
    	  Dim strSubformName As String
    Select Case Me.tabPublisher
    		 Case 0: strSubformName = ""
    		 Case 1: strSubformName = "sfrmAdditionalInfo"
    		 Case 2: strSubformName = "sfrmEmployeeInfo"
    		 Case 3: strSubformName = "sfrmPublisherTitles"
    		 Case Else: strSubformName = ""
    	  End Select
     If strSubformName = "" Then
    		 Me.objSubform.Visible = False
    	  Else
    		 Me.objSubform.SourceObject = strSubformName
    		 Me.objSubform.LinkMasterFields = "pub_id"
    		 Me.objSubform.LinkChildFields = "pub_id"
    
    		 Me.objSubform.Top = Me.lblAnchor.Top
    		 Me.objSubform.Left = Me.lblAnchor.Left
    		 Me.objSubform.Width = 0.95 * Me.tabPublisher.Width
    		 Me.objSubform.Height = 0.75 * Me.tabPublisher.Height
    
    		 Me.objSubform.Visible = True
    	  End If
    
       End Sub


  • وكما نرى فان الكود مرتبط بالحدث "عند التغيير" للكائن المسمى tabPublisher وهو مجموعة الصفحات/السنة التبويب.
  • يبدأ الكود بالعبارة الشهيرة On Error Resume Next اي عند حدوث خطأ انتقل للسطر التالي من الكود.
  • وبعدها يتم تحديد المتغير الاساسي للكود عن طريق العبارة ...Dim strSubformName As String
    حيث strSubformName هو اسم المتغير ، ونوعه سلسلة حرفية String
  • وبعده يأتي دور العبارة الشرطية Select Case المسئولة عن تحديد وتخزين اسم النموذج الفرعي الذي سيتم تخصيصه على الكائن objSubform
    وعبارة الشرط هنا مرتبطه برقم الصفحة /لسان التبويب الذي سيتم التغيير اليه ... وللمزيد من الشرح للعبارة Select Case راجع المشاركة رقم 12 من هذا الموضوع
    ونلاحظ ان العبارة Select Case هي الانسب والاسهل في حالتنا هذه.وخلاصة عملها هو تعيين اسم النموذج الفرعى الملائم للصفحة التي سيتم التغيير اليها / او عدم تعيين نموذج فرعي في حالة الصفحة الاولى (Case 0).
  • ناتج العبارة الشرطية السابقة اما عدم تعيين نموذج فرعي أو تعيين نموذج فرعي (ايا كان اسمه) .
    • في حالة عدم التعيين سيظل الكائن objSubform مخفيا وسوف نستخدم لاجراء ذلك العبارة الشرطية "if"
      If strSubformName = "" Then
      Me.objSubform.Visible = False
    • في الحالة الاخرى (حالة تعيين نموذج فرعي) يتم تغيير حجم وموقع الكائن ليتناسب مع ابعاد الصفحة المشار اليها كما يتم تعيين حقول الربط الخاصة به
      وهذا هو المكتوب بعد عبارة Else حتى نهاية الجملة الشرطية End If ثم نهاية الكود

تبقى لي ان ارفق لكم المقال الاصلي لمن اراد الاطلاع عليه.

Load_Subforms_Dynamically.rar

هذا وما كان من توفيق فمن الله وما كان من خطأ او نسيان فمن نفسي ومن الشيطان.

والحمد لله رب العالمين.

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

فضائح الرافضة ومخازيهم حين يكتب عنها أحد خصومهم فهذا شيء متوقع ،فإن كتب عنها أحدهم فهو شيء غير مألوف ، وإن كان الكاتب أحد مراجعهم وأخص خواصهم فهذا شيء متناهي الغرابة ، وإن علمت أن الكاتب قد قتل بعد نشر الكتاب فقد حان وقت قراءة الكتاب

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#2

شكرا لمجهودك اخى وافادتنا بالجديد

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

شكرا اخى على المجهود والافادة بالجديد

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

#3

اخي الكريم....yassin123

بارك الله فيك

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

فضائح الرافضة ومخازيهم حين يكتب عنها أحد خصومهم فهذا شيء متوقع ،فإن كتب عنها أحدهم فهو شيء غير مألوف ، وإن كان الكاتب أحد مراجعهم وأخص خواصهم فهذا شيء متناهي الغرابة ، وإن علمت أن الكاتب قد قتل بعد نشر الكتاب فقد حان وقت قراءة الكتاب

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#4

بارك الله فيك اخي ايهاب على هذه المعلومات القيمة

وزادك الله علما ونفع بك

#5

وبارك الله فيكم استاذتنا الفاضلة زهرة.

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

فضائح الرافضة ومخازيهم حين يكتب عنها أحد خصومهم فهذا شيء متوقع ،فإن كتب عنها أحدهم فهو شيء غير مألوف ، وإن كان الكاتب أحد مراجعهم وأخص خواصهم فهذا شيء متناهي الغرابة ، وإن علمت أن الكاتب قد قتل بعد نشر الكتاب فقد حان وقت قراءة الكتاب

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

#6

thanks alot

#7

بسم الله والحمد لله والصلاة والسلام على رسول الله

شكراً مهندس / ايهاب على هذه المعلومة القيمة فعلاً والمجهود المبذول

mohamed ora

#8

الاخوة الافاضل mirrio و Mohamed Ora

بارك الله فيكم

طبتم واهتديتم :)

===================================

إقرأ معي

رابط متجدد لكتاب أقرؤه فشاركني فيه

======

فضائح الرافضة ومخازيهم حين يكتب عنها أحد خصومهم فهذا شيء متوقع ،فإن كتب عنها أحدهم فهو شيء غير مألوف ، وإن كان الكاتب أحد مراجعهم وأخص خواصهم فهذا شيء متناهي الغرابة ، وإن علمت أن الكاتب قد قتل بعد نشر الكتاب فقد حان وقت قراءة الكتاب

الكتاب :

حسين الموسوي - لله تم للتاريخ ، كشف الأسرار وتبرئة الأئمة الأطهار

اضغط على الصورة لتحميل الكتاب

%E1%E1%E5%20%CB%E3%20%E1%E1%CA%C7%D1%ED%CE.jpg

-----------

كتب سابقة

سعد الدين الشاذلي - مذكرات حرب أكنتوبر

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

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