منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مشكلة في الأستعلام
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم ورحمة الله وبركاته

عندي مشروع أستخدم فيه الأداة DataControl

وعندي قاعدة بيانات بها ثلاث جداول مرتبطه مع بعضها

أريد عمل جملة استعلام لجدول واحد أو عمل أستعلام علي الثلاث جداول مرة واحدة
----------------------------
والسبب أن الكود يكون بهذا الشكل
كود :
Frm_Main.Dt_Zepoons.RecordSource = "Select * From Zepoons Where  ZepoonTown like '" & Cmb_ZepoonTown & "'and ZepoonAddress like '*" & Txt_Address & "*'"
       Frm_Main.Dt_Zepoons.Refresh
       If Frm_Main.Dt_Zepoons.Recordset.RecordCount > 0 Then
           Do
               Frm_Main.Dt_Mabeaat.RecordSource = "Select * From Mabeaat Where  val(ZepoonID) like " & Frm_Main.Dt_Zepoons.Recordset.Fields![ZepoonID]
               Frm_Main.Dt_Mabeaat.Refresh
               If Frm_Main.Dt_Mabeaat.Recordset.RecordCount > 0 Then
                   Do
                       Frm_Main.Dt_Isalat.RecordSource = "Select * From Isalat Where  val(IsalID) like " & Frm_Main.Dt_Mabeaat.Recordset.Fields![IsalID] & " and NumDateTahseel like '0'"
                       Frm_Main.Dt_Isalat.Refresh
                       If Frm_Main.Dt_Isalat.Recordset.RecordCount > 0 Then
                           Do
                               FillFlexGrid
                               Frm_Main.Dt_Isalat.Recordset.MoveNext
                           Loop Until Frm_Main.Dt_Isalat.Recordset.EOF
                       End If
                       Frm_Main.Dt_Mabeaat.Recordset.MoveNext
                   Loop Until Frm_Main.Dt_Mabeaat.Recordset.EOF
               End If
               Frm_Main.Dt_Zepoons.Recordset.MoveNext
           Loop Until Frm_Main.Dt_Zepoons.Recordset.EOF
       End If
فتكون عملية الأستعلام بطيئة جدا

-------------------------------------------------
وهل يمكن عمل الاستعلام في قاعدة البيانات وربطه بأداة DataControl مثل الجداول



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

الله يقويك ويعينك اخي عبدالله 

لو وضعت مثال  صغير مع قاعدة بينات اكسس مع الجداول.

حتى  تتضح الفكرة 

ونتمكن من التجربة

واذا امكن شرح اكثر لشرط او الشروط
وبأذن الله تجد الحل

تحياتي لك
شكرا اخي الكريم علي تجاوبك معي

عملت لك مثال به قاعدة بيانات بها اربع جداول بينها ترابط علاقات

عملت بقاعدة البيانات مثال مصغر للأستعلام عن كل الزبائن و ارقام فواتير مبيعاتهم

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

----------------------------------------------
ما اريده هو عمل استعلام بشرط مثلا ارقام الفواتير لزبون محدد وليس كلهم كما بالمثال
أو مثلا عمل استعلام عن البضائع لفاتورة محددة

أي من خلال الفيجوال اقوم بأدخال اسم الزبون مثلا فيعمل الاستعلام الذي في قاعدة البيانات
----------------------------------------------------
طبعا استطيع عمل ذلك من خلال انشاء جملة استعلام في الفيجوال ولكني اريد ان اعمل استعلام داخل قاعدة البيانات واقوم بتشغيله من الفيجوال مع امكانية ادخال ما اريد الاستعلام عنه
---------------------------
ارجو انك فهمت كلامي
وشكرا لك أخي الكريم
السلام  عليكم

اللي فهمتة انك تريد ان تستعلم من استلام

هل هذا هو المطلوب

لو فرضنا ان TEXT3  ستضع فية رقم الزبون المطلوب بيناته
PHP كود :
Data1.RecordSource "SELECT ZepoonName, NumIsal FROM dd WHERE  (dd.NumIsal)='" Text3.Text "'"
Data1.Refresh 
شكرا لك أخي الكريم
الصورة قد كملت بالنسبة لي جزاك الله خيرا
------------------------------------------------
سؤال آخر
هل يمكن عمل نفس الاستعلام الذي تفضلت به في الفيجوال ولكن من خلال الجداول وبجملة استعلام واحدة
أي من غير عمل استعلام بقاعدة البيانات
سؤال آخر
[quote pid='142773' dateline='1561190168']
هل يمكن عمل نفس الاستعلام الذي تفضلت به  في الفيجوال ولكن من خلال الجداول وبجملة استعلام واحدة
أي من غير عمل استعلام بقاعدة البيانات

[/quote]

اكيد ممكن باذن الله 

جرب الكود التالي  لم اجربة ما عندي في جهاز العمل فجوال

PHP كود :
Data1.RecordSource "SELECT Zepoons.ZepoonName, Mabeaat.NumIsal FROM Zepoons INNER JOIN Mabeaat ON Zepoons.ZepoonID = Mabeaat.ZepoonID WHERE  (Mabeaat.NumIsal)='" Text3.Text "'"
Data1.Refresh 
جميل اخي الكريم
ولكن كيف يمكن عرض نتائج ذلك الاستعلام في جدول مثل flixgrid
PHP كود :
Private Sub Command2_Click()

MSHFlexGrid1.Rows 1

Data1
.Recordset.MoveFirst

Do Until Data1.Recordset.EOF

MSHFlexGrid1
.AddItem Data1.Recordset.Fields![ZepoonName] & vbTab Data1.Recordset.Fields![NumIsal]
Data1.Recordset.MoveNext
Loop


End Sub 


انصك اخي عبدالله  بترك  DATA1

الادو عن طريق الكود   كما المثال التالي   اسهل واسرع 
http://vb4arb.com/vb/showthread.php?tid=18228
جزاك الله خيرا أخي الكريم
ونفع الله بك وجعله في ميزان حسناتك

الحمدلله الصورة كملت لدي
الصفحات : 1 2