ВУЗ:
Составители:
Рубрика:
36
FieldByName('NumGr').AsInteger:= NumGrTmpl;
SetRangeEnd;
FieldByName('NumGr').AsInteger := NumGrTmp2;
ApplyRange;
end; //with
Фильтрация по составному индексу (индекс состоит из нескольких полей)
осуществляется
• при использовании метода SetRange. Значения полей должны перечисляться
через запятую внутри квадратных скобок.
• при использовании SetRangeStart, SetRangeEnd и т.д. Значение каждого поля
должно устанавливаться явно.
// Набор данных отсортирован по индексу, состоящему из полей NumGr и Tovar
procedure TFormA.CheckBox2Click(Sender: TObject);
NumGrTmp: Integer;
TovarTmp: String;
begin
if CheckBox2.Checked then
begin
NumGrTmp := StrToInt(Edit1.Text);
TovarTmp := Edit2.Text;
//фильтрация записей в НД
with Table2 do
begin
CancelRange;
SetRange([NumGrTmp,TovarTmp],[NumGrTmp,'яя ' ]) ;
end; //
end
else
//отмена фильтрации
Table2.CancelRange;
end;
Реализацию выборки обеспечивает оператор
SetRange([NumGrTmp,TovarTmp],[NumGrTmp,'яя']);
Если требуется показывать в наборе данных все записи группы, начинающиеся со
значения, введенного в поле Edit2, то в качестве значения товара в конечном условии
фильтрации нужно объявить максимально возможное значение, которое только может
встретиться в качестве названия товара. Поскольку строчные буквы имеют большие коды,
чем заглавные, и название товара не может начинаться с 'яя', эти символы вполне могут
использоваться как верхний ограничитель наименования товара.
Если введено значение для группы товара в поле Edit1 и не введено наименование
товара в поле Edit2, то в отфильтрованный набор данных попадут все товары данной группы.
Если введено значение для группы товара в поле Edit1 и введено наименование товара
в поле Edit2, то в отфильтрованный набор данных попадут товары данной группы, у
которых наименование больше или равно значению, введенному в поле Edit2.
2. . Используя таблицы из базы данных DBDEMOS создать приложение, в котором
организовать фильтрацию по составному индексу.
FieldByName('NumGr').AsInteger:= NumGrTmpl;
SetRangeEnd;
FieldByName('NumGr').AsInteger := NumGrTmp2;
ApplyRange;
end; //with
Фильтрация по составному индексу (индекс состоит из нескольких полей)
осуществляется
• при использовании метода SetRange. Значения полей должны перечисляться
через запятую внутри квадратных скобок.
• при использовании SetRangeStart, SetRangeEnd и т.д. Значение каждого поля
должно устанавливаться явно.
// Набор данных отсортирован по индексу, состоящему из полей NumGr и Tovar
procedure TFormA.CheckBox2Click(Sender: TObject);
NumGrTmp: Integer;
TovarTmp: String;
begin
if CheckBox2.Checked then
begin
NumGrTmp := StrToInt(Edit1.Text);
TovarTmp := Edit2.Text;
//фильтрация записей в НД
with Table2 do
begin
CancelRange;
SetRange([NumGrTmp,TovarTmp],[NumGrTmp,'яя ' ]) ;
end; //
end
else
//отмена фильтрации
Table2.CancelRange;
end;
Реализацию выборки обеспечивает оператор
SetRange([NumGrTmp,TovarTmp],[NumGrTmp,'яя']);
Если требуется показывать в наборе данных все записи группы, начинающиеся со
значения, введенного в поле Edit2, то в качестве значения товара в конечном условии
фильтрации нужно объявить максимально возможное значение, которое только может
встретиться в качестве названия товара. Поскольку строчные буквы имеют большие коды,
чем заглавные, и название товара не может начинаться с 'яя', эти символы вполне могут
использоваться как верхний ограничитель наименования товара.
Если введено значение для группы товара в поле Edit1 и не введено наименование
товара в поле Edit2, то в отфильтрованный набор данных попадут все товары данной группы.
Если введено значение для группы товара в поле Edit1 и введено наименование товара
в поле Edit2, то в отфильтрованный набор данных попадут товары данной группы, у
которых наименование больше или равно значению, введенному в поле Edit2.
2. . Используя таблицы из базы данных DBDEMOS создать приложение, в котором
организовать фильтрацию по составному индексу.
36
Страницы
- « первая
- ‹ предыдущая
- …
- 34
- 35
- 36
- 37
- 38
- …
- следующая ›
- последняя »
