Создать базу данных в СУБД ACCESS

Автор: Пользователь скрыл имя, 26 Февраля 2013 в 06:36, курсовая работа

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

В настоящее время среди разработчиков базы данных (БД) большой популярностью пользуется реляционная СУБД ACCESS, входящая в состав пакета Microsoft Office 2003. Дружественный интерфейс и простота настройки, эффективные средства создания таблиц, форм, запросов, интеграция с другими приложениями пакета, средства организации работы с базами данных и защита информации - вот далеко не полный перечень достоинств этого приложения.

Содержание

Введение………………………………………………………………………….2
1. Инфологическая модель………………………………………………………4
1.2 Информационные объекты и атрибуты…………………………………….4
1.3Требование к функциональным характеристикам………………………….4
2.Создание проекта Delphi……………………………………………………….8
2.1Описание компонентов для нахождения графических компонентов……...8
3. Организация доступа к базе данных из Delphi………………………………9
4 Разработка интерфейса ввода справочной информации……………………13
5 Создание отчета………………………………………………………………..16
Заключение…………………………………………………………………….…23
Список использованной литературы…………………………………………...24
Приложение 1. Программный код и формы…………………………………...25
Приложение 2. Программный код для отображения оперативной информации «Чеки» …………………………………………………………………………...27
Приложение 2. Программный код для отображения оперативной информации «Покупки»………………….……………………………………………….……30
Руководство пользователя……………………………

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

курсач ЧВМdocx.docx

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

 

 

Рисунок 8 – отображение оперативной информации «Чеки»

 

 


Рисунок 9 –таблица «Покупки»

 

Теперь необходимо организовать подстановку  для поля код кассира, чтобы пользователь видел ФИО кассиров из справочника. Для этого сначала сделайте поле код кассира невидимым (Visible -> False). Затем добавьте новое поле Object Inspector – tbСheck – New field, появившееся окно на рисунке 10.


 

 

 

 

 

 

 

 

Рисунок 10 – подстановка полей

 

5. Создание  отчета 

 

Отчет — это печатный документ, содержащий записи БД. В Delphi для создания отчетов служит генератор отчетов QuickReport, содержащий обширный набор компонентов. Компоненты, предназначенные для создания отчетов, находятся на закладке QReport палитры компонентов. 
Главным элементом отчета является компонент-отчет QuickRep, представляющий собой   основу,    на   которой   размещаются   другие   компоненты.   Компонент QuickRep обычно размещается на отдельной форме, предназначенной для создания отчета.

 

  1. Открыть приложение «Чеки».
  2. Добавить на форму кнопку «Создание отчета».
  3. Создать новую форму «Отчет», которая будет вызываться нажатием на кнопку «Создание отчета».
  4. На форму установить компоненту QuickRep с закладки QReport. Выделить этот компонент и в объектном инспекторе включить параметры HasTitle и HasDetail свойства Bands.
  5. Расположим компоненты в секциях QuickRep1, которые будут отображать нужную информацию отчета. На закладке QReport палитры компонентов доступны следующие компоненты, которые можно расположить в этих разделах:
    • QRLabel – надпись. Этот компонент похож на стандартный компонент TLabel и просто отображает нужные данные.
    • QRDBText – данные. Этот компонент тоже похож на TLabel, только он предназначен для отображения значения какого либо поля из базы данных.
    • QRSysData – системная информация. Это опять копия TLabel только с возможностью отображать системную информацию – дату, время, номер страницы, номер строки в таблицы, общее количество страниц и т.д.
  6. Увеличить область заголовка Title. В верхний угол поместите один компонент QRSysData. Выделить его и в свойстве Data выбрать значение qrsDateTime. Теперь этот компонент будет отображать в правом, верхнем углу дату распечатки документа.
  7. В центре области Tittle установить компонент QRLabel, увеличь шрифт в свойстве Font и написать в свойстве Caption текст «Отчет».
  8. Расположить в области Tittle компоненты QRLabel и дать им заголовки: ФИО кассира.
  9. Перейти к области Detail. Под заголовками поставить пять компонентов QRDBText. Установить в свойстве DataSet компонентов QRDBText набор данных mdKassirDB.tbChek, а в свойстве DataField для QRDBText 
    1 указать FIO. У всех остальных компонентов QRDBText указать соответствующие имена полей.

10. Перейти в главный модуль  и по нажатию кнопки “Создание отчета” написать следующий код.

procedure TfmChek.SpeedButton1Click(Sender: TObject);

begin

fmOtc.QuickRep1.Preview;

end;

11. Выделить компонент QuickRep1 и в свойстве DataSet указать таблицу mdKassirDb.tbKassir.

  1. Если сделать это, то компонент QuickRep1 автоматически будет перебирать все записи из этой таблицы и использовать их в компонентах, которые стоят в  блоке DetailBand1.

