Использование Delphi для создания приложений баз данных. Устюгова В.Н. - 32 стр.

UptoLike

Составители: 

32
Пусть на форме находятся компоненты Table2 (TTable), Edit2 (TEdit), CheckBox2
(TCheckBox) и другие для визуализации набора данных. Пусть текущий индекс построен по
полю NumGr (номер группы).
Обработчик события OnClick компонента CheckBox2 позволяет установить критерий
фильтрации для набора данных Table2, считывая значения для фильтра из поля
редактирования Edit2:
Отфильтруем записи таким образом, чтобы показывались записи только с определенным
номером группы. Если CheckBox2 отмечен (CheckBox2.Checked = True), то производится
фильтрация по номеру группы, введенному в Edit2, в противном случае показываются все
записи из таблицы.
procedure TFormA.CheckBox2Click(Sender: TObject);
var
NumGrTmp: Integer;
begin
if CheckBox2.Checked then
begin .
NumGrTmp := StrToInt(Edit2.Text);
//фильтрация записей в НД
with Table2 do
begin
CancelRange;
SetRange([NumGrTmp],[NumGrTmp]);
end; {with}
end
else
//отмена фильтрации
Table2.CancelRange;
end;
В отфильтрованном наборе данных показываются только те записи, индексное поле
текущего индекса у которых (поле NumGr) имеет значение, лежащее в заданном диапазоне.
Если бы мы захотели, чтобы в наборе данных фильтровались записи из нескольких
групп, то нам следовало бы добавить в форму второй компонент Edit3, в котором вводился
бы номер конечной группы - в то время как в Edit2 вводился бы номер начальной группы:
procedure TFormA.CheckBox2Click(Sender: TObject);
var
NumGrTmp1,NumGrTmp2: Integer;
begin
if CheckBox2.Checked then
begin
NumGrTmp1 := StrToInt(Edit2.Text);
NumGrTmp2 := StrToInt(Edit3.Text);
//фильтрация записей
with Table2 do
begin
CancelRange;
SetRange([NumGrTmpl] , [NumGrTmp2]);
end; //w i t h
end
else
     Пусть на форме находятся компоненты Table2 (TTable), Edit2 (TEdit), CheckBox2
(TCheckBox) и другие для визуализации набора данных. Пусть текущий индекс построен по
полю NumGr (номер группы).
     Обработчик события OnClick компонента CheckBox2 позволяет установить критерий
фильтрации для набора данных Table2, считывая значения для фильтра             из поля
редактирования Edit2:
     Отфильтруем записи таким образом, чтобы показывались записи только с определенным
номером группы. Если CheckBox2 отмечен (CheckBox2.Checked = True), то производится
фильтрация по номеру группы, введенному в Edit2, в противном случае показываются все
записи из таблицы.

    procedure TFormA.CheckBox2Click(Sender: TObject);
    var
    NumGrTmp: Integer;
    begin
    if CheckBox2.Checked then
    begin .
      NumGrTmp := StrToInt(Edit2.Text);
      //фильтрация записей в НД
      with Table2 do
      begin
      CancelRange;
      SetRange([NumGrTmp],[NumGrTmp]);
      end; {with}
    end
    else
    //отмена фильтрации
      Table2.CancelRange;
    end;

     В отфильтрованном наборе данных показываются только те записи, индексное поле
текущего индекса у которых (поле NumGr) имеет значение, лежащее в заданном диапазоне.
     Если бы мы захотели, чтобы в наборе данных фильтровались записи из нескольких
групп, то нам следовало бы добавить в форму второй компонент Edit3, в котором вводился
бы номер конечной группы - в то время как в Edit2 вводился бы номер начальной группы:

    procedure TFormA.CheckBox2Click(Sender: TObject);
    var
    NumGrTmp1,NumGrTmp2: Integer;
    begin
    if CheckBox2.Checked then
    begin
    NumGrTmp1 := StrToInt(Edit2.Text);
    NumGrTmp2 := StrToInt(Edit3.Text);
    //фильтрация записей
    with Table2 do
    begin
    CancelRange;
    SetRange([NumGrTmpl] , [NumGrTmp2]);
    end; //w i t h
    end
    else

                                          32