Автоматизация работы складских помещений

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 30.11.2009
Размер файла 389,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

37

Волжский университет имени Татищева

Факультет информатики и телекоммуникаций

Кафедра Информации и систем управления

КУРСОВАЯ РАБОТА

по дисциплине

Базы данных и знаний

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

Студент: Валиев Х.Х.

Группа: ИТ-311

Преподаватель: Трубачева С.И.

Г.Тольятти

2002 г.

ЗАДАНИЕ

1. Изучить объект, его взаимосвязи.

2. Описать основные функции.

3. Создать таблицы.

4. Спроектировать диаграммы с помощью IDEF0, IDEF1

5. Спроектировать базу данных с помощью СУБД DELPHI.

6. Создать приложение, учитывая ввод, сохранение, удаление ненужных данных, редактирование имеющихся данных, позволяющие осуществить поиск.

СОДЕРЖАНИЕ

1. Введение

2. Теоретическая часть

2.1 Постановка задачи

2.2 Описание предметной области

2.3 Построение SADT модели

3 Создание приложения в Delphi

3.1 Конфигурация системы с помощью утилиты BDE Administrtor

3.2 Создание таблиц базы данных с помощью утилиты Database Desktop

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

3.4 Проектирование форм для базы данных

4. Заключение

5. Список используемой литературы

6. Приложения

ВВЕДЕНИЕ

В настоящее время Россия переживает не лучшие свои времена: нестабильная экономика, инфляция и безработица - все это говорит о кризисе в нашей стране.

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

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

Но что может сделать компьютер без соответствующего программного обеспечения - абсолютно ничего. Вот для этого программисты и пишут свои программы, заставляя «железо» приносить благо.

2.ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

2.1 Постановка задачи

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

2.2 Описание предметной области

Таблица регистрации клиентов:

Код клиента;

Фамилия Имя Отчество;

Домашний адрес;

Контактный телефон.

Таблица регистрации поставщиков:

Код поставщика;

Наименование поставщика;

Адрес поставщика;

Телефон поставщика.

Таблица накладная:

Номер накладной;

Код товара;

Код постовщика ;

Количество товара;

Дата покупки.

Таблица чеки:

Номер чека;

Код товара;

Код клиента;

Дата продажи.

Таблица товар:

Код товара;

Наименование товара;

Дата изготовления;

Цена.

2.3 Построение SADT модели

Метод SADT разработан Дугласом Россом в 1973 г. и успешно используется в военных, промышленных и коммерческих организациях для решения широкого круга задач, таких как, долгосрочное и стратегическое планирование, автоматизированное производство и проектирование, разработка ПО для оборонных систем, управление финансами и материально - техническим снабжением и т.д. Метод SADT поддерживается министерством обороны США, которое было инициатором разработки стандарта IDEF0- подмножества SADT. IDEF0 был утвержден в качестве федерального стандарта США.

Метод SADT представляет собой совокупность правил и процедур, предназначенных для построения функциональной модели объекта какой - либо предметной области. Функциональная модель SADT отображает функциональную структуру объекта, т.е. производимые им действия и связи между этими действиями.

Результатом применения метода SADT является модель, которая состоит из диаграмм, фрагментов текстов и глоссария, имеющих ссылки друг на друга. Диаграммы - основные компоненты модели, все функции организации и интерфейсы на них представлены как блоки и дуги соответственно. Место соединения дуги с блоком определяет тип интерфейса.

