اضافة سجلات فارغة تلقائيا في قاعدة البيانات
#1
السلام عليكم ورحمة الله تعالى وبركاته
كلما شغلت البرنامج اجد سجلات فارغة تضاف تلقائيا ولا اعرف لماذا
قاعدة البيانات أبسوليت
نسخة الدلفي xe8
الرد
#2
وعليكم السلام ةرحمة الله وبركاته

ماهي الاكواد المتعلقة بالقاعدة عند اقلاع برنامجك ؟ القاعدة لا تضيف السجلات وحدها
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#3
وعليكم السلام ورحمة الله وبركاته
كما قال لك الاخ Mobile حتما لديك AbsTable.insert أو في مكان ما
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ
الرد
#4
السلام عليكم ورحمة الله تعالى وبركاته
نعم في النافذة التي تحتوي على معلومات السجل
يوجد زر إضافة سجل يحمل في حدثه هذا الكود
كود :
procedure TForm1.BtnAjourterClick(Sender: TObject);
var x:integer;
begin
x:=0;
with DM do begin
Table1.Last;
x:=Table1Cde.AsInteger;
x:=x+1;
Table1.Insert;
Table1.FieldValues['Cde']:=x;
end;
scode.setfocus;
end;
مع العلم أن نوع الحقل في قاعدة البيانات وهو مفتاح القاعدة SMALLINT
كما أن "scode" هو إسم DEBEdit الذي يحمل إسم الحقل cde
إذا كان هذا هو السبب فماذا علي ان افعل
وجزاكم الله عنا كل خير
الرد
#5
وعليكم السلام ورحمة الله وبركاته
لا ليس في الازرار رغم ان الزر للاظافة راجع الاحداث Oncreate & Onshow
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#6
لم افهم قصدك
وهل الكود الموجود بالحدث المتعلق بزر الاضافة صحيح ام ينقصه شيء ما
الرد
#7
لايمكن للزر ان يضيف وحده سجلات
انت قلت ان السجلات تجدها عند تشغيل البرنامج صح؟اذن في حدث الفورم oncreate or onshow توجد المشكلة
لأستهلنّ الصعب أو أدرك المنى    فما انقادت الآمال إلاّ لصابر
الرد
#8
عفوا عندما اشغل البرنامج لا تظهر بينما انتقل من الفورم الى فورم أخر واعود اليها بعد غلق الفورم الاخر
اجد هذه السجلات الفارغة
مع العلم ان الفورم بها ديبقريد وكلما انتقلت الى فورم اخر وعدت اليها بعد غلق الفورم التي انتقلت اليها
اجد سجل جديد فارغ اضيف في الديبقريد

اما بالنسبة للحدث التابع للفورم لايوجد به سوى
radiogroup1.itemindex:=0
radiogroup2.itemindex:=1
في onActivate
الرد
#9
اضف table.past بعد اضافة حقل جديد
الرد
#10
السلام عليكم ورحمة الله تعالى وبركاته
بعد عدة محاولات لقد وجدت سبب اضافة السجلات الفارغة
وهو ناتج من هذا الكود المتعلق بالفلترة
عندما يكون dblookupcombobox المتعلق باحد الخيارات فارغ
واضغط على الخيار
يظهر سجل فارغ
هذا هو الكود الذي استعمله
كود :
procedure TForm1.RadioGroup1Click(Sender: TObject);
var cFilter: string;
begin
 case RadioGroup1.ItemIndex of
 0: cFilter:='not Bloquer';
 1: cFilter:='not Bloquer and SC_CD = '+QuotedStr(LookupSect.Text)+'and not Bloquer';
 2: cFilter:='not Bloquer and ET_CD = '+QuotedStr(LookupEtat.Text)+'and not Bloquer';
 3: cFilter:='not Bloquer and GR_CD = '+quotedStr(LookupGrpe.Text)+'and ET_CD = '+quotedStr(LookupEtat.Text)+'and not Bloquer';
 4: cFilter:='Bloquer';
 5: cFilter:='';
 end;
 DM.Table1.Filter  :=cFilter;
 DM.Table1.Filtered :=true;
end;

ماذا ينقص هذا الكود حتى اتخلص من هذه المشكلة وجزاكم الله عنا كل خير
الرد


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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم