Azt nem tudja kezelni a szűrőt - a ibquery és ibdataset

Nem tudok foglalkozni Filter # 032; és IBQuery IBDataSet.

Az adatok eleme a megadott tulajdonság nem valósult meg.
Favor OnFilterRecord.

Úgy értem nincs megvalósítva: -0

És hogyan kell használni
> OnFilterRecord

Nem morochte fej és levelet emberi megismerés
SELECT.
FROM.
WHERE

Nem morochte fej és levelet emberi megismerés
SELECT.
FROM.
WHERE

A tény az, hogy szűrés után ki kell számítani az összeg a három asztal. Csináltam keresztül
> SELECT.
> FROM.
> WHERE
de működik nagyon lassan. Azt hittem, hogy ha a szűrőt, akkor gyorsabb.

szűrőn keresztül gyorsabb, és meg kell csinálni egy lekérdezést, és a csoport (Group által).

> Solovyov
> OnFilterRecord:
>.
> Hozzáférés: = <условие>
>.

Nem egészen értem, mit hozzáférés és mit eszik.

Veszekedés nem Access, és elfogadás.
eljárás Tdm.ibDataSetFilterRecord (DataSet: TDataSet;
var elfogadás: logikai érték);
kezdődik
Elfogadás :. = DataSet.FieldByName ( "Field") AsString = "la la" és
. DataSet.FieldByName ( "Field") AsString = "bu bu";
végén;

Duc nem szántani valamit. Írtam ahogy meg van írva (na jó, majdnem ahogy mondják) a gombot nyomta IBDataSet1.Filtered: = true; Majd a DBGrid úgy tűnik, csak egy sort, és hogy üres. Hogyan kell kezelni?

És ha azt feltételezzük levelet elfogadás :. = IBDataSet1.FieldByName ( "Mező") AsString = "%". akkor az ötlet kell, hogy vonja vissza az összes rekordot, vagy nem?

sz. Amely megadja Field = „%” minden területén vállal = true;

Egyértelmű! C "%" I volt a kétségbeesés. Másolás az értéket a táblázatban behelyezzük a feltétel OnFilterRecord, és ő (DBGrid) nem mutat semmit. Vagy talán az egész dolog a nyilvántartásban?

eljárás TForm1.IBDataSet1FilterRecord (DataSet: TDataSet;
var elfogadás: logikai érték);
kezdődik
Elfogadás: = IBDataSet1.FieldByName ( "CUSTOMERSF") AsString = "MERKULYAEV.";
végén;

eljárás TForm1.Button2Click (Sender: TObject);
kezdődik
IBDataSet1.Filtered: = true;
végén;

és írjon egy kicsit
IBDataset1.Close;
IBDataset1.SelectSql.Clear;
IBDataset1.SelectSql.Add ( "SELECT *" +
„FROM

t „+
"AHOL t.FIO =: CustomFio");
IBDataset1.ParamByName ( "CustomFio") AsString: = Edit1.Text ;.
IBDataset1.Open;
találsz egy bejegyzést nada, vagy sem.
osuschestvlyaesh kereshet?


> Eljárás TForm1.Button2Click (Sender: TObject);
> kezdődik
> IBDataSet1.Filtered: = true;
> End;

Miért? Nem szükséges.

Hogy mást hívni onFilterRecord?

Talán meg kellene prerfrazirovat kérdés. Mondjuk, van egy pár vezetők. Minden járművezető lehet neskoglko garázsok, és minden garázsban nem ugyanazon a gépen. Szükség van kiszámításához gáz kilométer, stb minden járművezető számára, és a kimenet a dekódolás az egyes garázs, az autó. Korábban azt használni, ha minden egyszerűbb volt tábla. Két kérés AfterScroll használt első szűrő a második. Ie Az első lekérdezés kelek garázs №1, és nézze meg a megfelelő autó # 1.1, auto №1.2 stb
Én nem vitatkozni, mindez úgy valósítható meg,
> SELECT.
> FROM.
> WHERE
de kiderült, túl sokáig, mert A feltétel az összetett és a lekérdezés sok területen, ennek eredményeként az egyes bejegyzésekhez tölt körülbelül két másodpercig. Most képzeljük el, hogy a flotta több mint 1000 autó.

Tehát ez nem működik, a négy tárolt :-(