Рис.2.1. Функциональный блок и интерфейсные дуги
Управляющая информация входит в блок сверху, в то время как входная информация, которая подвергается обработке, показана с левой стороны блока, а результат (выход) показаны с правой стороны. Механизм (человек или автоматизированная система), который осуществляет операцию, представляется дугой, входящей в блок снизу (рис.2.1.). Одной из наиболее важных особенностей метода SADT является постепенной введение все больших уровней детализации по мере создания диаграмм, отображающих модель. Каждый компонент модели может быть декомпозирован на другой диаграмме. В данном курсовом проекте разработана SADT диаграмма до 3-х уровней. Каждая диаграмма иллюстрирует «внутреннее строение» блока на родительской диаграмме (Приложение 1).
IDEF1 применяется для построения информационной модели, которая представляет собой структуру информации, необходимой для поддержки функций производственной системы или среды. IDEF1 методология создания компаниями Hughes aircraft, DACOM. Она опирается как на собственные разработки, так и на реляционную теорию Т. Кодда и диаграммы “сущности-отношения “ П. Ченна. IDEF1X- методология сематического моделирования данных. Основными конструкциями IDEF1X-модели являются: Предметы, к которым относятся данные, т.е. люди, места, идеи, события и т.д. Они изображаются блоками. Отношения между этими предметами. Изображаются соединяющими блоки линиями. Характеристики этих предметов, изображаемые именами атрибутов внутри блоков.
Основные конструкции показаны на рис. 2.2.
Рис. 2.2. Основные понятия IDEF1X
Сущность представляет собой множество реальных или абстрактных предметов (людей, событий, состояний и т.д.), обладающих общими атрибутами или характеристиками. Сущность является независимой от идентификатора или просто независимой, если каждый экземпляр сущности может быть однозначно идентифицирован без определения его отношения с другими сущностями. Сущность называется зависимой от идентификатора, если однозначная идентификация экземпляра сущности зависит от его отношения к другой сущности.
Сущность изображается блоком. Если сущность зависима от идентификатора, то углы блока закругляются. Каждой сущности присваивается уникальное имя и номер, разделяемый косой чертой << / >> и помещаемой над блоком. Номер сущности - положительное целое число. Именем сущности является грамматический оборот существительного, описывающий представляемое сущностью множество предметов. Существительное должно употребляться в единственном числе.

Специфическое отношение связи, называемое также отношением родитель-потомок или отношением зависимости существования, - это ассоциация или связь между сущностями, при которой каждый экземпляр одной сущности, называемой родительской сущностью, ассоциирован с произвольным (в том числе нулевым) количеством экземпляров второй сущности, называемой сущностью-потомком. Если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, то такое отношение называется идентифицирующим отношением. Если каждый экземпляр сущности-потомка может быть однозначно идентифицирован без знания связанного с ним экземпляра сущности-родителя, то такое отношение называется неидентифицирующим отношением.

Атрибут представляет тип характеристик или свойств, ассоциированных с множеством реальных объектов (людей, объектов, событий и т.д.). Экземпляр атрибута - это определенная характеристика отдельного элемента множества. В IDEF1X-модели атрибуты ассоциируются со специфическими сущностями. Таким образом, экземпляр сущности должен обладать единственным определенным значением для ассоциированного атрибута.

Сущность должна обладать атрибутом или комбинацией атрибутов, чьи значения однозначно определяют каждый экземпляр сущности. Эти атрибуты определяют первичный ключ сущности. Внешний ключ изображается с помощью помещения внутри блока сущности имен наследуемых атрибутов, после которых следуют буквы (FK). Если наследуемый атрибут принадлежит первичному ключу сущности-потомка, то он помещается выше горизонтальной линии, а сущность изображается с закругленными углами для указания на то, что идентификатор (первичный ключ) сущности зависит от атрибута, наследуемого через отношение. Если наследуемый атрибут не принадлежит первичному ключу сущности-потомка, то он изображается ниже линии. Наследуемые атрибуты могут быть также частью альтернативного ключа. (Приложение 2.1 и 2.2).

3. СОЗДАНИЕ ПРИЛОЖЕНИЯ В DELPHI

3.1 Конфигурация системы с помощью утилиты BDE ADMINISTRATOR

