تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مشكلة في الأستعلام
#1
السلام عليكم ورحمة الله وبركاته

عندي مشروع أستخدم فيه الأداة 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 مثل الجداول



أرجو الافادة وجزاكم الله خيرا
الرد }}}
تم الشكر بواسطة: sendbad100 , سعود , princeofislam
#2
بعد المحاولة
تم ربط الاداة بالاستعلام والنتيجة ممتازة
المطلوب
كيف اقوم برط الاداة بأستعلام به شرط او اكثر
الرد }}}
تم الشكر بواسطة: sendbad100 , سعود , princeofislam
#3
السلام عليكم

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

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

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

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

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

تحياتي لك
الرد }}}
تم الشكر بواسطة: عبدالله الصافي , سعود , princeofislam
#4
شكرا اخي الكريم علي تجاوبك معي

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

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

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

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

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


الملفات المرفقة
.rar   New folder.rar (الحجم : 9.69 ك ب / التحميلات : 14)
الرد }}}
تم الشكر بواسطة: sendbad100 , سعود , princeofislam
#5
السلام  عليكم

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

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

لو فرضنا ان TEXT3  ستضع فية رقم الزبون المطلوب بيناته
PHP كود :
Data1.RecordSource "SELECT ZepoonName, NumIsal FROM dd WHERE  (dd.NumIsal)='" Text3.Text "'"
Data1.Refresh 
الرد }}}
تم الشكر بواسطة: عبدالله الصافي , سعود , princeofislam
#6
شكرا لك أخي الكريم
الصورة قد كملت بالنسبة لي جزاك الله خيرا
------------------------------------------------
سؤال آخر
هل يمكن عمل نفس الاستعلام الذي تفضلت به في الفيجوال ولكن من خلال الجداول وبجملة استعلام واحدة
أي من غير عمل استعلام بقاعدة البيانات
الرد }}}
تم الشكر بواسطة: sendbad100 , سعود , سعود , princeofislam
#7
سؤال آخر
[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 
الرد }}}
تم الشكر بواسطة: عبدالله الصافي , سعود , princeofislam
#8
جميل اخي الكريم
ولكن كيف يمكن عرض نتائج ذلك الاستعلام في جدول مثل flixgrid
الرد }}}
تم الشكر بواسطة: sendbad100 , سعود , princeofislam , princeofislam
#9
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
الرد }}}
#10
جزاك الله خيرا أخي الكريم
ونفع الله بك وجعله في ميزان حسناتك

الحمدلله الصورة كملت لدي
الرد }}}
تم الشكر بواسطة: سعود , sendbad100 , princeofislam



التنقل السريع :


يقوم بقرائة الموضوع: