// ЭТО В .h (в public)
void LoadProducts();
// ЭТО В .cpp
void TfrmMain::LoadProducts()
{
String sql = "SELECT * FROM Products p "
"JOIN Categories c ON p.Category_ID = c.Category_ID "
"JOIN Manufacturers m ON p.Manufacturer_ID = m.Manufacturer_ID "
"JOIN Suppliers s ON p.Supplier_ID = s.Supplier_ID WHERE 1=1 ";
if (edtSearch->Text != "")
sql += "AND (p.ProductName LIKE '%" + edtSearch->Text + "%' "
"OR p.Description LIKE '%" + edtSearch->Text + "%' "
"OR c.CategoryName LIKE '%" + edtSearch->Text + "%' "
"OR m.ManufacturerName LIKE '%" + edtSearch->Text + "%') ";
if (cmbSupplier->ItemIndex > 0)
sql += "AND s.SupplierName = '" + cmbSupplier->Text + "' ";
if (cmbSort->ItemIndex == 1) sql += "ORDER BY p.StockQuantity ASC";
else if (cmbSort->ItemIndex == 2) sql += "ORDER BY p.StockQuantity DESC";
qProducts->Close();
qProducts->SQL->Text = sql;
qProducts->Open();
}
// и кнопки:
void __fastcall TfrmMain::edtSearchChange(TObject *Sender)
{
LoadProducts();
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::cmbSortChange(TObject *Sender)
{
LoadProducts();
}
//---------------------------------------------------------------------------
void __fastcall TfrmMain::cmbSupplierChange(TObject *Sender)
{
LoadProducts();
}
//---------------------------------------------------------------------------