Инструментальные средства представляют собой программы, которые предназначены для обслуживания БД, а также для выполнения вспомогательных действий при разработке приложений, например, для создания таблиц и отладки SQL-запросов. Совместно с Delphi поставляется большое число инструментальных программ, которые применимы для работы как с локальными, так и с удаленными БД. Программа BDE Administrator представляет собой администратор процессора баз данных BDE. Для вызова Администратора BDE запускается файл bdeadmin.exe, находящийся в одном каталоге с процессором баз данных. Внесенные изменения сохраняются по окончании работы с Администратором в файле конфигурации idapi32.cfg . Программу также можно вызвать через главное меню Windows выбором пункта Program/Borland Delphi 6/BDE Administrator. Администратор BDE позволяет настраивать параметры БД и параметры операционной системы. Основные из них перечисляются ниже:

q параметры псевдонима БД:

· название;

· тип;

· путь;

q параметры драйвера:

· тип;

· язык;

q системные установки:

· установки по умолчанию;

· форматы даты, времени и числовые форматы.

Для настройки требуемого параметра в левой части окна Администратора BDE выбирается нужный объект, после чего в правой части окна открывается доступ к списку параметров этого объекта. При редактировании выбранного в панели инструментов объекта становятся доступными кнопки отмены сделанных изменений и кнопки подтверждения изменений с изображением красной и синей стрелок, соответственно. Отменить или утвердить изменения также можно командами Cancel и Apply главного или контекстного меню. Слева от объектов, имеющих неутвержденные изменения, отображается зеленый треугольник.

Добавить новый объект можно, выбрав в окне Администратора пункт меню Object/New. Удаление выделенного объекта выполняется командой Object/Delete главного или контекстного меню или нажатием кнопки Delete панели инструментов (с изображением синего косого креста).

Текущее состояние объекта, выбранного в левой части окна, отображает значок, который появляется слева от имени объекта. Варианты значков и их связь с состоянием объекта перечислены ниже.

q Зеленый треугольник -- объект находится в режиме редактирования.

q Зеленый треугольник с красными лучами -- вновь созданный и еще не сохраненный в конфигурации объект, для которого выполняется редактирование.

q Красный треугольник -- объект находится в режиме редактирования, некоторые изменения являются некорректными и не могут быть сохранены.

q Красный треугольник с красными лучами -- созданный и еще не сохраненный в конфигурации объект находится в режиме редактирования, некоторые данные являются некорректными и не могут быть сохранены.

q Ярко-зеленый квадрат -- объект открыт.

Для работы с приложением «складские помещения» следует выбрать в Object/New пункт STANDART, а в Definition в строке Path прописать путь «C:\111» (естественно этот каталог нужно сначала создать). Перед нажатием красной стрелки следует переименовать имя базы со STANDART на КУРС.

3.2 Создание таблиц базы данных с помощью утилиты DATABASE DESKTOP

Программа Database Desktop предназначена для создания и редактирования таблиц, визуальных запросов и SQL-запросов, а также для выполнения действий с псевдонимами БД. Эту программу можно вызвать из среды Delphi по команде Tools/Database Desktop или путем запуска файла dbd32.exe находящегося в одном каталоге с файлами программы Database Desktop. По умолчанию этот каталог называется Database Desktop. Программу также можно вызвать через главное меню Windows, выбрав Программы/Borland Delphi 6/Database Desktop.

Приложение «Складские помещения» имеет 5 таблиц, которые выглядят следующим образом:

Таблица Klient.DB

Имя поля

Тип поля

Длина

Перв. ключ

Kod_tovara

Number

*

Name_klienta

Alpha

20

Adres_klienta

Alpha

30

Telefon_klienta

Number

Таблица tovar.DB

Имя поля

Тип поля

Длина

Перв. ключ

Kod_tovara

Number

*

Name_tovara

Alpha

20

Data_izg

Data

Cena

Money

Таблица Post.DB

Имя поля

Тип поля

Длина

Перв. ключ

Kod_post

Number

*

Name_post

Alpha

20

Adres_post

Alpha

30

Telefon_post

Number

Таблица Chek.DB

Имя поля

Тип поля

Длина

Перв. ключ

N_cheka

Number

*

Kod_tovara

Number

Kod_klienta

Number

Data_prod

Date

Таблица Nakl.db

Имя поля

Тип поля

Длина

Перв. ключ

N_nakl

Number

*

Kod_tovara

Number

Kod_post

