ورود

View Full Version : كامپوننت DBLookupComboBox با دو DataField



smakhavan
شنبه 03 مهر 1389, 13:10 عصر
سلام
كسي كامپوننتي سراغ داره كه مشابه DBLookupComboBox باشه ولي دو تا DataField بگيره.
ميخواهم با انتخاب ليست از كامپوننت دو فيلد در ديتابيس اصلي مورد تغيير قرار بگيرند. مثلا من ليست شهرها را در كومبونمايش بدهم و كاربر انتخاب كند. پس از انتخاب كاربر هم فيلد اسم شهر و هم فيلد كد شهر (كه در جدول List) موجود است عوض بشوند.
راه حل كد نويسي اش اينه كه يه جستجو روي ديتا انجام بدم ولي چون اين كار خيلي توي فرم هام تكرار ميشه دنبال يه كامپوننت ميگردم


procedure TForm1.DBLookupComboBox1Click(Sender: TObject);
begin
ADOTableData.FieldByName('Code').AsString := ADOTableList.Lookup('name', DBLookupComboBox1.Text, 'Code');
end;

vcldeveloper
شنبه 03 مهر 1389, 14:42 عصر
اگر کد شهر و اسم شهر با هم متناظر هستند (یعنی به ازاء هر شهر یک کد)، اون وقت در طراحی بانک اشتباه دارید. باید اون دو مقدار را در یک جدول مجزا (مثلا شهرها) نگهداری کنید، و فقط کد شهر را در جدول مورد نظرتان استفاده کنید.