في هذا المقال، سنقوم بشرح أكواد الاكسس باستخدام مثال على دالة DLookUp.
**دالة DLookUp**
دالة DLookUp هي دالة أساسية في الاكسس تستخدم لاسترداد البيانات من جدول أو عرض بناءً على شرط. تأخذ الدالة ثلاثة مدخلات:
* **اسم الحقل الذي تريد استرداد البيانات منه:
** على سبيل المثال، إذا كنت تريد استرداد اسم الطالب، فيمكنك استخدام "[Student]".
* **اسم الجدول أو العرض الذي يحتوي على الحقل الذي تريد استرداد البيانات منه:
** على سبيل المثال، إذا كان الجدول أو العرض يسمى "data"، فيمكنك استخدام "data".
* **الشرط الذي تريد استخدامه لتحديد البيانات التي تريد استردادها:** على سبيل المثال، إذا كنت تريد استرداد البيانات الخاصة بالطالب الذي يحمل رقم الهوية 123456، فيمكنك استخدام "id=123456".
**مثال على دالة DLookUp**
لنفترض أن لدينا جدولًا يسمى "data" يحتوي على الحقلين التاليين:
* **id:** رقم الهوية
* **Student:** اسم الطالب
لدينا أيضًا نموذجًا يحتوي على حقلين:
* **Text1:** رقم الهوية
* **Text3:** اسم الطالب
نريد أن نكتب كودًا في هذا النموذج بحيث عندما ندخل رقم هوية الطالب في حقل Text1، يتم عرض اسم الطالب في حقل Text3.
يمكننا القيام بذلك باستخدام دالة DLookUp كما يلي:
```vb
Private Sub Command5_Click()
Me.Text3 = DLookup("[Student]", "data", "id=" & [Text1])
End Sub
```
في هذا الكود، نقوم بإجراء ما يلي:
* نستخدم الدالة DLookUp لاسترداد بيانات الحقل "Student" من الجدول "data".
* نستخدم الشرط "id=" & [Text1] لتحديد البيانات التي نريد استردادها.
* نقوم بتعيين قيمة البيانات التي تم إرجاعها إلى حقل Text3.
إذا أدخلنا رقم الهوية 123456 في حقل Text1، فسيتم عرض "John Doe" في حقل Text3.
**تعديلات على الكود**
يمكننا تعديل الكود أعلاه لجعله أكثر كفاءة. بدلاً من استخدام الشرط "id=" & [Text1]، يمكننا استخدام الشرط "Student='" & [Text1] & "'". سيؤدي هذا إلى جعل الدالة أسرع لأنه لا يتعين عليها تحويل رقم الهوية إلى نص أولاً.
```vb
Private Sub Command5_Click()
Me.Text3 = DLookup("[Student]", "data", "Student='" & [Text1] & "'")
End Sub
```
**استخدام دالة DLookUp مع التاريخ**
يمكننا أيضًا استخدام دالة DLookUp لاسترداد البيانات من حقل التاريخ. على سبيل المثال، لنفترض أن لدينا جدولًا يحتوي على الحقلين التاليين:
* **Dob:** تاريخ الميلاد
* **Student:** اسم الطالب
نريد أن نكتب كودًا في هذا النموذج بحيث عندما ندخل تاريخ ميلاد الطالب في حقل Text1، يتم عرض اسم الطالب في حقل Text3.
يمكننا القيام بذلك باستخدام دالة DLookUp كما يلي:
```vb
Private Sub Command5_Click()
Dim d As Date
d = CDate(Format(Me.Text1, "dd/mm/yyyy"))
Me.Text3 = DLookup("[Student]", "data", "Dob=#" & d & "#")
End Sub
```
في هذا الكود، نقوم بإجراء ما يلي:
* نستخدم الدالة CDate() لتحويل تاريخ الميلاد الذي تم إدخاله إلى تاريخ.
* نستخدم الدالة DLookUp لاسترداد بيانات الحقل "Student" من الجدول "data".
* نستخدم الشرط "Dob=#" & d & "#" لتحديد البيانات التي نريد استردادها.
* نقوم بتعيين قيمة البيانات التي تم إرجاعها إلى حقل Text3.
إذا أدخلنا تاريخ الميلاد 2023-08-01 في حقل Text1، فسيتم عرض "John Doe" في حقل Text3.
**خاتمة**
دالة DLookUp هي دالة قوية يمكن استخدامها لاسترداد البيانات من قاعدة بيانات Access. يمكن استخدامها لاسترداد البيانات من أي حقل في أي جدول أو عرض.
Comments
Post a Comment