كيفية استخدام مربعات التحرير والسرد ذات معلمات في مشروع Access

هام: تمت ترجمة هذا المقال باستخدام برنامج ترجمة آلية لشركة مايكروسوفت بدلاً من الاستعانة بمترجم بشري. تقدم شركة مايكروسوفت كلاً من المقالات المترجمة بواسطة المترجمين البشر والمقالات المترجمة آليًا وبالتالي ستتمكن من الوصول إلى كل المقالات الموجودة في قاعدة المعرفة الخاصة بنا وباللغة الخاصة بك. بالرغم من ذلك، فإن المقالة المترجمة آليًا لا تكون دقيقة دائمًا وقد تحتوي على أخطاء إملائية أو لغوية أو نحوية، مثل تلك الأخطاء الصادرة عن متحدث أجنبي عندما يتحدث بلغتك. لا تتحمل شركة مايكروسوفت مسئولية عدم الدقة أو الأخطاء أو الضرر الناتج عن أية أخطاء في ترجمة المحتوى أو استخدامه من قبل عملائنا. تعمل شركة مايكروسوفت باستمرار على ترقية برنامج الترجمة الآلية

اضغط هنا لرابط المقالة باللغة الانجليزية281870
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
متوسطة: يتطلب ماكرو الأساسية ترميز و المهارات إمكانية التشغيل المتداخل.

يتم تطبيق هذا المقال فقط على مشروع Microsoft Access (.adp).

الموجز
توفير مربعات التحرير والسرد طريقة جيدة من تقديم قائمة الاختيارات لمستخدم. إذا احتاج مصدر الصف لمربع التحرير والسرد أن استناداً إلى مجموعة فرعية من السجلات من جدول أو استعلام, يمكنك إضافة جملة WHERE لتحديد الخيارات التي.

يضيف المثال في هذه المقالة مربع التحرير والسرد إلى نموذج العملاء في المشروع نموذج NorthwindCS.adp. يسرد مربع التحرير والسرد الطلبات التي تم وضعها من قبل العميل الحالي. عند تحديده، النموذج Orders فتح ، تظهر تفاصيل الترتيب المحدد.

يمكنك استخدام أربعة أساليب مختلفة لإنشاء قائمة المتطابقة الطلبات التي تم وضعها من قبل عميل. استخدم هذه الطرق مشروع Access (.adp) مع Microsoft SQL Server 2000 كمصدر بيانات. هذه الطرق الموضحة في القسم التالي.
معلومات أخرى

إنشاء مربع تحرير وسرد

يعرض هذا القسم كيفية إنشاء مربع تحرير وسرد في نموذج العملاء يعرض قائمة طلبات العميل الحالي أولاً.
  1. افتح نموذج العملاء في Design View.
  2. في مربع الأدوات، انقر فوق معالجات عناصر التحكم ثم قم بإضافة مربع التحرير والسرد إلى النموذج.
  3. على الصفحة الأولى من المعالج، حدد البحث عن القيم في جدول أو استعلام "، ثم انقر فوق التالي.
  4. على الصفحة الثانية من المعالج انقر فوق الجدول Orders (الطلبيات) ثم انقر فوق التالي.
  5. من الصفحة الثالثة من المعالج إضافة OrderID "و" معرف العميل "و" تاريخ الطلب كحقول في مربع التحرير والسرد ثم انقر فوق التالي.
  6. في الصفحة الرابعة من المعالج، انقر لإلغاء تحديد إخفاء العمود مفتاح ثم ثم تقليص عمود معرف العميل بحيث لا يظهر. انقر فوق التالي.
  7. في الصفحة الخامس من المعالج، انقر فوق التالي مرة أخرى لقبول OrderID كحقل لتخزين أو استخدامها في قاعدة البيانات.
  8. على الصفحة السادس من المعالج، حدد تذكر القيمة لاستخدامها لاحقاً "، ثم انقر فوق التالي.
  9. في الصفحة الأخيرة من المعالج تسمية مربع التحرير والسرد تحديد ترتيب ثم انقر فوق إنهاء.
  10. افتح صفحة الخصائص لمربع التحرير والسرد ثم قم بتغيير اسم مربع التحرير والسرد إلى SelectOrderCombo.
  11. تعيين خاصية "عند_النقر" من مربع التحرير والسرد إلى إجراء الحدث التالي:
    Private Sub SelectOrderCombo_Click()On Error GoTo Err_SelectOrderCombo_Click    Dim stDocName As String    Dim stLinkCriteria As String    stDocName = "Orders"    stLinkCriteria = "[OrderID]=" & Me![SelectOrderCombo]    DoCmd.OpenForm stDocName, , , stLinkCriteriaExit_SelectOrderCombo_Click:    Exit SubErr_SelectOrderCombo_Click:    MsgBox Err.Description    Resume Exit_SelectOrderCombo_ClickEnd Sub					

إضافة الرمز إلى تحديث مربع تحرير وسرد

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

يعيد أساليب 1 و 2 كل مرة يتم تحديد مربع التحرير والسرد الحدث OnClick تعيين مصدر الصف لمربع التحرير والسرد لعرض الطلبات التي تطابق العميل الحالي.

