Разработка базы данных на языке Borland Delphi
Разработка программных продуктов на языке программирования Borland Delphi. Применяемые таблицы и связи между ними. Пользовательский интерфейс работы с базой данных. Алгоритм работы программы "Футбольные команды и игроки". Защита от ввода неверных данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 22.06.2011 |
Размер файла | 788,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Министерство образования и науки Российской Федерации
Государственное образовательное учреждение высшего профессионального образования
«Камская Государственная инженерно-экономическая академия»
Кафедра ПИУ
КУРСОВАЯ РАБОТА
По дисциплине: «Базы данных»
На тему: «Разработка базы данных на языке Borland Delphi»
Выполнили
Студенты группы 4267-с
Паранин Александр Александрович
номер зачетной книжки 4090967
Челнинский Антон Андреевич
номер зачетной книжки 4090810
Проверил
Доцент кафедры ПИУ
Хузятов Шафик Шаехович
Набережные Челны 2011 г.
Введение
Футбол (англ. football, от foot нога и ball мяч), командная спортивная игра на специальной площадке (поле) размером 100-110 м х 64-75 м с воротами 7,32 х 2,44 м; в команде по 11 человек на поле; цель игры забить мяч ногами или любой другой частью тела (кроме рук) в ворота соперников.
В настоящее время самый популярный и массовый вид спорта в мире.
Согласно заявлению ФИФА в 2001 году в футбол на планете играло около 250 миллионов человек. Из них более 20 миллионов -- женщины. Зарегистрировано около 1,5 миллиона команд и 300000 профессиональных клубов.
Футбольный клуб -- базовая ячейка всей футбольной структуры. Он является связующим звеном между футболистами, персоналом и организациями. По сути это команда футболистов, входящая в одну из организаций, имеющая определённую инфраструктуру и обслуживающий персонал.
В связи с постоянно растущим числом футбольных команд остро встает вопрос о разработке программных продуктов по работе в футбольном направлении.
Постановка задачи
Программа «Футбольные команды и игроки» разработана на языке высокого уровня Borland Delphi. В программе реализованы следующие компоненты:
· База данных, состоящая из 6 таблиц, из которых 4 справочника, одна операционная таблица и одна вспомогательная таблица;
· Пользовательский интерфейс работы с базой данных;
· Защита от ввода неверных данных.
Таблицы БД и связи между ними
Применяемые таблицы
1. strani.dbf справочник стран
2. komandi.dbf справочник команд
3. igroki.dbf справочник игроков
4. stadioni справочник стадионов
5. perehodi трансферы футболистов
6. vspom вспомогательная таблица
СТРУКТУРА ФАЙЛОВ
Файл strani.DBF - справочник стран
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
nom_str |
N |
2 |
Номер страны |
|
naim_str |
C |
17 |
Название страны |
Файл komandi.DBF - справочник команд
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
nom_kom |
N |
3 |
Номер команды |
|
naim |
C |
16 |
Название команды |
|
nom_st |
N |
2 |
Номер страны команды |
|
nom_stad |
N |
3 |
Номер стадионы команды |
|
osnov |
N |
4 |
Год основания |
|
prez |
C |
36 |
Президент футбольного клуба |
|
tren |
C |
36 |
Тренер футбольного клуба |
|
kap |
C |
36 |
Капитан футбольного клуба |
|
gorod |
C |
16 |
Город команды |
|
sait |
C |
18 |
Сайт |
Файл igroki.DBF - справочник игроков
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
nom_igr |
N |
4 |
Номер игрока |
|
fam |
C |
15 |
Фамилия игрока |
|
ima |
C |
14 |
Имя игрока |
|
otch |
C |
15 |
Отчество игрока |
|
nom_kom |
N |
3 |
Номер команды игрока |
|
dat_rozd |
D |
8 |
Дата рождения |
|
mest_rozd |
C |
30 |
Место рождения |
|
ampl |
C |
25 |
Амплуа (позиция) игрока |
|
ves |
N |
3 |
Вес игрока |
|
rost |
N |
3 |
Рост игрока |
Файл stadioni.DBF - справочник стадионов
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
nom_stad |
N |
3 |
Номер стадиона |
|
naim_st |
C |
17 |
Название стадиона |
|
mesto |
C |
24 |
Место расположения |
|
vmest |
N |
6 |
Вместимость стадиона |
Файл perehodi.DBF - трансферы футболистов
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
nom_igr |
N |
4 |
Номер игрока |
|
st_nom_kom |
N |
3 |
Номер старого клуба |
|
nw_nom_kom |
N |
3 |
Номер нового клуба |
|
dat_per |
D |
3 |
Дата перехода |
|
sym |
N |
8 |
Сумма трансфера |
Файл vspom.DBF - вспомогательная таблица
Имя поля |
Формат поля |
Характеристика поля |
||
Тип |
Длина |
|||
famima |
N |
3 |
Фамилия и имя футболиста |
|
s_kl |
C |
17 |
Название прежнего клуба игрока |
|
n_kl |
C |
24 |
Название нового клуба игрока |
|
data |
D |
6 |
Дата перехода |
|
sym |
N |
6 |
Сумма трансфера |
Тип данных обозначает:
· N - числовой (Numeric);
· C - текстовый (Character);
· D - дата (Data);
Связь между таблицами базы данных представлена на рис. 1.
футбольный программа база данные
Рис. 1
Описание внешнего вида пользовательского интерфейса
Запускается программа файлом football.exe, после чего появляется главное окно программы (рис. 2).
Рис.2
Навигация по программе осуществляется при помощи меню.
В пункте меню «Файл» содержится подпункт Выход, осуществляющий выход из программы.
Пункт меню «Справочники» содержит подпункты - «Игроки», «Команды», «Стадионы».
Пункт меню «Операции» содержит подпункты - «Новый трансфер», «История трансферов».
Подпункт меню «Справочники» - «Игроки»(рис. 3).
Рис. 3
В окне «Игроки» представлена информация по игрокам. Есть возможность навигации по игрокам, добавления игроков, изменения информации и удаление футболистов. Также можно произвести поиск футболистов по номеру и фамилии, и фильтр по амплуа, весу и росту.
Подпункт меню «Справочники» - «Команды» (рис.4).
Рис. 4
В окне «Команды» собрана информация по камандам. Имеется возможность добавления, редактирования и удаления клубов, а также осуществлена навигация по клубам. Также присутствует возможность поиска команд. В нижней части окна представлена информация по игрокам, выступающим за текущий футбольный клуб.
Подпункт меню «Справочники» - «Стадионы» (рис. 5).
Рис. 5
В окне «Стадионы» содержится информация по стадионам с возможностью навигации, добавления, удаления и редактирования стадионов.
Подпункт меню «Операции» - «Новый трансфер» (рис. 6).
Рис. 6
В окне «Новый трансфер» осуществляется переход игроков из одной команды в другую.
В окне «История трансферов» отражена история состоявшихся переходов игроков (рис. 7).
Рис. 7
Описание алгоритма программы
Программа работает с базой данных, разработанной в среде Visual Foxpro 9.0.
База данных состоит из пяти таблиц.
Добавление игроков осуществляется в окне «Игроки». Данное окно работает с таблицей «igroki», в которой содержатся все основные сведения о футболистах.
Работа с футбольными командами происходит в окне «Команды» и осуществляется с помощью таблицы «komandi». Данная таблица связана с таблицей «igroki».
Таблица «strani» содержит все страны и не поддается редактированию.
Для осуществления перехода игрока из одного клуба в другой нужно открыть окно «Новый трансфер». Данное окно работает с тремя таблицами - «igroki», «komandi», «transfer». После выбора игрока происходит выбор его клуба из таблицы команд, после выбора нового клуба и суммы трансфера происходит запись в таблицу «transfer».
Для просмотра истории трансферов используется вспомогательная таблица «vspom». Здесь на основе таблицы «transfer» и связанных с ней таблиц «igroki» и «komandi» происходит удобное для пользователя представление транферов.
ПРИЛОЖЕНИЯ
Текст программы
Текст проекта football.dpr
program Football;
uses
Forms,
gl_form in 'gl_form.pas' {Form1},
avtors in 'avtors.pas' {Form2},
gl_per in 'gl_per.pas',
avt in 'avt.pas' {Form3},
igroki in 'igroki.pas' {Form4},
komandi in 'komandi.pas' {Form5},
dob_klyb in 'dob_klyb.pas' {Form6},
stadioni in 'stadioni.pas' {Form7},
transfer in 'transfer.pas' {Form8},
ist_trans in 'ist_trans.pas' {Form9};
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm3, Form3);
Application.CreateForm(TForm6, Form6);
Application.Run;
end.
Текст модуля gl_form.pas
unit gl_form;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, Menus, gl_per, ExtCtrls, StdCtrls, jpeg, Grids,
DBGrids, DB, DBTables;
type
TForm1 = class(TForm)
StatusBar1: TStatusBar;
MainMenu1: TMainMenu;
N1: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N8: TMenuItem;
Timer1: TTimer;
N9: TMenuItem;
N13: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N2: TMenuItem;
N7: TMenuItem;
procedure N2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure N12Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N7Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses avtors, avt, igroki, komandi, stadioni, transfer, ist_trans;
{$R *.dfm}
procedure TForm1.N2Click(Sender: TObject);
begin
if gp4=1 then begin
form7:=tform7.Create(application);
form7.Show;
gp4:=2;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
gp1:=1;
gp2:=1;
gp3:=1;
gp4:=1;
gp5:=1;
gp6:=1;
form1.statusbar1.Font.Style:=[fsbold];
kdr:=0;
end;
procedure TForm1.N8Click(Sender: TObject);
begin
form3.showmodal;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
statusbar1.Panels[0].Text:=timetostr(now);
statusbar1.Panels[1].Text:=datetostr(now);
if GetKeyState(VK_CAPITAL) <> 0 then
statusbar1.panels[2].text := ' CAP';
if GetKeyState(VK_CAPITAL) = 0 then
statusbar1.panels[2].text := '';
if GetKeyState(VK_NUMLOCK) <> 0 then
statusbar1.panels[3].text := ' NUM';
if GetKeyState(VK_NUMLOCK) = 0 then
statusbar1.panels[3].text := '';
if GetKeyState(VK_SCROLL) <> 0 then
statusbar1.panels[4].text := ' SCRL';
if GetKeyState(VK_SCROLL) = 0 then
statusbar1.panels[4].text := '';
end;
procedure TForm1.N11Click(Sender: TObject);
begin
if gp2=1 then begin
form4:=tform4.Create(application);
form4.Show;
gp2:=2;
end;
end;
procedure TForm1.N12Click(Sender: TObject);
begin
if gp3=1 then begin
form5:=tform5.Create(application);
form5.Show;
gp3:=2;
end;
end;
procedure TForm1.N9Click(Sender: TObject);
begin
form1.Close;
end;
procedure TForm1.N13Click(Sender: TObject);
begin
if gp5=1 then begin
form8:=tform8.Create(application);
form8.Show;
gp5:=2;
end;
end;
procedure TForm1.N7Click(Sender: TObject);
begin
if gp6=1 then begin
form9:=tform9.Create(application);
form9.Show;
gp6:=2;
end;
end;
end.
Текст модуля gl_per.pas
unit gl_per;
interface
var
gp1:byte;
gp2:byte;
gp3:byte;
gp4:byte;
gp5:byte;
gp6:byte;
kdr:byte;
implementation
end.
Текст модуля igroki.pas
unit igroki;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, gl_per, StdCtrls, Mask, DBCtrls, DB, DBTables, ExtCtrls, Grids,
DBGrids, Buttons, Spin;
type
TForm4 = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
DBEdit1: TDBEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label9: TLabel;
Label10: TLabel;
Label11: TLabel;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit9: TDBEdit;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
Button1: TButton;
Button2: TButton;
Label13: TLabel;
Timer1: TTimer;
DataSource2: TDataSource;
Table2: TTable;
Timer2: TTimer;
Table3: TTable;
DataSource3: TDataSource;
Label17: TLabel;
Bevel2: TBevel;
Bevel4: TBevel;
Label18: TLabel;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Edit1: TEdit;
Button9: TButton;
Label21: TLabel;
RadioButton5: TRadioButton;
RadioButton6: TRadioButton;
Button10: TButton;
Label22: TLabel;
ComboBox1: TComboBox;
Button11: TButton;
Edit2: TEdit;
ComboBox2: TComboBox;
ComboBox3: TComboBox;
Timer3: TTimer;
Label8: TLabel;
SpinEdit1: TSpinEdit;
SpinEdit2: TSpinEdit;
Label12: TLabel;
Label14: TLabel;
Button12: TButton;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
DBGrid1: TDBGrid;
Label15: TLabel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure Button10Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button12Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Timer3Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
tr:byte;
a:byte;
implementation
{$R *.dfm}
procedure a1(n:integer);
var
a:integer;
begin
form4.Table2.Locate('nom_kom', n, [loCaseInsensitive,
loPartialKey]);
form4.Edit2.Text:=form4.Table2.fieldbyname('naim').AsString;
end;
procedure klyb;
begin
form4.Table2.First;
while not form4.Table2.eof do
begin
orm4.ComboBox2.Items.Add(form4.Table2.fieldbyname('naim').AsString);
form4.Table2.Next;
end;
end;
procedure TForm4.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
gp2:=1;
end;
procedure TForm4.FormCreate(Sender: TObject);
begin
table1.Active:=true;
table2.Active:=true;
table3.Active:=true;
table1.First;
tr:=0;
end;
procedure TForm4.Timer1Timer(Sender: TObject);
begin
label13.Caption:=inttostr(table1.Recordcount);
end;
procedure TForm4.Button2Click(Sender: TObject);
begin
if table1.RecordCount>0 then begin
table1.Next;
a1(table1.fieldbyname('nom_kom').Value);
end;
end;
procedure TForm4.Button1Click(Sender: TObject);
begin
if table1.RecordCount>0 then begin
table1.Prior;
a1(table1.fieldbyname('nom_kom').Value);
end;
end;
procedure TForm4.FormActivate(Sender: TObject);
begin
button8.Enabled:=false;
table1.Filtered:=false;
combobox2.Hide;
combobox3.Hide;
end;
procedure TForm4.Timer2Timer(Sender: TObject);
begin
a1(table1.fieldbyname('nom_kom').Value);
klyb;
timer2.Enabled:=false;
end;
procedure TForm4.Button3Click(Sender: TObject);
begin
table1.First;
end;
procedure TForm4.Button4Click(Sender: TObject);
begin
table1.Last;
end;
procedure TForm4.Button9Click(Sender: TObject);
begin
if radiobutton5.Checked=true then begin //поиск по номеру
if edit1.text='' then exit;
if not Table1.Locate('nom_igr', Edit1.Text, [loCaseInsensitive,
loPartialKey]) then
ShowMessage('Запись не найдена');
end;
if radiobutton6.Checked=true then
begin //поиск по фамилии
if edit1.text='' then exit;
if not Table1.Locate('fam', Edit1.Text, [loCaseInsensitive,
loPartialKey]) then
ShowMessage('Запись не найдена');
end;
end;
procedure TForm4.Button10Click(Sender: TObject);
begin
table1.Filtered:=true;
table1.Filter:='ampl='+''''+combobox1.Text+'''';
end;
procedure TForm4.Button11Click(Sender: TObject);
begin
table1.Filtered:=false;
end;
procedure TForm4.Button6Click(Sender: TObject);
begin
tr:=1;
dbedit1.Enabled:=true;
dbedit2.Enabled:=true;
dbedit3.Enabled:=true;
dbedit4.Enabled:=true;
dbedit6.Enabled:=true;
dbedit7.Enabled:=true;
dbedit9.Enabled:=true;
dbedit10.Enabled:=true;
dbedit11.Enabled:=true;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=false;
button5.Enabled:=false;
button7.Enabled:=false;
button8.Enabled:=true;
combobox3.Top:=234;
combobox3.Left:=324;
combobox3.Show;
table1.Edit;
end;
procedure TForm4.Button12Click(Sender: TObject);
var
a,b:integer;
begin
if (radiobutton1.Checked=false) and (radiobutton2.Checked=false) then
begin
showmessage('Выберите критерий фильтрации');
exit;
end;
a:=spinedit1.Value;
b:=spinedit2.Value;
if (a>b) or (a=b) then begin
showmessage('Фильтрация невозможна. Измените значение фильтрации!');
exit;
end;
if radiobutton1.Checked then begin
table1.Filtered:=true;
table1.Filter:='ves>='+inttostr(a)+'and ves<='+inttostr(b);
end;
if radiobutton2.Checked then begin
table1.Filtered:=true;
table1.Filter:='rost>='+inttostr(a)+'and rost<='+inttostr(b);
end;
end;
procedure TForm4.Button5Click(Sender: TObject);
var
t:integer;
begin
table1.Filtered:=false;
tr:=2;
table1.last;
t:=table1.fieldbyname('nom_igr').Value;
t:=t+1;
table1.Insert;
table1.FieldByName('nom_igr').Value:=t;
combobox2.Top:=150;
combobox2.Left:=324;
combobox2.Show;
combobox3.Top:=234;
combobox3.Left:=324;
combobox3.Show;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=false;
button6.Enabled:=false;
button5.Enabled:=false;
button8.Enabled:=true;
dbedit1.Enabled:=true;
dbedit2.Enabled:=true;
dbedit3.Enabled:=true;
dbedit4.Enabled:=true;
dbedit6.Enabled:=true;
dbedit7.Enabled:=true;
dbedit9.Enabled:=true;
dbedit10.Enabled:=true;
dbedit11.Enabled:=true;
end;
procedure TForm4.Button8Click(Sender: TObject);
var
s:string;
begin
if tr=2 then begin //открыли добавление
a:=1;
if dbedit2.text='' then a:=2;
if dbedit3.text='' then a:=2;
if dbedit4.text='' then a:=2;
if dbedit6.text='' then a:=2;
if dbedit7.text='' then a:=2;
if dbedit10.text='' then a:=2;
if dbedit11.text='' then a:=2;
if combobox2.text='' then a:=2;
if combobox3.text='' then a:=2;
if a=2 then begin showmessage('Введены не все данные'); exit; end;
Table2.Locate('naim', combobox2.Text, [loCaseInsensitive,
loPartialKey]);
able1.FieldByName('nom_kom').Value:=table2.FieldByName('nom_kom').Value;
table1.FieldByName('ampl').AsString:=combobox3.Text;
table1.Append;
table1.Refresh;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
button4.Enabled:=true;
button6.Enabled:=true;
button5.Enabled:=true;
button8.Enabled:=false;
combobox2.Hide;
combobox3.Hide;
dbedit1.Enabled:=false;
dbedit2.Enabled:=false;
dbedit3.Enabled:=false;
dbedit4.Enabled:=false;
dbedit6.Enabled:=false;
dbedit7.Enabled:=false;
dbedit9.Enabled:=false;
dbedit10.Enabled:=false;
dbedit11.Enabled:=false;
button7.Enabled:=true;
a:=1;
a1(table1.fieldbyname('nom_kom').Value);
end; //закрыли редактирование
if tr=1 then begin
if combobox3.text='' then begin showmessage('Есть пустые поля'); exit;end;
table1.FieldByName('ampl').AsString:=combobox3.Text;
table1.Append;
table1.Refresh;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
button4.Enabled:=true;
button6.Enabled:=true;
button5.Enabled:=true;
button8.Enabled:=false;
combobox2.Hide;
combobox3.Hide;
dbedit1.Enabled:=false;
dbedit2.Enabled:=false;
dbedit3.Enabled:=false;
dbedit4.Enabled:=false;
dbedit6.Enabled:=false;
dbedit7.Enabled:=false;
dbedit9.Enabled:=false;
dbedit10.Enabled:=false;
dbedit11.Enabled:=false;
button7.Enabled:=true;
a:=1;
table1.Refresh;
end;
end;
procedure TForm4.Button7Click(Sender: TObject);
begin
if application.MessageBox('Вы действительно хотите удалить текущую запись?','Удаление записи',
mb_iconQuestion+mb_yesno)=idyes then
table1.delete;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
button4.Enabled:=true;
button6.Enabled:=true;
button5.Enabled:=true;
button8.Enabled:=false;
combobox2.Hide;
combobox3.Hide;
dbedit1.Enabled:=false;
dbedit2.Enabled:=false;
dbedit3.Enabled:=false;
dbedit4.Enabled:=false;
dbedit6.Enabled:=false;
dbedit7.Enabled:=false;
dbedit9.Enabled:=false;
dbedit10.Enabled:=false;
dbedit11.Enabled:=false;
end;
end.
Текст модуля komandi.pas
unit komandi;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, gl_per, DB, DBTables, Grids, DBGrids, StdCtrls, Mask, DBCtrls,
Buttons, ExtCtrls;
type
TForm5 = class(TForm)
DataSource1: TDataSource;
DataSource2: TDataSource;
DataSource3: TDataSource;
komandi: TTable;
igroki: TTable;
stadioni: TTable;
DBGrid2: TDBGrid;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
strani: TTable;
DataSource4: TDataSource;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
DBEdit8: TDBEdit;
DBEdit9: TDBEdit;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
Label13: TLabel;
DBEdit10: TDBEdit;
DBEdit11: TDBEdit;
Button3: TButton;
Button4: TButton;
Label14: TLabel;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Label15: TLabel;
Edit1: TEdit;
Button8: TButton;
Label16: TLabel;
DBEdit1: TDBEdit;
DBEdit12: TDBEdit;
Label17: TLabel;
BitBtn1: TBitBtn;
Label19: TLabel;
Label21: TLabel;
Timer1: TTimer;
Bevel1: TBevel;
Bevel2: TBevel;
Bevel3: TBevel;
Label18: TLabel;
Label20: TLabel;
Label22: TLabel;
Bevel4: TBevel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form5: TForm5;
implementation
uses dob_klyb;
{$R *.dfm}
procedure TForm5.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
gp3:=1;
end;
procedure TForm5.FormActivate(Sender: TObject);
begin
komandi.Refresh;
komandi.First;
bitbtn1.Caption:='';
label20.Caption:=komandi.fieldbyname('naim').AsString;
label18.Caption:=inttostr(igroki.recordcount);
end;
procedure TForm5.Button1Click(Sender: TObject);
begin
komandi.Prior;
label20.Caption:=komandi.fieldbyname('naim').AsString;
label18.Caption:=inttostr(igroki.recordcount);
end;
procedure TForm5.Button2Click(Sender: TObject);
begin
komandi.Next;
label20.Caption:=komandi.fieldbyname('naim').AsString;
label18.Caption:=inttostr(igroki.recordcount);
end;
procedure TForm5.Button5Click(Sender: TObject);
var
a:byte;
begin
kdr:=1; //включаем режим добавления команды
komandi.Last;
a:=komandi.fieldbyname('nom_kom').Value;
form6.komandi.Insert;
form6.komandi.FieldByName('nom_kom').Value:=a+1;
form6.showmodal;
end;
procedure TForm5.Button7Click(Sender: TObject);
begin
if application.MessageBox('Вы действительно хотите удалить текущую запись?',
'Удаление записи', mb_iconQuestion+mb_yesno)=idyes then
komandi.delete;
end;
procedure TForm5.Button6Click(Sender: TObject);
begin
kdr:=2; // включаем режим редактирования команд
form6.komandi.Locate('nom_kom', dbedit12.text, [loCaseInsensitive,
loPartialKey]);
form6.komandi.Edit;
form6.ComboBox1.text:=strani.fieldbyname('naim_str').asstring;
form6.ComboBox2.Text:=stadioni.fieldbyname('naim_st').AsString;
form6.Caption:='Редактирование команды
+komandi.fieldbyname('naim').AsString;
form6.ShowModal;
end;
procedure TForm5.Button8Click(Sender: TObject);
begin
if edit1.text='' then exit;
if not komandi.Locate('naim', Edit1.Text, [loCaseInsensitive,
loPartialKey]) then
ShowMessage('Запись не найдена');
end;
procedure TForm5.BitBtn1Click(Sender: TObject);
begin
edit1.text:='';
end;
procedure TForm5.Timer1Timer(Sender: TObject);
begin
label21.Caption:=inttostr(komandi.RecordCount);
end;
procedure TForm5.Button3Click(Sender: TObject);
begin
komandi.First;
label20.Caption:=komandi.fieldbyname('naim').AsString;
label18.Caption:=inttostr(igroki.recordcount);
end;
procedure TForm5.Button4Click(Sender: TObject);
begin
komandi.Last;
label20.Caption:=komandi.fieldbyname('naim').AsString;
label18.Caption:=inttostr(igroki.recordcount);
end;
end.
Текст модуля dob_klyb.pas
unit dob_klyb;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, DBTables, Mask, DBCtrls, gl_per;
type
TForm6 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
Label10: TLabel;
DataSource1: TDataSource;
DataSource2: TDataSource;
komandi: TTable;
strani: TTable;
stadioni: TTable;
DataSource3: TDataSource;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
ComboBox1: TComboBox;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
DBEdit6: TDBEdit;
DBEdit7: TDBEdit;
ComboBox2: TComboBox;
DBEdit8: TDBEdit;
Button1: TButton;
Button2: TButton;
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form6: TForm6;
implementation
uses komandi;
{$R *.dfm}
Procedure stran;
begin
form6.strani.First;
while not form6.strani.Eof do
begin
form6.ComboBox1.Items.Add(form6.strani.fieldbyname('naim_str').AsString);
form6.strani.Next;
end;
end;
Procedure stadion;
begin
form6.stadioni.First;
form6.ComboBox2.Items.Clear;
while not form6.stadioni.Eof do
begin
form6.ComboBox2.Items.Add(form6.stadioni.fieldbyname('naim_st').AsString);
form6.stadioni.Next;
end;
end;
procedure TForm6.FormActivate(Sender: TObject);
begin
stran; stadion;
komandi.Refresh;
end;
procedure TForm6.Button1Click(Sender: TObject);
var
a2:byte;
begin
a2:=0;
if kdr=1 then begin //режим добавления клуба
if dbedit1.text='' then a2:=1;
if dbedit2.text='' then a2:=1;
if dbedit3.text='' then a2:=1;
if dbedit4.text='' then a2:=1;
if dbedit5.text='' then a2:=1;
if dbedit6.text='' then a2:=1;
if dbedit7.text='' then a2:=1;
if dbedit8.text='' then a2:=1;
if combobox1.text='' then a2:=1;
if combobox1.text='' then a2:=1;
if a2=1 then begin showmessage('Введены не все данные');
exit; end;
strani.Locate('naim_str', Combobox1.Text, [loCaseInsensitive,
loPartialKey]);
komandi.FieldByName('nom_st').value:=strani.fieldbyname('nom_str').Value;
stadioni.Locate('naim_st', Combobox2.Text, [loCaseInsensitive,
loPartialKey]);
komandi.FieldByName('nom_stad').value:=stadioni.fieldbyname('nom_stad').Value;
komandi.Append;
komandi.Refresh;
kdr:=0;
form5.komandi.Refresh;
form6.Close;
end;
a2:=0;
if kdr=2 then begin //режим редактирования клуба
if dbedit1.text='' then a2:=1;
if dbedit2.text='' then a2:=1;
if dbedit3.text='' then a2:=1;
if dbedit4.text='' then a2:=1;
if dbedit5.text='' then a2:=1;
if dbedit6.text='' then a2:=1;
if dbedit7.text='' then a2:=1;
if dbedit8.text='' then a2:=1;
if combobox1.text='' then a2:=1;
if combobox1.text='' then a2:=1;
if a2=1 then begin showmessage('Есть пустые поля'); exit; end;
komandi.Edit;
strani.Locate('naim_str', Combobox1.Text, [loCaseInsensitive,
loPartialKey]);
komandi.FieldByName('nom_st').value:=strani.fieldbyname('nom_str').Value;
stadioni.Locate('naim_st', Combobox2.Text, [loCaseInsensitive,
loPartialKey]);
komandi.FieldByName('nom_stad').value:=stadioni.fieldbyname('nom_stad').Value;
komandi.Append;
komandi.Refresh;
kdr:=0;
form5.komandi.Refresh;
form6.Close;
end;
end;
procedure TForm6.Button2Click(Sender: TObject);
begin
komandi.Cancel;
if kdr=1 then komandi.Delete;
form6.Close;
end;
procedure TForm6.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form6.Caption:='Добавление команды';
if kdr=1 then komandi.Delete;
end;
end.
Текст модуля stadioni.pas
unit stadioni;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, gl_per, StdCtrls, Mask, DBCtrls, DB, DBTables, Buttons;
type
TForm7 = class(TForm)
DataSource1: TDataSource;
Table1: TTable;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
DBEdit1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
Button6: TButton;
Button7: TButton;
Button8: TButton;
Label5: TLabel;
Edit1: TEdit;
Button9: TButton;
BitBtn1: TBitBtn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button8Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form7: TForm7;
a:byte;
implementation
{$R *.dfm}
procedure TForm7.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
gp4:=1;
end;
procedure TForm7.Button1Click(Sender: TObject);
begin
table1.Prior;
end;
procedure TForm7.Button2Click(Sender: TObject);
begin
table1.next;
end;
procedure TForm7.Button3Click(Sender: TObject);
begin
table1.First;
end;
procedure TForm7.Button4Click(Sender: TObject);
begin
table1.Last;
end;
procedure TForm7.FormCreate(Sender: TObject);
begin
a:=0;
end;
procedure TForm7.Button5Click(Sender: TObject);
var
r:integer;
begin
a:=1; //добавление
table1.Last;
r:=table1.fieldbyname('nom_stad').Value;
table1.Insert;
table1.fieldbyname('nom_stad').Value:=r+1;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=false;
button6.Enabled:=false;
button5.Enabled:=false;
button8.Enabled:=true;
dbedit2.ReadOnly:=false;
dbedit3.ReadOnly:=false;
dbedit4.ReadOnly:=false;
end;
procedure TForm7.Button8Click(Sender: TObject);
var
a1:byte;
begin
a1:=0;
if a=1 then begin //добавление
if dbedit2.text='' then a1:=1;
if dbedit3.text='' then a1:=1;
if dbedit4.text='' then a1:=1;
if a1=1 then begin showmessage('Есть пустые поля'); exit; end;
table1.Append;
table1.Refresh;
end;
if a=2 then begin //редактирование
table1.Append;
table1.Refresh;
end;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
button4.Enabled:=true;
button6.Enabled:=true;
button5.Enabled:=true;
button8.Enabled:=false;
dbedit2.ReadOnly:=true;
dbedit3.ReadOnly:=true;
dbedit4.ReadOnly:=true;
end;
procedure TForm7.FormActivate(Sender: TObject);
begin
button8.Enabled:=false;
bitbtn1.Caption:='';
end;
procedure TForm7.Button6Click(Sender: TObject);
begin
a:=2; //редактирование
table1.Edit;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
button4.Enabled:=false;
button5.Enabled:=false;
button6.Enabled:=false;
button8.Enabled:=true;
dbedit2.ReadOnly:=false;
dbedit3.ReadOnly:=false;
dbedit4.ReadOnly:=false;
end;
procedure TForm7.Button7Click(Sender: TObject);
begin
if application.MessageBox('Вы действительно хотите удалить текущую запись?','Удаление записи',
mb_iconQuestion+mb_yesno)=idyes then
table1.delete;
end;
procedure TForm7.Button9Click(Sender: TObject);
begin
if edit1.text='' then exit;
if not table1.Locate('naim_st', Edit1.Text, [loCaseInsensitive,
loPartialKey]) then
ShowMessage('Запись не найдена');
end;
procedure TForm7.BitBtn1Click(Sender: TObject);
begin
edit1.text:='';
edit1.SetFocus;
end;
end.
Текст модуля transfer.pas
unit transfer;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, gl_per, DB, DBTables, Grids, DBGrids, StdCtrls, ComCtrls, Spin,
ExtCtrls, Buttons;
type
TForm8 = class(TForm)
igroki: TTable;
komandi: TTable;
DataSource1: TDataSource;
DataSource2: TDataSource;
DataSource3: TDataSource;
Label1: TLabel;
Label2: TLabel;
perehodi: TTable;
DBGrid1: TDBGrid;
Label3: TLabel;
Edit1: TEdit;
Button1: TButton;
Label4: TLabel;
Edit2: TEdit;
Label5: TLabel;
ComboBox1: TComboBox;
Label6: TLabel;
DateTimePicker1: TDateTimePicker;
SpinEdit1: TSpinEdit;
Label7: TLabel;
Button2: TButton;
Timer1: TTimer;
ComboBox2: TComboBox;
BitBtn1: TBitBtn;
Label8: TLabel;
Edit3: TEdit;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
procedure Button2Click(Sender: TObject);
procedure ComboBox2KeyPress(Sender: TObject; var Key: Char);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Button1Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form8: TForm8;
tkl,nkl:integer;
implementation
{$R *.dfm}
procedure new_klyb;
begin
form8.komandi.First;
form8.ComboBox1.Clear;
while not form8.komandi.Eof do
begin
form8.ComboBox1.Items.Add(form8.komandi.fieldbyname('naim').AsString);
form8.komandi.next;
end;
end;
procedure tek_klyb;
var
a:integer;
begin
a:=form8.igroki.fieldbyname('nom_kom').Value;
form8.komandi.Locate('nom_kom', a , [loCaseInsensitive,
loPartialKey]);
form8.edit2.text:=form8.komandi.FieldByName('naim').AsString;
tkl:=Form8.komandi.fieldbyname('nom_kom').Value;
end;
procedure tek_igr;
var
s:string;
begin
s:=form8.igroki.fieldbyname('fam').AsString+' '+
form8.igroki.fieldbyname('ima').AsString+' '+
form8.igroki.fieldbyname('otch').AsString;
form8.edit3.text:=s;
end;
procedure TForm8.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
gp5:=1;
end;
procedure TForm8.Button3Click(Sender: TObject);
begin
tek_klyb;
end;
procedure TForm8.Timer1Timer(Sender: TObject);
begin
new_klyb;
tek_klyb;
tek_igr;
timer1.Enabled:=false;
end;
procedure TForm8.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
tek_klyb;
tek_igr;
end;
procedure TForm8.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
tek_klyb;
tek_igr;
end;
procedure TForm8.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
tek_klyb;
tek_igr;
end;
procedure TForm8.Button2Click(Sender: TObject);
var
s:string;
a:byte;
begin
a:=0;
s:=combobox1.Text;
komandi.Locate('naim', s , [loCaseInsensitive,
loPartialKey]);
nkl:=komandi.fieldbyname('nom_kom').Value;
if edit2.text='' then a:=1;
if combobox1.text='' then a:=1;
if a=1 then begin showmessage('Введены не все данные'); exit; end;
if edit2.text=combobox1.Text then begin
showmessage('Трансфер невозможен. Новый и текущий клубы совпадают!');
exit;
end;
if spinedit1.Value<100 then begin
showmessage(`Сумма трансфера слишком мала! Такого не может быть!!!');
exit;
end;
perehodi.Insert;
perehodi.FieldByName('nom_igr').Value:=igroki.fieldbyname('nom_igr').Value;
perehodi.FieldByName('st_nom_kom').Value:=tkl;
perehodi.FieldByName('nw_nom_kom').Value:=nkl;
perehodi.FieldByName('dat_per').Value:=datetimepicker1.Date;
perehodi.FieldByName('sym').Value:=spinedit1.Value;
perehodi.Append;
perehodi.Refresh;
igroki.Edit;
igroki.FieldByName('nom_kom').Value:=nkl;
igroki.Append;
igroki.Refresh;
showmessage('Успешная операция!');
end;
procedure TForm8.ComboBox2KeyPress(Sender: TObject; var Key: Char);
begin
key:=#0;
end;
procedure TForm8.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if combobox2.text='' then begin
showmessage('Выберите критерий поиска'); edit1.text:=''; exit; end;
if combobox2.text='по номеру' then begin
if not (Key in ['0'..'9',#8,#13]) then
Key := #0;
end;
end;
procedure TForm8.Button1Click(Sender: TObject);
begin
if edit1.text='' then begin showmessage('Нет информации для поиска');
exit; end;
if combobox2.text='по номеру' then begin
if not igroki.Locate('nom_igr', edit1.text , [loCaseInsensitive,
loPartialKey]) then showmessage('Запись не найдена');
end;
if combobox2.text='по фамилии' then begin
if not igroki.Locate('fam', edit1.text , [loCaseInsensitive,
loPartialKey]) then showmessage('Запись не найдена');
end;
end;
procedure TForm8.FormActivate(Sender: TObject);
begin
bitbtn1.Caption:='';
end;
procedure TForm8.BitBtn1Click(Sender: TObject);
begin
edit1.Clear;
end;
end.
Текст модуля ist_trans.pas
unit ist_trans;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, gl_per, DB, DBTables, StdCtrls, Grids, DBGrids, ExtCtrls, Spin;
type
TForm9 = class(TForm)
perehodi: TTable;
komandi: TTable;
igroki: TTable;
DataSource1: TDataSource;
DataSource2: TDataSource;
DataSource3: TDataSource;
Label1: TLabel;
vspom: TTable;
DataSource4: TDataSource;
DBGrid1: TDBGrid;
Timer1: TTimer;
Label2: TLabel;
Edit1: TEdit;
Button1: TButton;
Button2: TButton;
Label3: TLabel;
Edit2: TEdit;
Button4: TButton;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
Label4: TLabel;
SpinEdit1: TSpinEdit;
SpinEdit2: TSpinEdit;
Label5: TLabel;
Label6: TLabel;
Button5: TButton;
Bevel1: TBevel;
Bevel2: TBevel;
Bevel3: TBevel;
Button3: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form9: TForm9;
implementation
{$R *.dfm}
procedure zap_vspom;
var
a1,a2,a3:integer;
s,s1,s2:string;
begin
form9.vspom.First;
while not form9.vspom.Eof do
begin
form9.vspom.Next;
form9.vspom.Delete;
end;
form9.perehodi.First;
while not form9.perehodi.eof do
begin
form9.vspom.insert;
s:='';
a1:=form9.perehodi.fieldbyname('nom_igr').Value;
form9.igroki.Locate('nom_igr', a1 , [loCaseInsensitive,
loPartialKey]);
s:=form9.igroki.fieldbyname('fam').AsString+' '
+form9.igroki.fieldbyname('ima').AsString;
form9.vspom.FieldByName('famima').asstring:=s;
a2:=form9.perehodi.fieldbyname('st_nom_kom').Value;
form9.komandi.Locate('nom_kom', a2 , [loCaseInsensitive,
loPartialKey]);
s1:=form9.komandi.fieldbyname('naim').AsString;
form9.vspom.FieldByName('s_kl').AsString:=s1;
a3:=form9.perehodi.fieldbyname('nw_nom_kom').Value;
form9.komandi.Locate('nom_kom', a3 , [loCaseInsensitive,
loPartialKey]);
s2:=form9.komandi.fieldbyname('naim').AsString;
form9.vspom.FieldByName('n_kl').AsString:=s2;
form9.vspom.FieldByName('data').Value:=
form9.perehodi.fieldbyname('dat_per').Value;
form9.vspom.FieldByName('sym').Value:=
form9.perehodi.fieldbyname('sym').Value;
form9.vspom.Append;
form9.vspom.Refresh;
form9.perehodi.Next;
end;
end;
procedure TForm9.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
gp6:=1;
end;
procedure TForm9.Timer1Timer(Sender: TObject);
begin
zap_vspom;
timer1.Enabled:=false;
end;
procedure TForm9.Button1Click(Sender: TObject);
begin
if edit1.text='' then exit;
vspom.Filtered:=true;
vspom.Filter:='famima='+''''+edit1.Text+'''';
end;
procedure TForm9.Button2Click(Sender: TObject);
begin
vspom.Filtered:=false;
end;
procedure TForm9.Button4Click(Sender: TObject);
begin
if edit2.text='' then exit;
vspom.Filtered:=true;
if radiobutton1.Checked=true then
vspom.Filter:='s_kl='+''''+edit2.Text+'''';
if radiobutton2.Checked=true then
vspom.Filter:='n_kl='+''''+edit2.Text+'''';
end;
procedure TForm9.Button5Click(Sender: TObject);
var
a,b:integer;
begin
a:=spinedit1.Value;
b:=spinedit2.Value;
if (a>b) or (a=b) then begin
showmessage('Фильтрация невозможна. Измените значение фильтрации!');
exit; end;
vspom.Filtered:=true;
vspom.Filter:='sym>'+inttostr(a)+'and sym<'+inttostr(b);
end;
procedure TForm9.Button3Click(Sender: TObject);
begin
vspom.IndexFieldNames:='sym';
end;
procedure TForm9.FormCreate(Sender: TObject);
begin
button3.Hide;
end;
end.
Размещено на Allbest.ru
Подобные документы
Характеристика системы программирования. Главные составные части Delphi. Интерфейс программного приложения. Результаты работы программы. Руководство системного программиста и оператора. Язык программирования Delphi, среда компилятора Borland 7.0.
курсовая работа [1,6 M], добавлен 29.05.2013Разработка программы для работы с базой данных "Библиотека" в среде Borland C++Builder 6 на языке программирования C++ с использованием визуальных средств. Структура информации, подключение к ней и ее отображение. Описание пользовательского интерфейса.
курсовая работа [1,5 M], добавлен 19.05.2014Построение банков данных. Инструментальные средства баз данных Borland. Принцип работы и архитектура баз данных в Delphi. Навигационный способ доступа к базам данных: операции с таблицей, сортировка и перемещение по набору данных, фильтрация записей.
курсовая работа [642,7 K], добавлен 06.02.2014Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.
контрольная работа [3,6 M], добавлен 18.10.2012Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.
курсовая работа [1,5 M], добавлен 08.02.2011Характеристика и технические возможности СУБД MySQL. Трехуровневая структура MySQL. Требования к аппаратному обеспечению. Создание таблицы, триггеров, генераторов, хранимых процедур в MySQL. Разработка приложения для базы данных с помощью Borland Delphi.
курсовая работа [940,7 K], добавлен 20.12.2011Рассмотрение теории и технологии работы со средой программирования Delphi. Описание Описание интерфейса программы, структуры данных, генерации точек. Разработка задания по выявлению всех квадратов, которые могут быть образованы точками на плоскости.
реферат [21,0 K], добавлен 13.01.2015Разработка программы для ввода данных из актов о возврате бракованных ванн в БД учета брака. Проектирование информационных систем. Разработка модели БД с помощью ERWin, приложения ввода данных в Borland Delphi 7, системы создания отчётности в MS Excel.
курсовая работа [2,6 M], добавлен 30.03.2011Разработка информационной системы административного управления. Выбор языка и среды программирования. Структура взаимодействия информации. Требования к программно-аппаратному окружению. Создание программы в Delphi и связывание ее с базой данных.
курсовая работа [1010,9 K], добавлен 08.10.2015Программа перенесения данных из таблицы Word в таблицу базы данных. Алгоритм решения задачи в виде текстового описания. Описание базы данных (структура таблиц, схема). Копии с экрана форм для работы с базой данных при разработке их в конструкторе.
контрольная работа [914,3 K], добавлен 26.03.2011