Створенння бази даних в делфі

Автор: Пользователь скрыл имя, 02 Апреля 2013 в 17:49, курсовая работа

Описание работы

Інформаційні системи дозволяють автоматизувати збір та обробку даних. Вони є банками даних, які містять у собі:
обчислювальну систему;
базу даних (БД);
систему управлення базами даних (СУБД);

Работа содержит 1 файл

strokan (1).docx

— 2.07 Мб (Скачать)

Рисунок 4.4 – Вікно «Замовлення»

 

    1. Внесення нового постачальника:

Рисунок 4.5 – Вікно «Внесення нового постачальника»

 

    1. Внесення нового вузла:

Рисунок 4.6 – Вікно «Внесення нового вузла»

 

    1. Зробити замовлення:

Рисунок 4.7 – Вікно «Внесення нового замовлення»

    1. Закрити БД – даний пункт виконує закриття бази даних.
  1. Про програму… - він містить такі елементи:

1. Допомога – цей пункт відкриває інструкцію по користуванню даного програмного засобу (для цього ви маєте встановити компонент під назвою Word із пакета MS Office 2003).

2. Про програму… - даний пункт відкриває вікно з інформацією про автора даної програми.

  • Робоча область програми складається з таких елементів:

Дані кнопки розміщені лише на головній формі, що з`являється відразу після запуску програми.

    1. Кнопка Постачальник - виконує відкриття одно іменної таблиці.
    2. Кнопка Вузли - виконує відкриття одно іменної таблиці.
    3. Кнопка Замовлення - виконує відкриття одно іменної таблиці.
    4. Кнопка Закрити БД - виконує закриття бази даних та програми.
    5. Кнопка Внесення нового постачальника - викликає вікно реєстрації нового постачальника.
    6. Кнопка Внесення нового вузла - викликає вікно, де можна внести інформацію про новий вузол.
    7. Кнопка Зробити замовлення  - викликає вікно, де можна зробити замовлення.

 

Дана панель керування розміщується лише біля таблиць.

- дана панель керування використовується  для навігації по таблицям, що  розміщенні в даній програмі.

Далі  перелічуються функції клавіш відповідно до рисунку зліва на право:

  1. Перехід до першого запису.
  2. Перехід до попереднього запису.
  3. Перехід до наступного запису.
  4. Перехід до останнього запису.
  5. Додавання нового запису перед поточним.
  6. Видалення поточного запису.
  7. Дозволити редагувати поточний запис.
  8. Зберегти зміни, зроблені в поточний запис, в таблицю бази даних.
  9. Відмінити режим редагування і відновити старі значення полів поточного запису.
  10. Обновити вміст поточного набору даних (потрібно, якщо із набором одночасно працюють декілька користувачів).

Кнопки  керування вікном із даних кнопок відключена друга кнопка - розгортання вікна на весь екран. Решта клавіш: перша – згортання програми; третя – закриття програми.

5) Методи роботи з програмою та отримання результатів роботи програми, та розшифровка змісту цих результатів.

Керування - для роботи в даній програмі вам необхідна звичайна двох клавішна миша та клавіатура.

Навігація по програмі виконується за допомогою  кнопок на головному вікні програми та за допомогою головного меню.

Для початку вам потрібно зареєструвати  нового постачальника і нового вузла. Потім після чого можна Зробити Замовлення. З таблиць можна видаляти непотрібні записи.

Вікно Внесення нового постачальника та Внесення нового вузла. Тут потрібно просто ввести в поля потрібні дані.

Вікно Зробити замовлення.

В даному вікні для того щоб коректно виконати замовлення потрібно заповнити  поля потрібною інформацією, в таблицях вибрати потрібні дані. Потім потрібно натиснути на кнопку Рахунок після  чого з’явиться вартість замовлення. І вже після цього активується кнопка для додавання замовлення до БД.

Для завершення роботи з програмою вам  потрібно натиснути на кнопку Закрити БД в головному вікні або з головного меню цього ж вікна.

 

6) Збереження  даних програми.

При реєстрації нового клієнта чи замовленні номеру дані зберігаються автоматично. Якщо ви вносите якісь зміни в  таблицю, то для збереження змін вам потрібно натиснути 8 клавішу панелі керування, яка знаходиться під таблицею.

 

7) Вихід  з програми (в тому числі переривання  роботи в будь-який момент).

Всі варіанти виходу з програми були описані  в 4 пункті даного розділу.

Поправкою буде лише те, що коли відкрите вікно  з таблицею, то закрити його можна лише за допомогою кнопки закриття вікна (у верхньому правому кутку), але лише після збереження внесених змін до таблиці.

 

8) Заборонені дії і реакція  на них програми.

В результаті введення некоректних  даних, коректна робота програми і навіть можливо бази даних не гарантується. Якщо при введенні виникає якась  помилка, наприклад, про діапазон введення даних, то повторіть введення відповідно до тих даних про які було вказано.

 

ВИСНОВКИ

На  протязі виконання даної курсової робити стояло завдання розробити базу даних «Автомобільний завод», створити програму яка б працювала з даною базою даних та написати повну документацію: все від інструкції по користуванню програмою до опису процесу створення програми. Задача досить непроста, але досить цікава і пізнавальна.

За  час виконання даної роботи більш «глибше» ознайомилася з Delphi та закріпила вже набуті знання. Також одним із тривалих, не легких, але все таки цікавим і пізнавальним, був процес створення документації. Те, як цей процес відбувається розповіддю не поясниш, це потрібно виконати самому.

 

СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ

  1. Архангельский А.Я. Приемы программирования в Delphi на основе VCL. – М.: ООО «Бином-Пресс», 2006 г. – 944 с.: ил.
  2. Благодаров А.В., Гринченко Н.Н., Овечкин Г.В. Клиент-серверные технологии баз данных. Методические указания к лабораторным работам. РГРТУ, Рязань, 2007.
  3. Бобровський С.И. Delphi 7.Учёбный курс – СПб.: Питер, 2004. – 736 с.:ил.
  4. Кандзюба С.П., Громов В.Н. Delphi 6. Базы данных и приложения. Лекции и упражнения. – К.: Издательство «ДинСофт», 2001. – 576 с.
  5. Фаронов В.В. Программирование баз данных в Delphi 7, учебный курс, К.: Издательство «ДинСофт», 2001. - 459стр

 

ДОДАТОК А. Код програмних модулів

  1. Модуль - Unit1.pas.

unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, Menus, Unit2, ShellApi;

type

  TForm1 = class(TForm)

    Button1: TButton;

    MainMenu1: TMainMenu;

    Button2: TButton;

    Button3: TButton;

    Button4: TButton;

    Button5: TButton;

    Button6: TButton;

    Button7: TButton;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N7: TMenuItem;

    N8: TMenuItem;

    N9: TMenuItem;

    N10: TMenuItem;

    N11: TMenuItem;

    N12: TMenuItem;

    N13: TMenuItem;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure Button6Click(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure N13Click(Sender: TObject);

    procedure N12Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

implementation

uses Unit3, Unit4, Unit6, Unit7, Unit8, Unit5, Unit9;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

Form3.showmodal;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

   Form4.showmodal;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

DataModule2.postachalnuk.Close;

DataModule2.vyzlu.Close;

DataModule2.zakaz.Close;

Close;

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

    Form6.showmodal;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

     Form7.showmodal;

end;

procedure TForm1.Button7Click(Sender: TObject);

begin

     Form8.showmodal;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

       Form5.showmodal;

end;

procedure TForm1.N13Click(Sender: TObject);

begin

Form9.Showmodal;

end;

procedure TForm1.N12Click(Sender: TObject);

begin

ShellExecute(Application.Handle,'open','\help\help.doc',nil,nil,0);

end;

 

end.

 

  1. Модуль – Unit2.pas.

unit Unit2;

interface

uses

  SysUtils, Classes, DB, DBTables;

type

  TDataModule2 = class(TDataModule)

    postachalnuk: TTable;

    vyzlu: TTable;

    zakaz: TTable;

    postachalnukID: TAutoIncField;

    postachalnukPostachalnukKod: TFloatField;

    postachalnukName: TStringField;

    postachalnukAdresa: TStringField;

    postachalnukTelephon: TStringField;

    postachalnukPrizvusche: TStringField;

    vyzluID: TAutoIncField;

    vyzluName: TStringField;

    vyzluVuzlKod: TFloatField;

    vyzluVurobnuk: TStringField;

    vyzluVartist: TFloatField;

    vyzluMinimal: TFloatField;

    vyzluPostachalnukID: TFloatField;

    zakazID: TAutoIncField;

    zakazZakazKod: TFloatField;

    zakazDateIn: TDateField;

    zakazName: TStringField;

    zakazVuzolKod: TFloatField;

    zakazKilkist: TFloatField;

    zakazDateOut: TStringField;

    postachalnukSource: TDataSource;

    vyzluSource: TDataSource;

    zakazSource: TDataSource;

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  DataModule2: TDataModule2;

implementation

{$R *.dfm}

end.

 

  1. Модуль – Unit3.pas.

unit Unit3;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, Unit2, ExtCtrls, DBCtrls, Grids, DBGrids;

type

  TForm3 = class(TForm)

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form3: TForm3;

implementation

{$R *.dfm}

end.

 

  1. Модуль – Unit4.pas.

unit Unit4;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Unit2, ExtCtrls, DBCtrls, Grids, DBGrids;

type

  TForm4 = class(TForm)

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form4: TForm4;

implementation

{$R *.dfm}

end.

 

  1. Модуль – Unit5.pas.

unit Unit5;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, Unit2, ExtCtrls, DBCtrls, Grids, DBGrids;

type

  TForm5 = class(TForm)

    DBGrid1: TDBGrid;

    DBNavigator1: TDBNavigator;

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form5: TForm5;

implementation

{$R *.dfm}

end.

 

  1. Модуль – Unit6.pas.

unit Unit6;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls;

type

  TForm6 = class(TForm)

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Edit1: TEdit;

    Label4: TLabel;

    Edit2: TEdit;

    Label5: TLabel;

    Edit3: TEdit;

    Label6: TLabel;

    Edit4: TEdit;

    Button1: TButton;

    procedure FormActivate(Sender: TObject);

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form6: TForm6;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm6.FormActivate(Sender: TObject);

begin

randomize;

Label2.Caption := IntToStr(1 + random(999));

end;

procedure TForm6.Button1Click(Sender: TObject);

begin

DataModule2.postachalnuk.Insert;

DataModule2.postachalnuk.Fields[1].AsInteger := strtoint(label2.Caption);

DataModule2.postachalnuk.Fields[2].AsString := edit1.Text;

DataModule2.postachalnuk.Fields[3].AsString := edit2.text;

DataModule2.postachalnuk.Fields[4].AsString := edit3.text;

DataModule2.postachalnuk.Fields[5].AsString := edit4.text;

DataModule2.postachalnuk.Post; 

Close;

edit1.Text := '';

edit2.Text := '';

edit3.Text := '';

edit4.Text := '';

end;

end.

 

  1. Модуль – Unit7.pas.

unit Unit7;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, Unit2, Grids, DBGrids, StdCtrls;

type

  TForm7 = class(TForm)

    Label1: TLabel;

    Edit1: TEdit;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Edit2: TEdit;

    Label5: TLabel;

    Edit3: TEdit;

    Label6: TLabel;

    Edit4: TEdit;

    DBGrid1: TDBGrid;

    Label7: TLabel;

    Label8: TLabel;

    Button1: TButton;

    procedure FormActivate(Sender: TObject);

    procedure DBGrid1CellClick(Column: TColumn);

    procedure Button1Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form7: TForm7;

implementation

{$R *.dfm}

procedure TForm7.FormActivate(Sender: TObject);

begin

randomize;

Label3.Caption := IntToStr(1001 + random(999));

end;

procedure TForm7.DBGrid1CellClick(Column: TColumn);

begin

   Label8.caption := dbgrid1.Fields[1].AsString;

end;

procedure TForm7.Button1Click(Sender: TObject);

begin

DataModule2.vyzlu.Insert;

DataModule2.vyzlu.Fields[1].AsString := edit1.text;

DataModule2.vyzlu.Fields[2].AsInteger := strtoint(label3.caption);

DataModule2.vyzlu.Fields[3].AsString := edit2.text;

DataModule2.vyzlu.Fields[4].Asinteger := strtoint(edit3.text);

DataModule2.vyzlu.Fields[5].Asinteger := strtoint(edit4.text);

DataModule2.vyzlu.Fields[6].Asinteger := dbgrid1.Fields[0].AsInteger;

DataModule2.vyzlu.Post;

Close;

edit1.Text := '';

edit2.Text := '';

edit3.Text := '';

edit4.Text := '';

Label8.Caption := '';

end;

end.

 

  1. Модуль – Unit8.pas.

unit Unit8;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls, Unit2, Grids, DBGrids;

type

  TForm8 = class(TForm)

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    DBGrid1: TDBGrid;

    Label5: TLabel;

    Label6: TLabel;

    Edit1: TEdit;

    Label7: TLabel;

    Edit2: TEdit;

    Button1: TButton;

    Label8: TLabel;

    Button2: TButton;

    Label9: TLabel;

    procedure FormActivate(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form8: TForm8;

implementation

{$R *.dfm}

procedure TForm8.FormActivate(Sender: TObject);

begin

randomize;

Label2.Caption := IntToStr(2001 + random(999));

Label4.Caption := datetostr(date);

end;

procedure TForm8.Button1Click(Sender: TObject);

begin

DataModule2.zakaz.Insert;

DataModule2.zakaz.Fields[1].AsInteger := strtoint(label2.Caption);

DataModule2.zakaz.Fields[2].AsDateTime := date;

DataModule2.zakaz.Fields[3].AsString := dbgrid1.Fields[1].AsString;

DataModule2.zakaz.Fields[4].AsInteger := dbgrid1.Fields[0].Asinteger;

DataModule2.zakaz.Fields[5].AsInteger := strtoint(edit1.text);

DataModule2.zakaz.Fields[6].AsString := edit2.text;

DataModule2.zakaz.post;

Close;

edit1.Text := '';

edit2.Text := '';

end;

procedure TForm8.Button2Click(Sender: TObject);

begin

Label9.Caption := floattostr(strtoint(edit1.text)  *

(DataModule2.vyzlu.Fields[4].AsInteger + (DataModule2.vyzlu.Fields[4].AsInteger * 0.2))) + ' грн.';;

end;

end.

 

  1. Модуль – Unit9.pas.

unit Unit9;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;

Информация о работе Створенння бази даних в делфі