ملاحظة: لأن حقل معرف العميل حقل "نص" ، يجب أن تكون متصلاً علامات اقتباس مفردة (') حول مرجع النماذج. على سبيل المثال يتم تحويل جملة WHERE التي تم إنشاؤها من:
WHERE CustomerID = '" & Forms![Customers]![CustomerID] & "'"				
إلى:
WHERE CustomerID = 'ALFKI'				

الطريقة 1: تحديد Hoc Ad باستخدام

تعيين الخاصية OnEnter مربع التحرير والسرد إلى إجراء الحدث التالي:
Me.SelectOrderCombo.RowSource = "SELECT TOP 100 PERCENT OrderID, CustomerID, OrderDate FROM Orders WHERE " _     & "CustomerID = '" & Forms![Customers]![CustomerID] & "' ORDER BY OrderDate DESC"				

الطريقة 2: استخدام طريقة عرض SQL Server

  1. إنشاء طريقة عرض جديدة في "مصمم" عرض ثم حدد OrderID في تعريف العميل والحقول OrderDate من الجدول "طلبيات" Orders. لفرز قائمة الطلبات من الأحدث إلى الأقدم تعيين نوع الفرز لحقل OrderDate تنازلي.
  2. حفظ طريقة العرض كـ vwCustomerOrders.
  3. تعيين الخاصية OnEnter مربع التحرير والسرد إلى إجراء الحدث التالي:
    Me.SelectOrderCombo.RowSource = "SELECT * FROM vwCustomerOrders WHERE CustomerId = '" & Forms![Customers]![CustomerID] & "'"					
أساليب 3 و 4 يسمى مربع التحرير والسرد الأسلوب Requery على الحدث OnEnter أعد تنفيذ إجراء مخزن أو دالة SQL بإرجاع السجلات المتطابقة. في هذه الأمثلة يتم تعريف معلمة عنصر تحكم في النموذج باستخدام @ ControlName في المعايير. الوصول تقييم المعايير تلقائياً ثم يطلب سجلات متطابقة.

في الأمثلة التالية بإرجاع مربع التحرير والسرد قائمة كافة طلبات العميل الحالي. لأن مربع النص معرف العميل يحتوي على "معرف العميل الحالي" ، يمكنك الرجوع مباشرة إلى مربع نص "معرف العميل" في إجراء مخزن أو معايير دالة SQL.

الطريقة الثالثة: استخدام SQL Server المخزنة إجراء

  1. إنشاء إجراء جديد في مصمم رسومية.
  2. حدد الجدول Orders (الطلبيات) ثم قم بإضافة OrderID في تعريف العميل والحقول OrderDate إلى الإجراء المخزن.
  3. أدخل معرف @ العميل كمعايير حقل معرف العميل و فرز حقل OrderDate تنازلي.
  4. حفظ الإجراء المخزن spCustomerOrders ثم قم بإغلاق عليه.
  5. تعيين الإجراء spCustomerOrders تخزين كمصدر الصف لمربع التحرير والسرد.

    ملاحظة: تم إنشاؤها عبارة SQL التالية ويتم حفظها بواسطة مخزّنة "مصمم إجراء":
    CREATE PROCEDURE dbo.spCustomerOrders  (@CustomerID varchar(5))  AS SELECT OrderID, CustomerID, OrderDate  FROM   dbo.Orders  WHERE  (CustomerID = @CustomerID)  ORDER BY OrderDate DESC					
  6. تعيين الخاصية OnEnter مربع التحرير والسرد إلى إجراء الحدث التالي:
    Me.SelectOrderCombo.Requery					

الطريقة 4: استخدام دالة SQL Server 2000

يمكنك استخدام هذه الطريقة فقط إذا كان مشروع Access يستخدم SQL Server 2000 أو إصدار أحدث كمصدر بيانات.
  1. إنشاء دالة في مصمم رسومية.
  2. حدد الجدول Orders (الطلبيات) ثم قم بإضافة OrderID في تعريف العميل والحقول OrderDate إلى الإجراء المخزن.
  3. أدخل معرف @ العميل كمعايير حقل معرف العميل و فرز حقل OrderDate تنازلي.
  4. حفظ الدالة fnCustomerOrders ثم قم بإغلاق عليه.
  5. تعيين الدالة fnCustomerOrders كمصدر الصف لمربع التحرير والسرد.

    ملاحظة: تم إنشاؤها عبارة SQL التالية ويتم حفظها بواسطة مخزّنة "مصمم إجراء":
    CREATE FUNCTION dbo.fnCustomerOrders  (@CustomerID varchar(5))  RETURNS TABLE  RETURN ( SELECT TOP 100 PERCENT OrderID, CustomerID, OrderDate  FROM   dbo.Orders  WHERE  (CustomerID = @CustomerID)  ORDER BY OrderDate DESC )					
  6. تعيين الخاصية OnEnter مربع التحرير والسرد إلى إجراء الحدث التالي:
    Me.SelectOrderCombo.Requery					
لاختبار هذه الطرق فتح النموذج ومن ثم حدد من مربع التحرير والسرد "تحديد ترتيب". استعلام حدث OnEnter مربع التحرير والسرد تلقائياً إنشاء قائمة طلبات العملاء الحالي. عند تحديد ترتيب تنفيذ الحدث OnClick من مربع التحرير والسرد ثم فتح النموذج Orders عرض الترتيب المحدد.
inf OfficeKBHowTo

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 281870 - آخر مراجعة: 12/05/2015 23:11:21 - المراجعة: 3.1

Microsoft Access 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbprogramming kbadp kbclientserver kbhowto KB281870 KbMtar
تعليقات