Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
28
Добавлен:
15.06.2014
Размер:
205.31 Кб
Скачать

1.3.5 Процедура поиска с фильтрацией по 1-ой таблице.

procedure TForm3.Button1Click(Sender: TObject);

begin

//Если в ComboBox1 выбрана Таблица 1, то делаем её главной

if Form3.ComboBox1.ItemIndex=0 then

begin

Form1.Table1.MasterFields:='';

Form1.Table1.MasterSource:=nil;

Form1.Table2.MasterSource:=Form1.DataSource4;

Form1.Table2.MasterFields:='Kod_klienta';

Form1.Table3.MasterSource:=Form1.DataSource5;

Form1.Table3.MasterFields:='Kod_knigi';

Form1.Table4.MasterSource:=Form1.DataSource3;

Form1.Table4.IndexName:='Kodknigi';

Form1.Table4.MasterFields:='Kod_knigi';

Form1.Table5.MasterSource:=Form1.DataSource1;

Form1.Table5.IndexName:='Kodizdat';

Form1.Table5.MasterFields:='Kod_izdatelstva';

Form1.Table6.MasterSource:=Form1.DataSource2;

Form1.Table6.IndexName:='Kodklienta';

Form1.Table6.MasterFields:='Kod_klienta';

Form1.Table7.MasterSource:=Form1.DataSource1;

Form1.Table7.MasterFields:='';

//Поиск с фильтрацией

Form1.Table1.Filter:=ComboBox2.Text+'='''+Edit1.Text+'''';

Form1.Table1.Filtered:=True;

end;

1.3.6 Процедура восстановления связей.

procedure TForm1.Button8Click(Sender: TObject);

begin

//Сбрасывание всех значений

Form1.Table1.MasterFields:='';

Form1.Table1.MasterSource:=nil;

Form1.Table2.MasterFields:='';

Form1.Table2.MasterSource:=nil;

Form1.Table3.MasterFields:='';

Form1.Table3.MasterSource:=nil;

Form1.Table4.MasterFields:='';

Form1.Table4.MasterSource:=nil;

Form1.Table5.MasterFields:='';

Form1.Table5.MasterSource:=nil;

Form1.Table6.MasterFields:='';

Form1.Table6.MasterSource:=nil;

Form1.Table7.MasterFields:='';

Form1.Table7.MasterSource:=nil;

Form1.Table4.IndexName:='';

Form1.Table5.IndexName:='';

Form1.Table6.IndexName:='';

//Отключение фильтров

Form1.Table1.Filtered:=False;

Form1.Table2.Filtered:=False;

Form1.Table3.Filtered:=False;

Form1.Table4.Filtered:=False;

Form1.Table5.Filtered:=False;

Form1.Table6.Filtered:=False;

Form1.Table7.Filtered:=False;

//Восстановление связей

Form1.Table1.MasterSource:=Form1.DataSource7;

Form1.Table1.MasterFields:='Kod_izdatelstva';

Form1.Table2.MasterSource:=Form1.DataSource4;

Form1.Table2.MasterFields:='Kod_klienta';

Form1.Table3.MasterSource:=Form1.DataSource5;

Form1.Table3.MasterFields:='Kod_knigi';

Form1.Table4.MasterSource:=Form1.DataSource3;

Form1.Table4.IndexName:='Kodknigi';

Form1.Table4.MasterFields:='Kod_knigi';

Form1.Table5.MasterSource:=Form1.DataSource1;

Form1.Table5.IndexName:='Kodizdat';

Form1.Table5.MasterFields:='Kod_izdatelstva';

Form1.Table6.MasterSource:=Form1.DataSource2;

Form1.Table6.IndexName:='Kodklienta';

Form1.Table6.MasterFields:='Kod_klienta';

Form1.Table7.MasterSource:=nil;

Form1.Table7.MasterFields:='';

end;

1.3.7 Процедура запрашивания пароля при создании Form 1.

procedure TForm1.FormCreate(Sender: TObject);

//Запрос пароля при создании главной формы

Const

S=

'SELECT * '+

'FROM "Parole.db" ' +

'WHERE (Parole=''';

begin

PasswordDlg:=TPasswordDlg.Create(Application);//Создание формы задания пароля

Repeat

PasswordDlg.ShowModal;

if PasswordDlg.ModalResult=mrOK {нажатие на кнопку OK} Then

begin

//Анализ введённого пароля

Form1.Query1.Close;

Form1.Query1.SQL.Clear;

Form1.Query1.SQL.Add(S + PasswordDlg.Password.Text + ''')');

Form1.Query1.Open;

if Form1.Query1.RecordCount=0 then

{Вывод сообщения при вводе неправильного пароля}

MessageDlg('Неправильный пароль',mtInformation,[mbOK],0);

end

else

Halt;

Until Form1.Query1.RecordCount<>0;

PasswordDlg.Free;//удаление из динамической памяти

//Если введён пароль для уровня доступа 1 (Level=1)

If Form1.Query1.FieldByName('Level').AsInteger=1 then

Begin

//Отключаем кнопки удаления и добавления

Form1.Button1.Enabled:=False;

Form1.Button2.Enabled:=False;

Form1.Button3.Enabled:=False;

Form1.Button4.Enabled:=False;

Form1.Button5.Enabled:=False;

Form1.Button6.Enabled:=False;

Form1.Button7.Enabled:=False;

end;

end;

Соседние файлы в папке Отчёт по БД