13. Установить на форму отчета  компонент – QRSubDetail с закладки QReport. Этот компонент предназначен для перебора данных относящихся к подчиненным таблицам.

14. Установить следующие свойства: DataSet – mdKassirDB.tbPokupki, чтобы связать блок с таблицей mdKassirDB.tbChek.

  1. В свойстве Master нужно указать главный компонент с основными данными. Выбрать в этом свойстве QuickRep1.
  2. Расположить на компоненте QRSubDetail компоненты QRDBText в свойстве указав, к каким полям подчиненной таблицы они обращаются.

17. После этого в отчете появятся все записи таблицы:

 

Рисунок 11- отчет «Товары, проданные каждым кассиром»

 

 


 

 

 

 

 

 

 

 

 

 

Рисунок 12 – отчет «Весь товар»

 

Заключение

 

При выполнении курсового проекта  были изучены разработки простейшей базы данных, используя приемы работы с Microsoft Access в среде программирования Delphi.

В курсовом проекте были разработаны:

- база данных Accses;

- проект в Delphi;

Ознакомлены с компонентами: TMainMenu, TSpeccButton, TADOConnection, TADOTable, DataModule.

Разработанная в данном курсовом проекте  база данных для решения задач  кассира в продуктовом магазине,  позволяет автоматизировать весь документооборот, что позволяет разгрузить отчетный документооборот, и сократить ошибки в документации. При появлении  новых производственных задач разработчик  может в кратчайшие сроки реализовать  их в базе данных, путем добавления строк, столбцов и целых таблиц.

    Разработанная программа, работающая с  базой данных, решает все установленные перед ней задачи.

 

Список  использованных источников

 

1. Delphi 2007 на примерах (+ CD-ROM): Владимир Шупрута — Санкт Петербург, БХВ-Петербург, 2009г.- 528 с.

2. Delphi 7. Основы программирования. Решение типовых задач. Самоучитель: Л. М. Климова — Москва, КУДИЦ-Образ, 2006 г.- 480 с.

3. Delphi в задачах и примерах (+ CD-ROM): Никита Культин — Москва, БХВ-Петербург, 2008 г.- 288 с.

4. Delphi. Профессиональное программирование: Дмитрий Осипов — Санкт-Петербург, Символ-Плюс, 2006 г.- 1056 с.

5. Turbo Delphi для новичков и не только: С. А. Любавин — Москва, НТ Пресс, 2008 г.- 320 с.

6.Основы  программирования в интегрированной  среде DELPHI: А. Желонкин — Санкт-Петербург, Бином. Лаборатория знаний, 2004 г.- 240 с.

7.Основы  программирования в интегрированной  среде Delphi. Практикум: А. Желонкин — Санкт-Петербург, Бином. Лаборатория знаний, 2006 г.- 240 с.

8. Приемы программирования в Delphi на основе VCL (+ CD-ROM): А. Я. Архангельский — Санкт-Петербург, Бином-Пресс, 2009 г.- 944 с.

9.Программирование  в Turbo Pascal. Переход к Delphi (+ CD-ROM): Ю. А. Шпак — Санкт-Петербург, МК-Пресс, 2006 г.- 416 с.

10. Программируем в Turbo Delphi: С. А. Любавин — Москва, НТ Пресс, 2008 г.- 320 с.

11. Разработка приложений Microsoft Office 2007 в Delphi: Юрий Магда — Москва, БХВ-Петербург, 2009 г.- 160 с.

12. Самоучитель Delphi 7 Studio: Вячеслав Понамарев — Санкт-Петербург, БХВ-Петербург, 2003 г.- 504 с.

13. Сайт Wikipedia.org.

 

 

 

Приложение 1. Программный код главной  формы 

 

unit frmMain;

interface

uses

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

  Dialogs, Menus, StdCtrls;

type

  TfmMain = class(TForm)

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N7: TMenuItem;

    procedure N1Click(Sender: TObject);

    procedure N3Click(Sender: TObject);

    procedure N5Click(Sender: TObject);

    procedure N4Click(Sender: TObject);

    procedure N7Click(Sender: TObject);

    procedure N6Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  fmMain: TfmMain;

 

implementation

  Uses frmKassir, frmVid, frmEd, frmTov, frmPokupki, frmChek, frmOtc,

  ModKassirDB;

{$R *.dfm}

procedure TfmMain.N1Click(Sender: TObject);

begin

TfmKassir.Create(Application);

end;

procedure TfmMain.N3Click(Sender: TObject);

begin

TfmVid.Create(Application);

end;

procedure TfmMain.N5Click(Sender: TObject);

begin

TfmEd.Create(Application);

