Футбольные команды и игроки
Создание программы на языке высокого уровня Borland Delphi. Таблицы баз данных и связи между ними. Описание внешнего вида пользовательского интерфейса. Характеристика и этапы алгоритма работы проектируемой программы. Текст основных проектов и модулей.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 20.11.2011 |
Размер файла | 744,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
КУРСОВАЯ РАБОТА
на тему: «Футбольные команды и игроки»
Введение
Футбол (англ. 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 N11Click (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
form4. 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]);
table1. 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
Подобные документы
Разработка программных продуктов на языке программирования Borland Delphi. Применяемые таблицы и связи между ними. Пользовательский интерфейс работы с базой данных. Алгоритм работы программы "Футбольные команды и игроки". Защита от ввода неверных данных.
курсовая работа [788,1 K], добавлен 22.06.2011Разработка программы создания заметок в любом месте компьютера. Выбор технологии, языка и среды разработки приложения. Описание основных алгоритмов работы программного обеспечения. Проектирование пользовательского интерфейса. Выбор стратегии тестирования.
отчет по практике [700,5 K], добавлен 24.11.2014Математическая формулировка задачи, принципиальная схема гидравлического демпфера. Структурная схема программы связи модулей, реализованной на языке высокого уровня Borland Delphi 7.0. Ее описание, руководство пользователя, особенности тестирования.
курсовая работа [140,0 K], добавлен 29.05.2013Разработка программы тестирования студентов по MS PowerPoint с кодом на языке Delphi. Создание алгоритма для решения функциональных требований задачи. Описание переменных, вспомогательных процедур, входных и выходных данных для реализации программы.
курсовая работа [1,5 M], добавлен 21.09.2010Этапы создания обучающей программы "Трюки и Эффекты в Delphi" в интегрированной среде Borland Delphi 7 и СУБД MS Access 2010. Главное меню и организация базы данных MS Access. Основные характеристики и состав основных модулей. Описание программы.
курсовая работа [1,1 M], добавлен 10.01.2016Написание программы для работы с клиентами средствами языка Delphi, которая предусматривает ввод, редактирование и удаление информации. Разработка алгоритма решения задачи, описание переменных, вспомогательных процедур, входных и выходных данных.
курсовая работа [355,7 K], добавлен 21.09.2010Разработка программы обработки типизированных файлов с кодом на языке Object Pascal, с использованием компонентов Delphi для ввода и вывода данных. Разработка экранных форм и алгоритма программы. Описание программных модулей и инструкция оператору.
курсовая работа [1,5 M], добавлен 08.02.2011Сравнительный анализ языков программирования высокого уровня Си и Паскаль. Реализация алгоритма обработки данных. Тестирование и отладка программы или пакета программ. Структура программы на языке Турбо Паскаль. Указатели и векторные типы данных.
курсовая работа [233,5 K], добавлен 14.12.2012Программа поиска в базе данных в среде Borland Delphi 7.0 Enterprise. Условия и блок-схемы задач. Ввод массива. Текст программ в Delphi, в Паскаль. Текст программы поиска в базе данных. Кодирование материала. Изготовление реляционной базы данных.
практическая работа [27,6 K], добавлен 11.10.2008Формирование текстового документа с именем goto.cpp., содержимое которого взято из русифицируемой справки MSDN по оператору безусловного перехода. Выбор оптимального алгоритма решения задачи, разработка интерфейса, отладка и тестирование программы.
курсовая работа [499,8 K], добавлен 10.11.2009