تواجهني مشكلة في IndexName
#1
السلام عليكم ورحمة الله تعالى وبركاته
في المثال المرفق تجدون Form1 يحتوي على مثالين
احدهما بقاعدة البيانات Paradox والآخربقاعدة البيانات Absolute

كان البرنامج يعمل بشكل جيد قبل تحويله الى Absolute

المثال الخاص بقاعدة البيانات Paradoxعندما نضع علامة الصح على CheckBox1 و اختار الشهر الذي ارغب في طباعته من DBLookupCombobox1
واذهب الى زر طباعة Imprimer
تظهر لي ورقة الطباعة عادي والبيانات موجودة بها عادي واخرج منها عادي

المثال الخاص بقاعدة البيانات Absoluteعندما نضع علامة الصح على CheckBox2 و اختار الشهر الذي ارغب في طباعته من DBLookupCombobox2
واذهب الى زر طباعة Imprimer
تظهر لي ورقة الطباعة عادي والبيانات موجودة بها عادي لكن عندما اخرج منها تظهر لي رسالة خطأ
رسالة الخطأ تقول :
كود :
ABSTable2:Field Index out of range.
مثال مرفق
الرد
#2
ربما أدركت الخطأ
انظر الى الكود السابق ستجده على هذا الشكل
PHP كود :
ربما قد ادركت الخطأ وهو كان :
الكود السابق كان هكذا

procedure TFrmProbleme
.FormActivate(SenderTObject);
begin
If CheckBox1.Checked=False Then
DBLookupComboBox1
.Enabled:=False;
 
Table2.Open;
 
Table2.IndexName:='';
 
Table2.MasterFields:='';
 
Table2.MasterSource:=nil;
 
Table2.Next;

 
RadioGroup1.ItemIndex:=0;
 
CheckBox1.Checked:=False;

Table1.Open;
Table2.Open;

If 
CheckBox2.Checked=False Then
DBLookupComboBox2
.Enabled:=False;
 
ABSTable2.Open;
 
ABSTable2.IndexName:='';
 
ABSTable2.MasterFields:='';
 
ABSTable2.MasterSource:=nil;
 
ABSTable2.Next;

 
RadioGroup2.ItemIndex:=0;
 
CheckBox2.Checked:=false;

ABSTable1.Open;
ABSTable2.Open;

end

اما للكود الحالي والذي اشتغل 100/100 بدون خطأ هو على هذا الشكل
PHP كود :
procedure TFrmProbleme.FormActivate(SenderTObject);
begin
If CheckBox1.Checked=False Then
DBLookupComboBox1
.Enabled:=False;
 
Table2.Open;
 
Table2.IndexName:='';
 
Table2.MasterFields:='';
 
Table2.MasterSource:=nil;
 
Table2.Next;

 
RadioGroup1.ItemIndex:=0;
 
CheckBox1.Checked:=False;

Table1.Open;
Table2.Open;

If 
CheckBox2.Checked=False Then
DBLookupComboBox2
.Enabled:=False;
 
ABSTable2.Open;
 
ABSTable2.IndexName:='FACT01';
 
ABSTable2.MasterFields:='Cde_Mois';
 
ABSTable2.MasterSource:=DataSource3;
 
ABSTable2.Next;

 
RadioGroup2.ItemIndex:=0;
 
CheckBox2.Checked:=false;

ABSTable1.Open;
ABSTable2.Open;

end
على ما أظن هذا هو سبب الخطأ
الرد


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


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