Автоматизация продажи и учета лекарственных средств

В таблице 4 поля имеют тип:

Номер накладной (N) числовой тип, Код предприятия (N) имеет числовой тип, Код лекарства (N) имеет числовой тип, Код поступления (N) имеет числовой тип, Цена за ед. лекарства (N) имеет числовой тип, Кол-во лекарства (N) имеет числовой тип.

Поле Код поступления является ключевым(*).

Таблица 5 Продажа:

="0" align="center">

Номер

Название полей

Тип поля

Ключ

1

Код лекарства

N

 

2

Номер чека

N

*

3

Дата продажи

D

 

4

Цена за ед. продукта

N

 

5

Кол-во проданных лекарств

N

 

В таблице 5 поля имеют тип:

Код лекарства (N) имеет числовой тип, Номер чека (N) имеет числовой тип, Дата продажи (D) дата, Цена за ед. продукта (N) имеет числовой тип, Кол-во проданных лекарств (N) числовой тип.

Поле Номер чека является ключевым(*).

Связи в базе организованны по соотношению один ко многим.

Для установления связей между таблицами открывали дочернюю таблицу

И выбирали в спадающем списке Table properties пункт ReferentialIntegrity.

Связь таблицы Предприятие с таблицей Накладная.

Связь таблицы Лекарства с таблицей Продажа.

Связь таблицы Лекарства с таблицей Поступление.

По такому же принципу сделана связи с таблицей Накладная Поступление.

3.3 Организация пользовательского интерфейса

Интерфейс программы “Лекарственные средства” представлен на первой форме. Для удобства работы с базой при наведении курсора на объект появляются подсказки в статусной строке. Также присутствуют кнопки, для управления базой данных. В первой форме предусмотрен поиск позволяющий искать нужную запись.

Процедуры кнопок формы1:

Кнопка добавление:

procedure TForm1.Button1Click(Sender: TObject);

begin

If table1.State = dsBrowse then

table1.insert;

end;

Кнопка Изменения:

procedure TForm1.Button2Click(Sender: TObject);

begin

If table1.State = dsBrowse then

table1.edit;

end;

Кнопка Удаления:

procedure TForm1.Button3Click(Sender: TObject);

begin

If table1.State = dsBrowse then

If Messagedlg('',mtconfirmation,[mbYes,mbNo],0)=mrYes then

table1.delete;

end;

Процедура на кнопку поиск:

procedure TForm1.Table1FilterRecord(DataSet: TDataSet;

var Accept: Boolean);

begin

Accept:=Dataset['Name_lek'] = Edit1.text;

end;

procedure TForm1.CheckBox1Click(Sender: TObject);

begin

Table1.Filtered:=CheckBox1.Checked;

Table1.Filtered:=true;

end;

Форма 2 на которой находятся таблицы Предприятие и Накладная.

Процедуры кнопок Формы 2:

Процедура кнопки перехода на Форму1:

procedure TForm2.BitBtn1Click(Sender: TObject);

begin

Form1.show;

Form2.hide;

end;

Процедура кнопки перехода на Форму3:

procedure TForm2.BitBtn2Click(Sender: TObject);

begin

Form3.show;

Form2.hide;

end;

Процедура соединения таблиц двух таблиц, дочерняя таблица Накладная с родительской таблицей Предприятие :

procedure TForm2.OnActivate(Sender: TObject);

begin

DBGrid2.Columns.Items[1].PickList.Clear;

with Table1 do begin

first;

While not eof do Begin

DBGrid2.columns.Items[1].Picklist.add(FieldByName('Kod_pred').value);

next;

end;

end;

А также на форме присутствуют кнопки управления базой данных, как для таблицы Предприятие так и для таблицы Накладная:

кнопки добавления ,изменения, удаления, сохранения, отмены.

Процедура кнопки Запомнить:

procedure TForm2.Button4Click(Sender: TObject);

begin

If table1.State in [dsInsert,dsEdit]then

table1.post;

end;

Процедура кнопки Отменить:

procedure TForm2.Button9Click(Sender: TObject);

begin

If table1.State in [dsInsert,dsEdit]then

table1.Cancel;

end;

Процедура кнопки Добавить:

procedure TForm2.Button1Click(Sender: TObject);

begin

If table1.State = dsBrowse then

table1.insert;

end;

Процедура кнопки Изменить:

procedure TForm2.Button2Click(Sender: TObject);

begin

If table1.State = dsBrowse then

table1.edit;

end;

Процедура кнопки Удалить:

procedure TForm2.Button3Click(Sender: TObject);

begin

If table1.State = dsBrowse then

If Messagedlg('',mtconfirmation,[mbYes,mbNo],0)=mrYes then

table1.delete;

end;

Форма 3 с таблицами Поступление и Продажа.

На форме 3 находятся таблицы Продажа и Поступление. В этих таблицах фиксируется сколько лекарственных средств поступило на склад и по какой цене. Также фиксируется Код предприятия с которым установлены торговое соглашение, номер накладной где указан товар и в каком количестве. В таблице Продажа также фиксируются цена на лекарственные средства но при этом учитывается транспортировка и по этим параметрам устанавливается продажная цена.

Процедуры управляющих кнопок:

Страница:  1  2  3  4  5  6  7 


Другие рефераты на тему «Программирование, компьютеры и кибернетика»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы