- •Курсовая работа
- •Постановка задачи:
- •Создание таблиц бд в формате Paradox.
- •Реализация интерфейса бд в Delphi
- •Поэтапное описание работы бд Главная форма приложения
- •Сортировка
- •Создание Secondary Indexes
- •Фильтры
- •Поиск записей:
- •Запросы:
- •Действия с таблицей (добавление, редактирование, удаление записей):
- •Удаление и редактирование
- •Справочная система
Действия с таблицей (добавление, редактирование, удаление записей):
Добавление
Добавление записей в таблице Zakaz реализуется с помощью следующей формы (Рис.13 Добавление):
Рис.13 Добавление
Загрузить картинку |
procedure TForm7.Button1Click(Sender: TObject); begin Image1.Visible:=True; If OpenDialog1.Execute then if OpenDialog1.FileName<>'' then begin Image1.Picture.LoadFromFile(OpenDialog1.FileName); fname:=OpenDialog1.FileName; Clickk:=True end else ShowMessage('Ошибка с файлом'); end; |
Оk |
procedure TForm7.BitBtn1Click(Sender: TObject); begin If clickk then begin DataModule2.Table1.Append; DataModule2.Table1.FieldByName('ID').AsInteger:= DataModule2.Table1.RecordCount+1; DataModule2.Table1.FieldByName('Fio').AsString:=Edit1.Text; DataModule2.Table1.FieldByName('Dress').AsInteger:= strtoint(label4.Caption); DataModule2.Table1.FieldByName('Cafe').AsString:= Edit3.Text; DataModule2.Table1Foto.LoadFromFile(fname); DataModule2.Table1.Post; Form7.Hide; Form1.Show; end else ShowMessage('Загрузите изображение') end; |
Выйти без сохранения |
Form7.Hide; Form1.Show; |
Справочник (Рис.14 Справочник) |
Form7.Hide; Form3.Show; DataModule2.Table2.Filtered:= False; DataModule2.Table2.Active:=True; Form3.Button1.Visible:=True; |
Рис.14 Справочник
Удаление и редактирование
Удаление и редактирование записей в таблице Zakaz осуществляется с помощью следующих кнопок, под таблицей (Рис.15 Удаление и редактирование):
Рис.15 Удаление и редактирование
Отображение в Edit |
procedure TForm1.DBGrid1CellClick(Column: TColumn); begin Edit1.Text:=DataModule2.Table1FIO.Value; Edit2.Text:=DataModule2.Table1Dress.AsString; Edit3.Text:=DataModule2.Table1Cafe.AsString; Image1.Picture:=DBImage1.Picture; end; |
Удалить текущую запись |
procedure TForm1.Button11Click(Sender: TObject); begin if MessageDlg('Удалить текущую запись?',mtConfirmation, [mbYes,mbNo],0)=mrYes then DataModule2.Table1.Delete; end; |
Изменить |
procedure TForm1.Button1Click(Sender: TObject); begin Proverka; if flag then begin DataModule2.Table1.Edit; DataModule2.Table1.FieldByName('Fio').AsString:=Edit1.Text; DataModule2.Table1.FieldByName('Dress').AsInteger:=StrToInt(Edit2.Text); DataModule2.Table1.FieldByName('Cafe').AsString:=Edit3.Text; if Image1.Visible=true then DataModule2.Table1Foto.LoadFromFile(fname); DataModule2.Table1.Post; end; DBImage1.Visible:=True; Image1.Visible:=False; end; |
Сменить картинку |
procedure TForm1.Button9Click(Sender: TObject); begin if OpenPictureDialog1.Execute then if OpenPictureDialog1.FileName<>'' then begin fname:=OpenPictureDialog1.FileName; Image1.Picture.LoadFromFile(fName); Image1.Visible:=true; DBImage1.Visible:=false; end; end; |
COM-технологии:
В программе реализован экспорт данных в Microsoft Word и Microsoft Excel (Рис.16 COM-технологии).
Рис.16 COM-технологии
Программный код реализующий экспорт в MS Word (Рис.17 MS Word):
procedure TForm10.Button2Click(Sender: TObject);
var c,MyDoc,t:variant;
begin
WD:=CreateOleObject('Word.Application');
WD.Visible:=true;
WD.Documents.Add;
t:=Wd.Selection;
Mydoc:=WD.Documents;
t.Font.Bold:=true;
T.Font.Size:=20;
t.typeText('Поиск клиента ');
T.TypePAragraph;
t.font.bold:=false;
t.font.size:=14;
DataModule2.Query1.First;
while not DataModule2.Query1.Eof do
begin
t.typeText(DataModule2.Query1.FieldByName('ID').AsString+' '+DataModule2.Query1.FieldByName('Fio').AsString+' '+DataModule2.Query1.FieldByName('Dress').AsString+' '+DataModule2.Query1.FieldByName('Cafe').AsString);
T.TypePAragraph;
DataModule2.Query1.Next;
end;
end;
Рис.17 MS Word
Программный код, реализующий экспорт в MS Excel (Рис.18 MS Excel):
procedure TForm10.Button1Click(Sender: TObject);
var i,j:integer;
begin
XL:=CreateOleObject('Excel.Application');
XL.Workbooks.Add;
//создание рабочей книги
XL.WorkBooks[1].Worksheets[1].Name:='Авторы';
XL.WorkBooks[1].Worksheets[2].Name:='Второй лист';
XL.Visible:=true;
XL.Workbooks[1].Worksheets[1].Cells[1,1]:='¹';
XL.Workbooks[1].Worksheets[1].Cells[1,2]:='Клиента';
XL.Workbooks[1].Worksheets[1].Cells[1,3]:='Платье';
XL.Workbooks[1].Worksheets[1].Cells[1,4]:='Êàôå';
XL.Workbooks[1].Worksheets[1].Cells[1,1].font.bold:=true;
XL.Workbooks[1].Worksheets[1].Cells[1,2].font.bold:=true;
XL.Workbooks[1].Worksheets[1].Cells[1,3].font.bold:=true;
XL.Workbooks[1].Worksheets[1].Cells[1,4].font.bold:=true;
for j:=1 to 4 do
begin
DataModule2.Query1.First;
for i:=2 to N_Row+1 do
begin
XL.Workbooks[1].Worksheets[1].Cells[i,j]:=DBGrid1.Columns[j-1].Field.Value;
DataModule2.Query1.Next;
end;
end;
end;
Рис.18 MS Excel