delphi4arab منتديات دلفي للعرب
مشكلة معى dbloockupcombobox - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : مشكلة معى dbloockupcombobox (/showthread.php?tid=8956)



مشكلة معى dbloockupcombobox - rezki_z - 20-10-2017

السلام عليكم 
لدي 4 جداول ارغب ان اجلب منهم البيانات واضعها في dbgrid استطيع ان اعمل هذا بواسطة اوامر sql لكن ارغب في ان اعطي للمستخدم حرية الادخال 
وما اريده هو ان اضع 4 dbloockupcombobox و button عندما اضغط على البوتون يدخل البيانات الموجودة في dbloockupcombobox في dbgrid مع ظهور مساج تحذيري عند ادخال نفس البيانات وجزاكم الله خيرا


RE: مشكلة معى dbloockupcombobox - PLANSHARP - 21-10-2017

و عليكم السلام

إذا كان ال dbgrid متصل مع جدول ما, قم بعملية بحث سريعة داخل الجدول فإذا كانت البيانات موجودة تظهر تلك الرسالة و تخرج من التنفيذ و في حال عدم وجود بيانات استخدم adocommand بأن تضع فيها الsql الذي تريد وقم بتنفيذه, طبعا قيم الاستعلام هذا سوف تأخذ من ال dbloockupcombobox.


RE: مشكلة معى dbloockupcombobox - rezki_z - 21-10-2017

السلام عليكم 
يبدوا انني لم اكن واضحا في طريقة سؤالي فقمت بوضع صورة لما ارغب فيه والله الموفق 
[صورة: Capture.JPG]
اذا لم تظهر الصورة هذا رابطها
https://www.dropbox.com/s/57qynbo5wdch8ye/Capture.JPG?dl=0


RE: مشكلة معى dbloockupcombobox - PLANSHARP - 22-10-2017

طيب لنبدأ:

كود :
if ADOTable1.Locate('yourfield1;yourfield2;yourfield3',VarArrayOf([DBLookupComboBox1.Field.Value,DBLookupComboBox2.Field.Value,DBLookupComboBox3.Field.Value]),[loCaseInsensitive]) then ShowMessage('Already Exist!') else begin ///method 1 ADOCommand1.CommandText:='insert into table ........'; ADOCommand1.Execute; ///or method 2 ADOTable1.Append; ADOTable1.FieldByName('yourfield1').Value:=DBLookupComboBox1.Field.Value; ADOTable1.FieldByName('yourfield2').Value:=DBLookupComboBox2.Field.Value; ADOTable1.FieldByName('yourfield3').Value:=DBLookupComboBox3.Field.Value; ADOTable1.Post; end;



RE: مشكلة معى dbloockupcombobox - rezki_z - 24-10-2017

(22-10-2017, 03:37 AM)PLANSHARP كتب : طيب لنبدأ:

كود :
if ADOTable1.Locate('yourfield1;yourfield2;yourfield3',VarArrayOf([DBLookupComboBox1.Field.Value,DBLookupComboBox2.Field.Value,DBLookupComboBox3.Field.Value]),[loCaseInsensitive]) then ShowMessage('Already Exist!') else begin ///method 1 ADOCommand1.CommandText:='insert into table ........'; ADOCommand1.Execute; ///or method 2 ADOTable1.Append; ADOTable1.FieldByName('yourfield1').Value:=DBLookupComboBox1.Field.Value; ADOTable1.FieldByName('yourfield2').Value:=DBLookupComboBox2.Field.Value; ADOTable1.FieldByName('yourfield3').Value:=DBLookupComboBox3.Field.Value; ADOTable1.Post; end;
للاسف الكود هذا فيه ماشكل 
اولا عندما اختار البيانات من اي dbloockupcombobox فانها تتغير مباشرة داخل dbgrid 
وانا لست اريد ذلك اريد ان تتغير لما اضغط على button 
ثانيا المساج الاول في الكود تقريبا ليس فيه فائدة لانني كلما اعدل سطرا في dbgrid 
عن طريق اختيار البيانات من dbloockupcombobox يظهر المساج وهذا مالا اريده
ثالثا الكود يعدل فقط على بيانات موجودة فعندما ارغب في كتابة سطر جديد في dbgrid 
يظهر خطا 
هذا ما يظهر لي من اخكاء في الكود فارجوا المساعدة والله الموفق


RE: مشكلة معى dbloockupcombobox - PLANSHARP - 26-10-2017

لم أتوقع أن تكون الdbloockupcombobox مربوطة مع نفس الجدول, وهذا لا ينبغي, وإذا كنت لابد تريد ذلك, حمل تلك اليبانات التي تريدها من كل عمود في combobox ومن ثم استخدم الكود السابق, مع استبدال DBLookupComboBox1.Field.Value, بـ combobox.text


RE: مشكلة معى dbloockupcombobox - rezki_z - 27-10-2017

(26-10-2017, 06:32 PM)PLANSHARP كتب : لم أتوقع أن تكون الdbloockupcombobox  مربوطة مع نفس الجدول, وهذا لا ينبغي, وإذا كنت لابد تريد ذلك, حمل تلك اليبانات التي تريدها من كل عمود في combobox ومن ثم استخدم الكود السابق, مع استبدال DBLookupComboBox1.Field.Value, بـ combobox.text
السلام عليكم 
اولا انا لا ارغب في استعمال dbcombobox لانني سوف اضطر الى ملئها بالبيانات وهذا مالا اريده
ثانيا كل dbloockupcombobox مربوطة بجدول مختلف عن الاخر وليس نفس الجدول 
وانا اريد عندما اضغط على button يجلب البيانات من كل dbloockupcombobox (كل منها مرتبط بجدول مختلف ) ويضعها في جدول واحد حسب الصورة التي رفعتها وهذا رابطها
https://www.dropbox.com/s/57qynbo5wdch8ye/Capture.JPG?dl=0
باختصار ارغب بملا جدول فارغ ببيانات اجلبها من جداول اخر مع شرط هو ان لن يتم اضافة البيانات الا اذا ضغط المستخدم على button 
وجزاكم الله خيرا