Автоматизированная информационная система "Материальные ресурсы организации"

Описание преимуществ автоматизированной информационной системы (АИС) "Материальные ресурсы организации". Особенности создания АИС и характеристика алгоритма программы. Программное обеспечение, необходимое для успешного функционирования программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 27.05.2014
Размер файла 1,8 M

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

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

Размещено на http://www.allbest.ru/

Государственное бюджетное профессиональное образовательное учреждение

«Курганский государственный колледж»

специальность 230701 «Прикладная информатика (по отраслям)»

Курсовой проект

по ПМ.02 Разработка, внедрения и адаптация программного обеспечения отраслевой направленности

Тема: Автоматизированная информационная система «Материальные ресурсы организации»

Разработчик:

студентка гр. ИД-346

Курочкина А.Ю.

Руководитель:

Ревняков Е.Н.

Курган 2013

Содержание

Введение

1. Описание алгоритма программы

1.1 Элементы формы

1.2 Входные выходные данные

1.3 Программное и аппаратное обеспечение программы

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

Заключение

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

Введение

В настоящее время любая организации имеет в своем распоряжении некоторые материальные ресурсы, как правило, разнородного происхождения. Для обеспечения сохранности этих ресурсов необходимо вести их учет и назначать ответственных. Решение этой задачи можно осуществить с помощью различных прикладных программ, таких как 1C:Предприятие, АВАРД и многих других. Но данные программы очень дорогостоящие, как в приобретении, так и в обслуживании. Требуют специального обучения и подготовки персонала.

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

Тема нашего курсового проекта - создание программы материальных ресурсов организации в среде «Delphi» с использованием возможности MySQL-сервера.

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

Автоматизированная Информационная Система позволяет:

- усилить контроль деятельности персонала;

- учитывать перечень ресурсов организации;

- уменьшить сроки обучения нового персонала;

- обеспечить оперативное получение информации руководством.

АИС автоматизирует хранение информации:

- о сотрудниках;

- о ресурсах;

- о распределении по кабинетам;

- о приходе ресурсов.

Задачей данного курсового проекта является создание программы «Материальных ресурсов организации» по визуальным компонентам интегрированной среды «Delphi». Программа должна выдавать справочную информацию о выбранном компоненте, который находится в базе данных. Реализовать систему поиска по сотруднику и тем ресурсам, которые закреплены за ним. Заполнять сведения о новых сотрудниках, а также ресурсах, поступивших в организацию. Для того чтобы воспользоваться поиском компонента по базе данных, необходимо в запросе выбрать порядковый номер и Ф.И.О. человека, и автоматически запрос выведет те ресурсы, которые закреплены за данным сотрудником. Информация появится в поле, находящимся в нижней части диалогового окна программы. Если сотрудник, не имеет никакого оборудования, то информации не окажется.

Программный комплекс «Материальные ресурсы организации» должен отвечать перечисленным выше требованиям и включать в себя следующие функции:

- создание записи;

- хранение записи;

- поиск по заданному критерию;

- возможность редактирования (изменения) записей;

- удаление записей из таблицы;

Вывод на экран:

- сведений о сотруднике;

- сведений о видах материальных ресурсов;

- сведений о распределении ресурсов между сотрудниками;

- сведений о ресурсе по выбору сотрудника;

