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

إنشاء كائنات QueryDefs

مغلق
بدأه ابوحمود في 16 أكتوبر 2001 · 4 رد · 542 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

إنشاء كائنات QueryDefs

ستحتاج كثيراً إلى إنشاء استعلامات جديدة في إجراء VBA ، ويتم إنشاء الاستعلام الجديد على أنه كائن QueryDef ، ويكون بناء جملة طريقة CreatQueryDef لكائن Database :

Set qdf = database.CreatQueryDef(Name, SQLText)

حيث أن :

qdf : هو متغير كائن لكائن QueryDef الجديد .

Database : هو مرجع لكائن Database المفتوح والذي سيحتوي على كائن QueryDef الجديد .

Name : هو تعبير سلسلة اختياري يقوم بتسمية كائن QueryDef الجديد .

SQLText : هي عبارة SQL صالحة اختيارية ، تعتبر سلسلة لتعريف كائن QueryDef .

في حالة عدم تحديد وسائط Name و SQLText لطريقة CreatQueryDef يمكن استخدام عبارات التعيين لتحديد خصائص Name و SQLText لكائن QueryDef الجديد .

أمثلة وتوضيحات :

Dim db As Database

Dim qdf As QueryDef

Set db = CurrentDb ' لجعل القاعدة الحالية هي القاعدة الافتراضية

Set qdf = db.CreateQueryDef("اسم الاستعلام الجديد", "SQL عبارة")

Docmd.OpenQuery qdf.Name

والسطر الأخير عند الرغبة في فتح الاستعلام

ولتغيير عبارة SQL لاستعلام موجود (هذه الطريقة تغنيك عن وضع عدد كبير من استعلامات التحديد) :

Dim db as Database

Dim qdf as QueryDef

Set db = CurrentDb ' لجعل القاعدة الحالية هي القاعدة الافتراضية

Set qdf = db.QueryDefs("اسم الاستعلام")

Qdf.SQL = " SQLعبارة "

Docmd.OpenQuery qdf.Name

والسطر الأخير عند الرغبة في فتح الاستعلام

كما يمكن استعمال QueryDef لتشغيل عبارة SQL لإستعلامات الفعل ، المثال التالي ينشئ جدول جديد باسم جدول الصادر:

Dim db As Database

Dim qdf As QueryDef

Set db = CurrentDb ' لجعل القاعدة الحالية هي القاعدة الافتراضية

Set qdf = db.CreateQueryDef("")

qdf.SQL = "SELECT [جدول الصادر].تسلسل, [جدول الصادر].[رقم الصادر], [جدول الصادر].تاريخه, [جدول الصادر].الموضوع INTO الصادر FROM [جدول الصادر];"

qdf.Execute

ولفتح استعلام مؤقتاً في الذاكرة دون حفظه في قاعدة البيانات :

Dim db As Database

Dim qdf As QueryDef

Set db = CurrentDb ' لجعل القاعدة الحالية هي القاعدة الافتراضية

Set qdf = db.CreateQueryDef("", "SQL عبارة")

Dim rst

Set rst = qdf.OpenRecordset(dbOpenDynaset)

وللجميع التحية

#2

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

#3

الأخ محسن

اليك المثال :

http://mypage.ayna.com/h_h123/Methal.zip

ولك تحياتي

#4

أشكرك أخي أبو حمود وصلني المثال

اللهم أدخل عبدك أبو حمود الجنة وإجعل مأواه الفردوس الأعلى أمين آمين

#5

الأخ محسن

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

ولك تحياتي

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…