PDA

View Full Version : مبتدی: Query



YkA1363
چهارشنبه 04 مرداد 1391, 15:37 عصر
سلام دوستان امیدوارم نماز و روزه همتون مفید برای خودتون و مورد قبول درگاه حق باشه
من از دلفی 7 و اس کیو ال 2000 استفاده می کنم.
یک جدول دارم که دارای سه تا فیلد با نام های 1ـ نام و نام خانوادگی 2ـ نام پدر 3ـ گروه
که هر کدام از افراد وارد شده در جدول متعلق به یکی از گروه های A,B,C,D که در فیلد گروه جلوی اسمش وارد می شه.
حالا توی فرمم دو تا کمبوباکس گذاشتم یک کمبوباکس دارای آیتم های A,B,C,d می خوام وقتی یکی از این گزینه ها را توی این کمبوباکس انتخاب می کنم فقط اسامی همین گروه توی کمبوباکس دومی نمایش داده بشه.
یک کدی نوشتم ولی جواب نداد لطفا کمکم کنید درضمن من از AdoQuery استفاده می کنم.

کامروا
چهارشنبه 04 مرداد 1391, 16:21 عصر
درون خاصیت OnSelect کمبوباکس :

procedure TForm1.ComboBox1Select(Sender: TObject);
begin
With ADOQuery1 Do
Begin
Close;
SQL.Clear;
SQL.Add('Select * From Table_name Where group = :x');
Parameters[0].Value := ComboBox1.Items.Strings[ComboBox1.ItemIndex];
Open;
First;
ComboBox2.Clear;
While Not(ADOQuery1.Eof) Do
Begin
ComboBox2.Items.Add(ADOQuery1.FieldByName('Name'). AsString);
ADOQuery1.Next;
End;
End;
end;

Table_name : نام جدول
group : نام فیلد گروه
Name : نام فیلد نام و نام خانوادگی

YkA1363
چهارشنبه 04 مرداد 1391, 18:57 عصر
پس از اجرای برنامه و انتخاب گروه از combobox1 خطای list index out off bounds(0 نمایش داده میشه لطف می کنید بگید ایرادش چیه؟

کامروا
پنج شنبه 05 مرداد 1391, 23:55 عصر
پس از اجرای برنامه و انتخاب گروه از combobox1 خطای list index out off bounds(0 نمایش داده میشه لطف می کنید بگید ایرادش چیه؟
این خطا مربوط به ItemIndex کمبو باکس هست.

کد فوق برای زمانی که آیتم های ComboBox1 شامل :
A
B
C
D
باشه و نام فیلد گروه و نام هم مطابق با جدول خودتون قرار بدید مشکلی نداره.

مطمئن بشین که جای ComboBox 1 و ComboBox 2 رو اشتباه ننوشته باشید...