end;

procedure TfmMain.N4Click(Sender: TObject);

begin

TfmTov.Create(Application);

end;

procedure TfmMain.N7Click(Sender: TObject);

begin

  TfmPokupki.Create(Application);

end;

procedure TfmMain.N6Click(Sender: TObject);

begin

TfmChek.Create(Application);

end;

end.

 

Приложение 2. Программный код формы для  оперативной информации «Чеки»

unit frmChek;

interface

uses

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

Dialogs, StdCtrls, DB, Grids, DBGrids, jpeg, ExtCtrls, Buttons;

type

  TfmChek = class(TForm)

  DBGrid1: TDBGrid;

  DataSource1: TDataSource;

  btNewRecord: TButton;

  btDelRecord: TButton;

  btClose: TButton;

  Label1: TLabel;

  SpeedButton1: TSpeedButton;

  SpeedButton2: TSpeedButton;

procedure btNewRecordClick(Sender: TObject);

procedure btDelRecordClick(Sender: TObject);

procedure btCloseClick(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

procedure SpeedButton1Click(Sender: TObject);

procedure SpeedButton2Click(Sender: TObject);

private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  fmChek: TfmChek;

implementation

uses frmEd, frmKassir, frmMain, frmPokupki, frmTov, frmVid, ModKassirDB,

  frmOtc, frmOtc2;

{$R *.dfm}

procedure TfmChek.btNewRecordClick(Sender: TObject);

begin

mdKassirDB.tbChek.Append;

DBGrid1.SetFocus;

end;

procedure TfmChek.btDelRecordClick(Sender: TObject);

begin

if dbgrid1.DataSource.DataSet.RecordCount<>0 then begin

mdKassirDB.tbChek.Delete;

mdKassirDB.tbChek.Refresh;

end;

end;

procedure TfmChek.btCloseClick(Sender: TObject);

begin

Close;

end;

procedure TfmChek.FormActivate(Sender: TObject);

begin

DBGrid1.SetFocus;

end;

procedure TfmChek.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Action:=caFree;

end;

procedure TfmChek.SpeedButton1Click(Sender: TObject);

begin

fmOtc.QuickRep1.Preview;

end;

procedure TfmChek.SpeedButton2Click(Sender: TObject);

begin

fmOtc2.QuickRep1.Preview;

end;

end.

 

 

Приложение 3. Программный код формы для оперативной информации «Покупки»

unit frmPokupki;

interface

uses

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

  Dialogs, StdCtrls, DB, Grids, DBGrids;

type

  TfmPokupki = class(TForm)

    DataSource1: TDataSource;

    btNewRecord: TButton;

    btDelRecord: TButton;

    btClose: TButton;

    DBGrid1: TDBGrid;

    procedure btNewRecordClick(Sender: TObject);

    procedure btDelRecordClick(Sender: TObject);

    procedure btCloseClick(Sender: TObject);

    procedure FormActivate(Sender: TObject);

    procedure FormClose(Sender: TObject; var Action: TCloseAction);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  fmPokupki: TfmPokupki;

implementation

uses frmEd, frmKassir, frmMain, frmTov, frmVid, ModKassirDB;

{$R *.dfm}

procedure TfmPokupki.btNewRecordClick(Sender: TObject);

begin

mdKassirDB.tbPokupki.Append;

DBGrid1.SetFocus;

end;

procedure TfmPokupki.btDelRecordClick(Sender: TObject);

begin

if dbgrid1.DataSource.DataSet.RecordCount<>0 then begin

mdKassirDB.tbPokupki.Delete;

mdKassirDB.tbPokupki.Refresh;

end;

end;

procedure TfmPokupki.btCloseClick(Sender: TObject);

begin

Close;

end;

procedure TfmPokupki.FormActivate(Sender: TObject);

begin

DBGrid1.SetFocus;

end;

procedure TfmPokupki.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Action:=caFree;

end;

end.

 

Руководство пользователя

 

После того, как Вы запустите программу, перед вами появится главное меню приложения, содержащая пункты:

  • «Кассиры»,
  • «Виды товаров»,
  • «Товары»,
  • «Единицы измерения»,
  • «Чеки»,
  • «Покупки»

Нажав на какой либо пункт, вы попадете на новую форму, которая позволит Вам модифицировать таблицу соотвествующих сущностей при помощи пользовательского интерфейса.

Также рядом расположены 3 кнопки

Новая запись – позволяет добавить новую  запись в таблицу.

Удалить запись – позволяет удалить последнюю  запись.

Закрыть – закрыть окно с таблицей.

Вывод отчёта происходит также по нажатию  кнопки «Создание отчета», находящаяся в пункте «Чеки».

 

Информация о работе Создать базу данных в СУБД ACCESS