Number

Kol-vo_tovara

Number

Data_pokup

Date

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

На главной форме (рис.3.1.) представлены кнопки, открывающие требуемые пользователю окна. Например, при нажатии на кнопку «Работа с товаром» срабатывает процедура:

procedure TForm1.Button1Click(Sender: TObject);

begin

form2.show;

end;

Рис.3.1. Главное окно программы

Рис.3.2. Окно «Регистрация товара»

Здесь пользователю предоставляется вводить/удалять новый товар. Также организован поиск по названию товара и цене и удаление товара по дате изготовления.

Поиск выглядит так (при нажатии на кнопку «Поиск») :

procedure TForm2.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('Name_tovara',edit2.text,[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('cena',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

SQL-запрос организован следующим образом:

Для перехода на форму работы с поставщиками на главной форме нажмите на кнопку «Перейти в таблицу ПОСТАВЩИКИ» (рис 3.4.). В предоставленной Вам форме можно заполнить только реквизиты фирмы.

Рис.3.4. Окно регистрации ПОСТАВЩИКОВ.

В таблице поставщики поиск организован также, как и в остальных таблицах.

Рис.3.5. Таблица Накладная.

Здесь стоит выбрать какой номер накладной искать и нажать на кнопку «Поиск».

Процедура поиска выполнена с помощью компонента Radiogroup и выглядит так:

procedure TForm5.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('N_nakl',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('kol-vo_tovara',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

После продажи товара необходимо выписать чек . Как он выглядит показано на рис.3.6 .

Рис.3.6. Чек.

Здесь осуществляется поиск по номеру чека и Дате продажи, а также

Удаление старого чека.

Пример накладной

В данный список нельзя внести данные интерактивно. Можно только удалить уже проданные товары. Пример программы выглядит так:

SELECT Nakl."Kol-vo_tovara", Tovar.Cena, Tovar.Kod_tovara, Post.Kod_post,Nakl."Kol-vo_tovara" * Cena as stoimost

FROM "TOVAR.DB" Tovar

INNER JOIN "CHEK.DB" Chek

ON (Tovar.Kod_tovara = Chek.Kod_tovara)

INNER JOIN "Nakl.DB" Nakl

ON (Tovar.Kod_tovara = Nakl.Kod_tovara)

INNER JOIN "KLIENT.DB" Klient

ON (Klient.Kod_klienta = Chek.Kod_klienta)

INNER JOIN "POST.DB" Post

ON (Post.Kod_post = Nakl.Kod_post)

Для выхода из приложения используйте кнопку «ВЫХОД».

3.4 Компоненты, используемые при создании приложения

Для создания форм использовались следующие компоненты Borland Delphi 5.5:

DataSource - источник данных, связывал таблицу с сеткой.

Table - набор данных, основанный на таблице БД;

DBNavigator - навигационный интерфейс, для перемещения по полям;

Query - набор данных, основанных на SQL-запросе, требуется для организации вывода по указанным критериям;

Edit - текстовое окно, которое служило для поиска элементов таблицы;

RadioGroup - группировка радиоэлементов для организация поиска;

Button - кнопки управления формой;

DBGrid - сетка данных, для организации вывода результатов запросов;

ЗАКЛЮЧЕНИЕ

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

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

1. Калянов Г.Н. Case-средства. Структурный и системный анализ (автоматизация и применение). - М.: “ЛОРИ”, 1999. - 249 с., ил.

2. Гоффман В.Э., Хомоненко А.Д. - Работа с базами данных в Delphi 2-е издание - Мастер 2002г, 614 с.

3. Дейт К. Дж. Введение в системы баз данных: Пер. с англ. - 6-е изд. - К.: Диалектика, 1998. - 784с., ил.

ПРИЛОЖЕНИЕ 1

unit Unit1;

interface

uses

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

StdCtrls, QuickRpt, Qrctrls;

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Button5: TButton;

Button6: TButton;

Button7: TButton;

procedure Button7Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7;

{$R *.DFM}

procedure TForm1.Button7Click(Sender: TObject);

begin

CLOSE;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

form2.show;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

form3.show;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

form4.show;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

form5.show;

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

form6.show;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

form7.show;

end;

end.

unit Unit2;

interface

uses

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

Db, DBTables, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls;

type

TForm2 = class(TForm)

DataSource1: TDataSource;

Table1: TTable;

DBGrid1: TDBGrid;

Table1Kod_tovara: TFloatField;

Table1Name_tovara: TStringField;

Table1Data_izg: TDateField;

Table1Cena: TCurrencyField;

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Button3: TButton;

RadioGroup1: TRadioGroup;

Edit2: TEdit;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.DFM}

procedure TForm2.Button1Click(Sender: TObject);

begin

CLOSE;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

WITH TABLE1 DO BEGIN

FIRST;

WHILE locate('Data_izg',strtodate(edit1.text),[loCaseInsensitive])do

delete;

end;

end;

procedure TForm2.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('Name_tovara',edit2.text,[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('cena',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

end;

procedure TForm2.Button4Click(Sender: TObject);

begin

table1.Filtered:=false;

case RadioGroup1.ItemIndex of

0:pole:='Name_tovara';

1:pole:='cena';

end;

table1.Filtered:=true;

end.

unit Unit3;

interface

uses

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

Db, DBTables, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls;

type

TForm3 = class(TForm)

DataSource1: TDataSource;

Table1: TTable;

DBGrid1: TDBGrid;

Table1Kod_post: TFloatField;

Table1Name_post: TStringField;

Table1Adres_post: TStringField;

Table1Telefon_post: TFloatField;

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Button3: TButton;

RadioGroup1: TRadioGroup;

Edit2: TEdit;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

{$R *.DFM}

procedure TForm3.Button1Click(Sender: TObject);

begin

Close;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

WITH TABLE1 DO BEGIN

FIRST;

WHILE locate('Name_post',(edit1.text),[loCaseInsensitive])do

delete;

end;

end;

procedure TForm3.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('Name_post',edit2.text,[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('telefon_post',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

end;

end.

unit Unit4;

interface

uses

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

Db, Grids, DBGrids, DBTables, ExtCtrls, DBCtrls, StdCtrls;

type

TForm4 = class(TForm)

DataSource1: TDataSource;

Table1: TTable;

DBGrid1: TDBGrid;

Table1N_cheka: TFloatField;

Table1Kod_tovara: TFloatField;

Table1Kod_klienta: TFloatField;

Table1Data_prod: TDateField;

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Button3: TButton;

Edit2: TEdit;

RadioGroup1: TRadioGroup;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

{$R *.DFM}

procedure TForm4.Button1Click(Sender: TObject);

begin

Close;

end;

procedure TForm4.Button2Click(Sender: TObject);

begin

WITH TABLE1 DO BEGIN

FIRST;

WHILE locate('Data_prod',strtodate(edit1.text),[loCaseInsensitive])do

delete;

end;

end;

procedure TForm4.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('N_cheka',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('Data_prod',strtodate(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

end;

end.

unit Unit5;

interface

uses

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

Db, DBTables, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls;

type

TForm5 = class(TForm)

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

RadioGroup1: TRadioGroup;

Edit2: TEdit;

Button3: TButton;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

Table1: TTable;

Table1N_nakl: TFloatField;

Table1Kod_tovara: TFloatField;

Table1Kod_post: TFloatField;

Table1Kolvo_tovara: TFloatField;

Table1Data_pokup: TDateField;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

{$R *.DFM}

procedure TForm5.Button1Click(Sender: TObject);

begin

Close;

end;

procedure TForm5.Button2Click(Sender: TObject);

begin

WITH TABLE1 DO BEGIN

FIRST;

WHILE locate('Data_pokup',StrTodate(edit1.text),[loCaseInsensitive])do

delete;

end;

end;

procedure TForm5.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('N_nakl',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('kol-vo_tovara',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

end;

end.

unit Unit6;

interface

uses

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

Grids, DBGrids, Db, DBTables, ExtCtrls, DBCtrls, StdCtrls;

type

TForm6 = class(TForm)

DataSource1: TDataSource;

Table1: TTable;

DBGrid1: TDBGrid;

Table1Kod_klienta: TFloatField;

Table1Name_klienta: TStringField;

Table1Adres_klienta: TStringField;

Table1Telefon_klienta: TFloatField;

DBNavigator1: TDBNavigator;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Button3: TButton;

Edit2: TEdit;

RadioGroup1: TRadioGroup;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

{$R *.DFM}

procedure TForm6.Button1Click(Sender: TObject);

begin

Close;

end;

procedure TForm6.Button2Click(Sender: TObject);

begin

WITH TABLE1 DO BEGIN

FIRST;

WHILE locate('Name_klienta',(edit1.text),[loCaseInsensitive])do

delete;

end;

end;

procedure TForm6.Button3Click(Sender: TObject);

begin

if edit2.text<>'' then begin

case Radiogroup1.ItemIndex of

0:Table1.Locate('Name_klienta',edit2.text,[LoCaseInsensitive,Lopartialkey]);

1:Table1.Locate('telefon_klienta',strtoint(edit2.text),[LoCaseInsensitive,Lopartialkey]);

end;

end;

end;

end.

unit Unit7;

interface

uses

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

Grids, DBGrids, Db, DBTables, StdCtrls;

type

TForm7 = class(TForm)

Button1: TButton;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Query1: TQuery;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

implementation

{$R *.DFM}

procedure TForm7.Button1Click(Sender: TObject);

begin

CLOSE;

end;

end;

end.


Подобные документы

  • Разработка программы для фирм, занимающихся продажей и учетом лекарственных средств. Структурный анализ с помощью диаграмм SADT и диаграмм "сущность-связь". Создание приложения в Delphi и таблиц базы данных. Организация пользовательского интерфейса.

    курсовая работа [618,5 K], добавлен 30.11.2009

  • Концепция программной среды Delphi и её преимущества. Ключевые понятия языка С++. Построение информационной модели предметной области, описание полей таблиц базы данных, листинг программы. Создание меню, реализующего функции информационной системы.

    курсовая работа [1,1 M], добавлен 28.01.2016

  • Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Создание реляционной базы данных для закупки и реализации товаров. Оптовая база - крупная сеть складских и рабочих помещений. Требования к функциональным характеристикам. Структурная схема базы данных. Программная реализация системы, ее тестирование.

    курсовая работа [1,6 M], добавлен 08.07.2012

  • Разработка автоматизированной информационной системы для обеспечения учета образовательных учреждений в среде Delphi на языке программирования Pascal. Создание базы данных и интерфейса для работы с АИС. Сущности и атрибуты логической модели данных.

    курсовая работа [429,3 K], добавлен 15.05.2014

  • Создание базы данных с помощью программы MS EXCEL для контроля цен на материал на предприятии для изготовления деталей. Проектирование диаграмм, таблиц по расчету потребности в материалах на производственную программу и нормированию складских запасов.

    контрольная работа [56,3 K], добавлен 16.11.2011

  • Базы данных и системы управления ими. Разработка базы данных "Торговая организация", позволяющей вести учет имеющегося товара, покупателей и поставки товара. Проектирование таблиц, запросов и форм. Создание отчетов. Обеспечение доступа к информации.

    курсовая работа [1,2 M], добавлен 21.11.2014

  • Создание тестирующих и игровых программ. Степень сложности и художественного оформления интерфейса пользователя. Создание справочной системы. Корректное отображение символов. Создание системы управления базами данных в среде Delphi и таблиц базы данных.

    методичка [1,0 M], добавлен 24.10.2012

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

    курсовая работа [4,7 M], добавлен 29.11.2015

  • Разработка информационной и инфологической модели базы данных на тему "Командировка". Выбор модели данных и составление ее концептуальной схемы. Получение доступа к БД средствами Delphi, разработка пользовательского интерфейса. Реализация SQL-запросов.

    реферат [1,2 M], добавлен 16.06.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.