Для решения поставленной задачи использовался метод объектно-ориентированного программирования. В основе объектно-ориентированного языка программирования [1] лежат два основных понятия: объект и класс. Объектно-ориентированное программирование - это стиль кодирования, который позволяет разработчику группировать схожие задачи в классы. Таким образом, код соответствует принципу DRY (don't repeat yourself - не повторяй самого себя) и становится лёгким для сопровождения.

Так же использовался язык высокого уровня «Delphi»[2]. В основе среды Delphi лежит одноименный язык программирования- Delphi, ранее известный как Object Pascal. При разработке программы среда Delphi выполняет свою часть работы - создает пользовательский интерфейс согласно вашему дизайну, а вы выполняете свою часть - пишите обработчики событий на языке Delphi.

Язык SQL-запросов [3], SQL переводят на русский как «Структурированный Язык Запросов». С помощью SQL-запросов можно создавать и работать с реляционными базами данных.

Визуальные компоненты, расположенные на формах, протокол TCP\IP для обмена данными использовали клиент-серверную структуру. Клиент-сервер (англ. Client-server) - сетевая архитектура, в которой устройства являются либо клиентами, либо серверами. Клиентом (front end) является запрашивающая машина (обычно ПК), сервером (back end) - машина, которая отвечает на запрос. Оба термина (клиент и сервер) могут применяться, как к физическим устройствам, так и к программному обеспечению.

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

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

Установили и настроили PHP (англ. PHP: Hypertext Preprocessor -- «PHP: Препроцессор Гипертекста») - скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается большинством представителей хостинга.

Входит в LAMP -- «стандартный» набор для создания веб-сайтов (Linux, Apache, MySQL, PHP).

1. Описание алгоритма программы

автоматизированная информационная система

Для обеспечения работы нашей программы и базы данных на SQL-сервере, мы установили все требующиеся компоненты. Создали базу в MySQL, а также таблицы, прописали свойства полей и количество вводимых символов. После чего соединили эту базу с компонентом программы Delphi. В Delphi разработали формы для нашего приложения.

Система состоит из 8 форм, которые взаимосвязаны между собой. Так же есть связь с SQL-сервером при помощи DataSource, AdoQuery и AdoConnection.

DataSource - используется для связи данных с элементом вывода. Например: DbGrid. AdoQuery - компонент набора данных, выполняющий запросы SQL.

AdoConnection - соединение компонентов с базами данных. Используем свойство ConnectoinString, для этого нажимаем на компонент «…», далее выбираем UseConnectionString и нажимаем на кнопку Build (Рис.1)

Рисунок 1. Соединение компонентов с БД

Далее выбираем «Использовать строку подключения» и нажимаем «Сборка» (Рис. 2)

Рисунок 2. Выбор строки подключения

Затем выбираем «Источник данных компьютера» и нажимаем «Создать». Тип источника данных выбираем пользовательский и нажимаем на кнопку «Далее». Выбираем драйвер MySQL ODBC 5.2 UnicodeDriver и нажимаем «Готово». Далее прописываем свое DataSourceName, прописываем TCP\IP server:192.168.56.101 задаем имя пользователя и пароль, выбираем свою базу в компоненте DataBase, проверяем Test и нажимаем OK. Выбираем свой созданный источник данных и нажимаем два раза Ok . Ставим галочку «Разрешить сохранение пароля» и проверяем подключение, если все выполнено успешно, нажимаем два раза ОК. Теперь мы подключили программу Delphi с SQL-сервером базой данных (Рис. 3)

Рисунок 3. Подключение программы Delphi с SQL-сервером

Для того чтобы каждый раз не вводить данные пользователя и его пароль, мы используем свойство LoginPrompt, где выбираем компонент False.

Мы используем один ADOConnection для того чтобы программу легко можно было перенастраивать, а также для видимости его на всех формах “Uses”. Для этого мы прописываем в каждой форме свойство Implementation uses unit1.

1.1 Элементы формы

Для того чтобы разработать автоматизированную систему, необходимо создать несколько форм, каждая из которых будет выполнять свою функцию, например:

1 Форма - это меню всей системы. На этой форме мы можем перейти на другие формы для продолжения работы. Она содержит 9 элементов Button, предназначенных для перехода на другие формы (Рис. 4)

Рисунок 4. Меню системы

2 Форма - это структура баз данных, здесь мы можем посмотреть, какие есть таблицы, из чего они состоят (какие там столбцы и колонки), типы столбцов. Она содержит 3 элемента DbGrid, которые помогают выводить информацию о таблицах и 3 элемента Button, с помощью которых мы можем перейти на предыдущую форму, либо закрыть всю систему (Рис. 5)

Рисунок 5. Структура таблиц

3 Форма - эта форма позволяет работать с таблицами, просматривать количество данных, и добавлять другие данные в таблицы (Рис. 6)

Рисунок 6. Выбор таблицы

4 Форма - в этой форме мы можем добавлять информацию о новом ответственном лице организации, его номер телефона и паспортные данные (Рис. 7)

Рисунок 7. Добавление нового ответственного лица

5 Форма - это вся информация об ответственных лицах организации, которые сейчас есть в организации. Здесь мы можем узнать, какие ресурсы имеет данное лицо, их стоимость, № инвентаризации и кабинет, где находится данный ресурс. Эта форма содержит 1 элемент DbGrid, который выводит информацию таблицы; 3 элемента Button, 2 из которых применяются для перехода на предыдущую форму, либо для закрытия всей системы; 1 элемент, который позволяет добавить нам новую информацию в таблицу; 1 элемент DbNavigator, с помощью которого мы можем вводить новые данные; 5 элементов ComboBox, которые позволяют выбрать информации из них; 8 элементов Label, используемые для написания на форме (Рис.8)

Рисунок 8. Распределение ответственных лиц

6 Форма - это вся информация о ресурсах, которые сейчас имеются в организации. Здесь мы можем узнать, какие ресурсы имеются в организации, их стоимость, № инвентаризации, вид, дату начала использования, срок годности и информацию о данном ресурсе. Эта форма содержит 1 элемент DbGrid, который выводит информацию таблицы; 3 элемента Button, 2 из которых применяются для перехода на предыдущую форму, либо для закрытия всей системы; 1 элемент который позволяет добавить нам новую информацию в таблицу; 1 элемент DbNavigator, с помощью которого мы можем вводить новые данные; 1 элемент ComboBox, который позволяет выбрать информации из списка; 7 элементов Label, используемых для написания на форме (Рис. 9)

Рисунок 9. Добавление новых ресурсов

7 Форма - это выполнение сложных SQL запросов, здесь, выбирая Ф.И.О. сотрудника, мы узнаем, какие ресурсы закреплены за данным сотрудником и всю информацию о данном ресурсе. Она содержит 2 элемента DbGrid, которые выводят таблицы и 2 элемента Button для перехода на предыдущую форму, либо для закрытия всей системы (Рис. 10)

Рисунок 10. Выполнение сложногоSQL-запроса

8 Форма - это приветствие системы. При запуске этой программы данная форма появляется первой, выводит сообщение приветствия и указывает дальнейшие действия (Рис. 11)

Рисунок 11. Окно приветствия программы

Для осуществления проверки нашей базы на SQL-сервере требуется зайти на сервер и выбрать базу со своим названием, после чего появится окно с таблицами имеющейся базы (Рис. 12)

Рисунок 12. БД на SQL-сервере

Каждая форма имеет свои элементы, некоторые из которых повторяются неоднократно на остальных формах.

TButton - это стандартная кнопка «Delphi», которая имеет на поверхности надпись, описывающая её назначение при нажатии. Для работы данного элемента, требуется прописать небольшой код на каждой форме, изменяя ее номер:

procedure TForm1.Button3Click(Sender: TObject);

begin

Form1.Close;

end;

Элемент TLabel - предназначен для показа текста на форме. Для присваивания требуемого текста данному элементу, нужно выбрать свойство Caption.

Элемент TEdit - предназначен для ввода пользовательских данных.

Поле TMemo - является окном редактирования многострочного текста.

Элемент TComboBox - предназначен для ввода данных путем набора на клавиатуре или выбора из выпадающего списка.

Так, например: вывод name из таблицы otvetstvennoe_face. Для этого используется обработчик события FormActivate:

AdoQuery3.SQL.Clear;

AdoQuery3.SQL.Add('select name from otvetstvennoe_face where familiya="'+Combobox1.text+'"');

AdoQuery3.Open;

AdoQuery3.first;

ComboBox2.Items.clear;

while not AdoQuery3.eof do

begin

ComboBox2.Items.Add(AdoQuery3.Fields.FieldByNumber(1).AsString);

AdoQuery3.next;

end;

ComboBox2.Itemindex:=0;

end;

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

Некоторые из форм имеют кнопку «Добавить», эта кнопка предназначена для добавления новых данных в таблицы. В этом случае мы используем оператор «with», который позволяет сократить код за счет уменьшения повторяющихся конструкций.

При переходе на формы, которые содержат уже имеющиеся данные, они выводятся автоматически.

Выбираем форму и в свойстве FormActivate прописываем код:

procedure TForm5.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from raspredelenie');

AdoQuery1.Open;

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

Элемент TDbGrid - таблица, которая отображает, дает редактировать нужные нам данные.

Все формы, кроме 8, имеют кнопки Exit и Back.

Кнопка Back - разрешает покинуть форму, на которой вы находитесь в данный момент.

Exit- позволяет нам выйти из системы, для этого прописываем данный код, в финальную форму, для закрытия всей программы.

procedure TForm9.Button2Click(Sender: TObject);

begin

Form9.close;

end;

Для заполнения таблиц базы данных используется алгоритм.

Основными его шагами являются:

- очистка текста SQL-запроса;

-формирование текста SQL-запроса с учетом введенных значений переменных;

-выполнение текста SQL-запроса.

В коде программы присутствуют ключевые слова, такие как Insert (добавить \ вставить), into (куда добавляем), Values (величины).

char (#039)- это оператор, позволяющий вставить символ по его коду.

with AdoQuery1 do

begin

SQL.Clear;

SQL.Add('insert into otvetstvennoe_face (id,familiya,name,otcestvo,№_telefona,pasportnie_dannie )');

SQL.Add('VALUES(Null,'+char(#039)+edit1.Text+char(#039)+','+char(#039)+

Edit2.Text+char(#039)+',');

SQL.Add(char(#039)+Edit3.Text+char(#039)+','+char(#039)+Edit4.Text+char(#039)+','+char(#039)+Edit5.Text+char(#039)+')');

ExecSQL;

end;

После того, как мы добавили новые данные, программа обновляет информацию: AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from materialnie_resursi_organizacie');

AdoQuery1.Open;

Для выполнения SQL - запросов сначала прописываем те данные, которые нам нужны для запроса: select familiya,name,otcestvo. Здесь мы берем столбцы: familiya, name, otcestvo, а из таблицы - otvetstvennoe_face. Далее select materialnie_resursi_organizacie,name,materialnie_resursi_organizacie, stoimost, materialnie_resursi_organizacie, №_inventarizacie, raspredelenie, kabinet. Здесь мы берем столбцы: name, stoimost, №_inventarizacie, из таблицы - materialnie_resursi_organizacie, из таблицы raspredelenie - kabinet. Далее мы прописываем название тех таблиц, которые нам нужны и приравниваем их одинаковые столбцы - materialnie_resursi_organizacie, name = raspredelenie, resurs and raspredelenie.familiya="'+ familiya+'" and raspredelenie.name="'+name+'" and raspredelenie, otcestvo="'+ otcestvo. Столбец name из таблицы materialnie_resursi_organizacie приравниваем к столбцу resurs из таблицы raspredelenie. В результате у нас выполнится SQL - запрос, который будет выводить нам информацию о ресурсе, закрепленным за сотрудником, порядковый номер которого мы выбираем из списка.

1.2 Описание входных и выходных данных

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

Входной информацией являются следующие поля:

- Фамилия

- Имя

- Отчество

- Номер телефона

- Паспортные данные

- Вид ресурса

- № инвентаризации

- Стоимость

- Дата начала

- Срок годности

- Кабинет

- Информация

В данном приложении необходимо вывести следующую выходную информацию на экран:

- Сведения о материальных ресурсах организации;

- Видов ресурсов;

- Об ответственных лицах;

- Сведения о закреплении ресурса за сотрудником и кабинетом;

- Сложный SQL-запрос со связью нескольких таблиц: ответственные лица и ресурсы организации, а так же различных полей: Ф.И.О, кабинет, ресурс, стоимость, № инвентаризации и срок годности;

1.3 Программное и аппаратное обеспечение программы

Данная программа разрабатывалась с учетом всех особенностей современных ЭВМ. Поэтому для работы программы не требуется какой-либо особенной конфигурации компьютера.

Минимальные требования для разработчика:

- процессор IntelPentium IV или выше (или совместимый аналог);

- наличие монитора VGA с разрешением экрана 800x600

- объём оперативной памяти 128 Мб

- операционная система WindowsXP и выше;

- до 25 МБ свободного места на жестком диске.

- SQL-компонент, для просмотра базы ( ODBC-коннектор)

- BorlandDeveloperStudio 2006.

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

Листинг программы формы 1

unit Unit1;

interface

uses

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

Dialogs, Grids, DBGrids, DB, ADODB, StdCtrls, unit2,unit3,unit4,unit5,unit6,unit7,unit9;

type

TForm1 = class(TForm)

Button1: TButton;

Label1: TLabel;

Button2: TButton;

Memo1: TMemo;

ADOConnection1: TADOConnection;

ADOQuery1: TADOQuery;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

Button3: TButton;

Button4: TButton;

Button5: TButton;

Button6: TButton;

Button7: TButton;

Button8: TButton;

Button9: TButton;

procedure Button5Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

procedure Button7Click(Sender: TObject);

procedure Button8Click(Sender: TObject);

procedure Button9Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit8;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

AdoConnection1.connected:=true;

Label1.caption:='Connected to '+AdoConnection1.DefaultDataBase;

Form1.ADOQuery1.SQL.Clear;

Form1.ADOQuery1.SQL.Add('Show tables from '+

AdoConnection1.DefaultDataBase);

Form1.ADOQuery1.Open;

end;

procedure TForm1.Button2Click(Sender: TObject);

var I:integer;

begin

if Form1.Memo1.lines.count=0 then

begin

ShowMessage('Empty SQL!!!');exit;

end;

with Form1.ADOQuery1 do

begin

SQL.Clear;

for I := 0 to Form1.Memo1.lines.count - 1 do

begin

SQL.Add(Form1.Memo1.lines[I]);

end;

Open;

end;

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

Form2.Show;

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

Form3.Show;

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

Form4.show;

end;

procedure TForm1.Button7Click(Sender: TObject);

begin

Form5.ShowModal;

end;

procedure TForm1.Button8Click(Sender: TObject);

begin

Form6.ShowModal;

end;

procedure TForm1.Button9Click(Sender: TObject);

begin

Form8.ShowModal;

end;

end.

Листинг программы формы 2

unit Unit2;

interface

uses

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

Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids;

type

TForm2 = class(TForm)

Button1: TButton;

Button2: TButton;

DataSource1: TDataSource;

DataSource2: TDataSource;

DataSource3: TDataSource;

DataSource4: TDataSource;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

DBGrid3: TDBGrid;

ADOQuery1: TADOQuery;

ADOQuery2: TADOQuery;

ADOQuery3: TADOQuery;

ADOQuery4: TADOQuery;

Button3: TButton;

procedure Button3Click(Sender: TObject);

procedure DBGrid1CellClick(Column: TColumn);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

Uses unit9,unit1;

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);

begin

form2.Close

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

ADOQuery1.SQL.Clear;

ADOQuery1.SQL.ADD('Show tables');

ADOQuery1.Open;

ADOQuery4.SQL.Clear;

ADOQuery4.SQL.ADD('Show DataBases ' );

ADOQuery4.Open;

end;

procedure TForm2.Button3Click(Sender: TObject);

begin

form9.Close;

end;

procedure TForm2.DBGrid1CellClick(Column: TColumn);

begin

ADOQuery2.SQL.Clear;

ADOQuery2.SQL.ADD('Select * from '+ DbGrid1.selectedfield.AsString);

ADOQuery2.Open;

ADOQuery3.SQL.Clear;

ADOQuery3.SQL.ADD('show fields from ' + DbGrid1.selectedfield.AsString);

ADOQuery3.Open;

end;

end.

Листинг программы формы 3

unit Unit3;

interface

uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids, ExtCtrls, DBCtrls;

type

TForm3 = class(TForm)

DBGrid1: TDBGrid;

Label1: TLabel;

Button1: TButton;

DataSource1: TDataSource;

ADOQuery1: TADOQuery;

Label2: TLabel;

Button2: TButton;

DBNavigator1: TDBNavigator;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

Edit5: TEdit;

Button3: TButton;

procedure Button3Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses unit1;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

begin

Form3.Close;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm3.Button3Click(Sender: TObject);

begin

with AdoQuery1 do

begin

SQL.Clear;

SQL.Add('insert into otvetstvennoe_face (id,familiya,name,otcestvo,№_telefona,pasportnie_dannie )');

SQL.Add

('VALUES(Null,'+char(#039)+edit1.Text+char(#039)+','+char(#039)+Edit2.Text+char(#039)+',');

SQL.Add(char(#039)+Edit3.Text+char(#039)+','+char(#039)+Edit4.Text+char(#039)+','+char(#039)+Edit5.Text+char(#039)+')');

ExecSQL;

end;

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from materialnie_resursi_organizacie');

AdoQuery1.Open;

end;

procedure TForm3.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from otvetstvennoe_face');

AdoQuery1.Open;

end;

end.

Листинг программы формы 4

unit Unit4;

interface

uses

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

Dialogs,unit3, DB, StdCtrls, DBCtrls, Grids, DBGrids, ADODB, ExtCtrls;

type

TForm4 = class(TForm)

ADOQuery1: TADOQuery;

ADOQuery2: TADOQuery;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

DataSource2: TDataSource;

Label1: TLabel;

Button1: TButton;

ComboBox1: TComboBox;

DBNavigator1: TDBNavigator;

procedure Button1Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure ComboBox1Select(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

implementation

uses unit1;

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);

begin

Form4.Close;

end;

procedure TForm4.ComboBox1Select(Sender: TObject);

begin

AdoQuery2.SQL.Clear;

AdoQuery2.SQL.Add('Select * from '+ComboBox1.text);

AdoQuery2.Open;

end;

procedure TForm4.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('show tables'); //select * from otvetstvennoe_face

AdoQuery1.Open;

AdoQuery1.first;

// AdoTable1.first;

ComboBox1.Items.clear;

//Label2.Caption:=AdoQuery1.FieldByName('name').AsString;

while not AdoQuery1.eof do

begin

ComboBox1.Items.Add(AdoQuery1.Fields.FieldByNumber(1).AsString);

AdoQuery1.next;

end;

ComboBox1.Itemindex:=0;

end;

end.

Листинг программы формы 5

unit Unit5;

interface

uses

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

Dialogs, StdCtrls,unit3, DB, Grids, DBGrids, ADODB, ExtCtrls, DBCtrls;

type

TForm5 = class(TForm)

Button1: TButton;

ComboBox1: TComboBox;

ADOQuery1: TADOQuery;

ADOQuery2: TADOQuery;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

ComboBox2: TComboBox;

Label5: TLabel;

Button2: TButton;

ADOQuery3: TADOQuery;

Button3: TButton;

DataSource2: TDataSource;

DBNavigator1: TDBNavigator;

Label7: TLabel;

ADOQuery4: TADOQuery;

ComboBox3: TComboBox;

ADOQuery5: TADOQuery;

ComboBox4: TComboBox;

Label8: TLabel;

ADOQuery6: TADOQuery;

Label9: TLabel;

Label10: TLabel;

Edit4: TEdit;

Label4: TLabel;

Label6: TLabel;

ComboBox5: TComboBox;

ADOQuery7: TADOQuery;

ADOQuery8: TADOQuery;

procedure ComboBox5Select(Sender: TObject);

procedure ComboBox4Change(Sender: TObject);

procedure ComboBox2Select(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure ComboBox1Select(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm5.Button1Click(Sender: TObject);

begin

Form5.Close;

end;

procedure TForm5.Button2Click(Sender: TObject);

begin

with AdoQuery4 do

begin

SQL.Clear;

SQL.Add('insert into raspredelenie(id,resurs,vid_resursa,stoimost,№_inventarizacie,familiya,name,otcestvo,kabinet)');

SQL.Add(' VALUES(Null, '+char(#039)+Combobox4.text+char(#039)+',');

SQL.Add(char(#039)+Label4.caption+char(#039)+','+char(#039)+label6.caption+char(#039)+',');

SQL.Add(char(#039)+Combobox5.Text+char(#039)+','+char(#039)+ComboBox1.Text+char(#039)+',');

SQL.Add(char(#039)+ ComboBox2.Text+char(#039)+','+char(#039)+ComboBox3.Text+char(#039)+ ','+char(#039)+Edit4.Text+char(#039)+')');

ExecSQL;

end;

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from materialnie_resursi_organizacie');

AdoQuery1.Open;

end;

procedure TForm5.Button3Click(Sender: TObject);

begin

Form1.close;

end;

procedure TForm5.ComboBox1Select(Sender: TObject);

begin

AdoQuery3.SQL.Clear;

AdoQuery3.SQL.Add('select name from otvetstvennoe_face where familiya="'+Combobox1.text+'"');

AdoQuery3.Open;

AdoQuery3.first;

ComboBox2.Items.clear;

while not AdoQuery3.eof do

begin

ComboBox2.Items.Add(AdoQuery3.Fields.FieldByNumber(1).AsString);

AdoQuery3.next;

end;

ComboBox2.Itemindex:=0;

end;

procedure TForm5.ComboBox2Select(Sender: TObject);

begin

AdoQuery5.SQL.Clear;

AdoQuery5.SQL.Add('select otcestvo from otvetstvennoe_face where familiya="'+Combobox1.text+'"');

AdoQuery5.SQL.Add(' or name="'+Combobox2.Text+'"');

AdoQuery5.Open;

AdoQuery5.first;

ComboBox3.Items.clear;

while not AdoQuery5.eof do

begin

ComboBox3.Items.Add(AdoQuery5.Fields.FieldByNumber(1).AsString);

AdoQuery5.next;

end;

ComboBox3.Itemindex:=0;

end;

procedure TForm5.ComboBox4Change(Sender: TObject);

begin

AdoQuery7.SQL.Clear;

AdoQuery7.SQL.Add('select №_inventarizacie from materialnie_resursi_organizacie where name="'+Combobox4.text+'"');

AdoQuery7.Open;

AdoQuery7.first;

ComboBox5.Items.clear;

while not AdoQuery7.eof do

begin

ComboBox5.Items.Add(AdoQuery7.Fields.FieldByNumber(1).AsString);

AdoQuery7.next;

end;

ComboBox5.Itemindex:=0;

end;

procedure TForm5.ComboBox5Select(Sender: TObject);

begin

AdoQuery8.SQL.Clear;

AdoQuery8.SQL.Add('select stoimost,vid from materialnie_resursi_organizacie where name="'+Combobox4.text+'" and №_inventarizacie="'+Combobox5.text+'"');

AdoQuery8.Open;

Label6.caption:=AdoQuery8.Fields.FieldByNumber(1).AsString;

Label4.caption:=AdoQuery8.Fields.FieldByNumber(2).AsString;

end;

procedure TForm5.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from raspredelenie');

AdoQuery1.Open;

AdoQuery2.SQL.Clear;

AdoQuery2.SQL.Add('select familiya from otvetstvennoe_face');

AdoQuery2.Open;

AdoQuery2.first;

ComboBox1.Items.clear;

while not AdoQuery2.eof do

begin

ComboBox1.Items.Add(AdoQuery2.Fields.FieldByNumber(1).AsString);

AdoQuery2.next;

end;

ComboBox1.Itemindex:=0;

AdoQuery6.SQL.Clear;

AdoQuery6.SQL.Add('select name from materialnie_resursi_organizacie');

AdoQuery6.Open;

AdoQuery6.first;

ComboBox4.Items.clear;

while not AdoQuery6.eof do

begin

ComboBox4.Items.Add(AdoQuery6.Fields.FieldByNumber(1).AsString);

AdoQuery6.next;

end;

ComboBox4.Itemindex:=0;

end;

end.

Листинг программы формы 6

unit Unit6;

interface

uses

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

Dialogs, StdCtrls, unit3, DB, ADODB, ExtCtrls, DBCtrls, Grids, DBGrids;

type

TForm6 = class(TForm)

Button1: TButton;

DBNavigator1: TDBNavigator;

DataSource1: TDataSource;

Label1: TLabel;

Edit1: TEdit;

Label2: TLabel;

Label3: TLabel;

Edit2: TEdit;

Label6: TLabel;

Edit5: TEdit;

Button2: TButton;

Button3: TButton;

Label7: TLabel;

Edit6: TEdit;

Label8: TLabel;

Edit8: TEdit;

Label9: TLabel;

Edit9: TEdit;

ADOQuery1: TADOQuery;

ADOQuery2: TADOQuery;

DBGrid1: TDBGrid;

ComboBox1: TComboBox;

procedure Button1Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

uses unit1;

{$R *.dfm}

procedure TForm6.Button1Click(Sender: TObject);

begin

Form6.Close;

end;

procedure TForm6.Button2Click(Sender: TObject);

begin

Form1.close;

end;

procedure TForm6.Button3Click(Sender: TObject);

begin

with AdoQuery2 do

begin

SQL.Clear;

SQL.Add('insert into materialnie_resursi_organizacie (id,name,vid ,stoimost ,№_inventarizacie,date_nacala ,srok_godnosti,informaciya )');

SQL.Add(' VALUES(Null,'+char(#039)+edit6.Text+char(#039)+','+char(#039)+Combobox1.Text+char(#039)+',');

SQL.add(char(#039)+Edit8.Text+char(#039)+','+char(#039)+Edit1.Text+char(#039)+','+char(#039)+Edit9.Text+char(#039)+',');

SQL.add(char(#039)+Edit2.Text+char(#039)+','+char(#039)+Edit5.text+char(#039)+')');

ExecSQL;

end;

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from materialnie_resursi_organizacie');

AdoQuery1.Open;

end;

procedure TForm6.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add('select * from materialnie_resursi_organizacie');

AdoQuery1.Open;

AdoQuery2.SQL.Clear;

AdoQuery2.SQL.Add('select vid_resursa from vid_resursi');

AdoQuery2.Open;

AdoQuery2.first;

ComboBox1.Items.clear;

while not AdoQuery2.eof do

begin

ComboBox1.Items.Add(AdoQuery2.Fields.FieldByNumber(1).AsString);

AdoQuery2.next;

end;

ComboBox1.Itemindex:=0;

end;

end.

Листинг программы формы 7

unit Unit8;

interface

uses

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

Dialogs, DB, ADODB, StdCtrls, Grids, DBGrids;

type

TForm8 = class(TForm)

Button1: TButton;

Button2: TButton;

DBGrid1: TDBGrid;

ADOQuery1: TADOQuery;

ADOQuery2: TADOQuery;

DataSource1: TDataSource;

DBGrid2: TDBGrid;

DataSource2: TDataSource;

ADOQuery3: TADOQuery;

Label1: TLabel;

procedure DBGrid1CellClick(Column: TColumn);

procedure FormActivate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form8: TForm8;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm8.Button1Click(Sender: TObject);

begin

Form8.Close;

end;

procedure TForm8.Button2Click(Sender: TObject);

begin

Form8.Close;

end;

procedure TForm8.DBGrid1CellClick(Column: TColumn);

var name,familiya,otcestvo:string;

begin

AdoQuery3.SQL.Clear;

AdoQuery3.SQL.Add ('select familiya,name,otcestvo from otvetstvennoe_face where id="'+DBgrid1.SelectedField.asstring+'"');

AdoQuery3.Open;

name:=AdoQuery3.FieldByName('name').AsString;

familiya:=AdoQuery3.FieldByName('familiya').AsString;

otcestvo:=AdoQuery3.FieldByName('otcestvo').AsString;

Label1.caption:='За сотрудником '+familiya+' '+ name +' ' + otcestvo+ ' закреплено следующее оборудование:';

AdoQuery2.SQL.Clear;

AdoQuery2.SQL.Add ('select materialnie_resursi_organizacie.name,materialnie_resursi_organizacie.stoimost,materialnie_resursi_organizacie.№_inventarizacie,raspredelenie.kabinet from materialnie_resursi_organizacie,raspredelenie');

AdoQuery2.SQL.Add (' where materialnie_resursi_organizacie.name=raspredelenie.resurs and raspredelenie.familiya="'+ familiya+'" and raspredelenie.name="'+name+'" and raspredelenie.otcestvo="'+ otcestvo+'"');

AdoQuery2.Open;

end;

procedure TForm8.FormActivate(Sender: TObject);

begin

AdoQuery1.SQL.Clear;

AdoQuery1.SQL.Add ('select * from otvetstvennoe_face');

AdoQuery1.Open;

end;

end.

Листинг программы формы 8

unit Unit9;

interface

uses

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

Dialogs, StdCtrls;

type

TForm9 = class(TForm)

Memo1: TMemo;

Button1: TButton;

Button2: TButton;

procedure Button2Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form9: TForm9;

implementation

uses unit1;

{$R *.dfm}

procedure TForm9.Button1Click(Sender: TObject);

begin

form1.showmodal;

end;

procedure TForm9.Button2Click(Sender: TObject);

begin

Form9.close;

end;

end.

Заключение

С развитием компьютерных технологий появилась возможность автоматизировать некоторые виды деятельности человека. Но компьютер не сможет выполнить учет поступивших ресурсов или распределить ресурсы между сотрудниками без специальных программ. Для этих целей и была создана Система «Материальные ресурсы организации», позволяющая быстро оперировать с данными: хранить их и выдавать пользователю в нужном ему виде. Использование компьютера для выполнения различных задач сейчас применяется повсеместно и это полностью оправдывает затраты на них, так как экономит рабочие силы, время и деньги. При создании данной программы были использованы новейшие разработки в области программирования, что позволило достичь оптимальной производительности и скорости обработки данных даже при минимуме машинных ресурсов. В процессе создания был создан простой и понятный в использовании интерфейс. Программа была написана в соответствии с поставленной задачей.

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

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

1. Архангельский А.Я.-100 компонентов общего назначения библиотеки Delphi 5. Bel&Chen Co 2002. - 230c.

2. Владимир Попов, Издательство: Питер “Паскаль и Делфи. Учебный курс”, 2005 г., 576 с.

3. Г. В. Галисеев, Издательство: Вильямс “Программирование в среде Delphi 7. Самоучитель”, 2003 г., 448 с.

4. Дмитрий Осипов, «Delphi. Профессиональное программирование», Издательство «Символ-плюс», 2006, 1056с.

5. Культин Н.Б. «Основы программирования в Delphi 7».: Издательство BHV-СПБ. 2008г. - 480с.

6. Культин Н.Б. Делфи 7/Borland Delphi 7 2002 г - 814c.

7. Культин Н.Б. Программирование на ObjectPascal в Delphi

8. Самоучитель. Издательство BHV-СПБ. - 464с.

9. М.Вильямс, Издательство - «Москва»; Изучаем Pascal-Delphi 5,6; 2010 г-256с.

10. Осипов Д.Л., «Базы данных и Delphi. Теория и практика», Издательство «BHV», 2011, 752с.

11. Фаронов В.В. «Delphi 2005. Разработка приложений для баз данных и Интернета». Издательство «Питер». 2006г. - 608с.

12. Фаронов В.В., «Delphi. Программирование на языке высокого уровня», Издательство «Питер», 2011, 640с.

Размещено на Allbest.ru

...

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

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