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

Создание автоматизированного рабочего места по технике безопасности и охране труда на малом предприятии. Требования к аппаратному обеспечению. Математическая модель контрольного тестирования и структура данных. Алгоритм работы пользователя системы.

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

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

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

1. А, Б - взрывопожароопасные;

2. В, Г, Д - пожароопасные.)

(В - горючие и трудно горючие помещения, в которых в обращении имеются жидкости, твердые, горючие и трудно горючие вещества и материалы(в том числе пыли и волокна), способные при взаимодействии с кислородом воздуха или друг другом только гореть, при условии что помещения, в которых они находятся, не относятся к категориям А и Б (ГОСТ 12.1.004-85)).

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

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

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

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

Для тушения пожаров на начальных стадиях широко применяются огнетушители. По виду используемого огнетушащего вещества огнетушители подразделяются на следующие основные группы.

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

Газовые огнетушители применяются для тушения жидких и твердых веществ, а также электроустановок, находящихся под напряжением.

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

Объекты ВЦ кроме АПС необходимо оборудовать установками стационарного автоматического пожаротушения. Наиболее целесообразно применять в ВЦ установки газового тушения пожара, действие которых основано на быстром заполнении помещения огнетушащим газовым веществом с резким сжижением содержания в воздухе кислорода.

6.3 Расчет общеобменной вентиляции

В данном подразделе будет произведен расчет общеобменной вентиляции от избытков тепла.

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

Количество вентиляционного воздуха определяется по формуле

где Qизб - выделение в помещении явного тепла, Вт;

C-теплоемкость воздуха (C=10 Дж/кг);

- удельная плотность воздуха ( =1 кг/м );

tуд и tпр - температура удаляемого и приточного воздуха, град.

Температура удаляемого воздуха определяется из формулы:

tух = tрз + d(h - 2)

где tрз - температура воздуха в рабочей зоне (tрз=20 град);

d - коэффициент нарастания температуры на каждый метр высоты (d=1.5 град/м);

h - высота помещения (h=4 м).

Отсюда tух = 23 град.

Количество избыточного тепла определяется из теплового баланса, как разница между теплом, поступающим в помещение и теплом, удаляемым из помещения и поглощаемым в нем.

Qизб = Qприх - Qрасх.

Поступающее в помещение тепло определяется по формуле:

Qприх = Qобор + Qл + Qосв + Qрад

где Qобор - тепло от работы оборудования;

Qл - тепло, поступающее от людей;

Qосв - тепло от источников освещения;

Qрад - тепло от солнечной радиации через окна.

Qобор = * Pуст = 0.15*14520 = 2178 Вт,

где - доля энергии, переходящей в тепло;

Pуст - мощность установки.

Qл = n * q = 9*90 = 810 Вт,

где n - количество человек в зале (n=9);

q - количество тепла, выделяемое человеком (q=90 Вт).

Qосв = * Pосв = 0.4*2000 = 800 Вт

где = 0.4 для люминесцентных ламп;

Pосв - мощность осветительной установки.

Qрад = А * k * S * m = 180*3*3*0.8 = 1296 Вт,

где А - теплопоступление в помещение с 1 кв.м стекла (127-234 Вт/м );

S - площадь окна (S=3 м );

m - количество окон (m=3);

k - коэффициент, учитывающий характер остекления (k=0.8).

Из формулы (11.8) получаем

Qприх = 4724 Вт.

Qрасх = 0.1 * Qприх =472.4 Вт

Отсюда по формуле

Qизб = 4251.6 Вт.

Находим необходимый воздухообмен:

м/ч.

Определяем необходимую кратность воздухообмена:

где Vпом = n * Sчел * h ,

n=9 - число людей в помещении;

Sчел - площадь производственного помещения, приходящаяся

на 1 человека (по нормам для умственного труда Sчел=4 м );

h=4 м - высота помещения.

Кратность воздухообмена:

Произведем подбор вентилятора по аэродинамическим характеристикам и специальным номограммам, составленным на основе стендовых испытаний различных видов вентиляторов. Исходными данными для выбора вентилятора являются:

- расчетная производительность вентиляторо:

Vрасч = 1.1 * Vвент = 1.1*5886.83 = 6475.5 м /ч

где 1.1 - коэффициент, учитывающий утечки и подсосы воздуха.

- напор (полное давление), обеспечиваемый вентилятором:

где в=1.3 кг/м - плотность воздуха,

v - окружная скорость вентилятора; ограничивается предельно допустимым уровнем шума в помещении.

Для центробежных вентиляторов низкого давления в помещениях с малым шумом v должна быть не более 35 м/с. Для расчета примем v=25 м/с.

Тогда Hв=406 Па.

По исходным данным выбираем центробежный вентилятор низкого давления Ц4-70N5. По номограммам определяем его характеристики:

- число оборотов - 1000 об/мин;

- КПД вентилятора - 0.8.

Необходимая установочная мощность электродвигателя:

Вт

где в - Rпд вентилятора.

Из приведенных в данном разделе расчетов следует, что используемое рабочее место, оснащенное видеотерминальным устройством (ПЭВМ), удовлетворяет допустимым нормам с точки зрения эргономики и условиям нормальной работы.

Вывод: В результате правильного расчёта освещения, у операторов ЭВМ уменьшается риск профессиональных заболеваний (в основном потеря зрения), утомлённость и как следствие - повышается производительность труда.

ЗАКЛЮЧЕНИЕ

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

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

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

1. Проведен анализ принципов построения автоматизированных рабочих мест.

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

3. Проведена математическая постановка задачи. Описана математическая модель контрольного тестирования.

4. Выбраны технические и программные средства для разработки программы.

5. Разработаны структурная схема и функциональная модель системы АРМ по ТБ.

6. Разработаны схема работы системы.

7. При разработке программного продукта были реализованы следующие подсистемы:

- подсистема тестирования;

- подсистема учета;

- СУБД сотрудников;

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

9. Проведен расчет себестоимости и цены программного.

10. Разработаны требования по безопасной работе пользователей:

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

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Аппак М.А., "Автоматизированные рабочие места на основе персональных ЭВМ", М.:'Радио и связь', 1989 г.

2. Крайзмер Л.П., Кулик Б.А., "Персональный компьютер на вашем рабочем месте", 'Лениздат', 1991 г.

3. Брябрин В.М., "Программное обеспечение персональных ЭВМ",
М.:Hаука, 1989 г

4. Кодекс законов о труде Российской Федерации

5. АРМ «Орана труда» Научно-производственного предприятия “ПРОТЕК”-. http://protec.kiev.ua/ooks/realprog.htm

6. «Электронный экзамен по Охране труда» Информационно-методического центра «Лоранж-2»-. http://www.ohranatruda.ru/review-1012.html

7. Чель У., Ли Р. Математическая логика и основания математики. - М.: Наука, 1986г.

8. Вербовицкий А.А Основы проектирования БД.- М.: Радио и связь, 2000.- 88стр.

9. Аванесов В.С. Теоретические основы разработки заданий в тестовой форме. М.: Наука, 1998.

10. Непейвода Н. Н. Прикладная логика. Учебное пособие- Ижевск: Издательство Удмуртского университета, 1997.

11. Вербовицкий А.А Основы проектирования БД.- М.: Радио и связь, 2000.

12. Баженова И.Ю. Программирование в среде DELPHI 7: Самоучитель программиста. - М.: Кудиц-образ, 2004.

13. Руководящий документ: Методология функционального моделирования IDEF0. М.: Госстандарт России

14. Шумаков П. В., "Delphi 3.0 и создание баз данных". Москва 1997г.

15. Тейксейра, Стив, Пачеко, Ксавье. Delphi "Руководство разработчика".СПб:Издательский дом 'Вильямс' 1999г.

16. Горев А., Ахаян Р., Макашарипов С., "Эффективная работа с СУБД".СПб.:Питер, 1997.

17. Бакаревич Ю.Б., Пушкина Н.В. Самоучитель Microsoft Access 2000. - СПб.: БХВ-Петербург, 2001

18. Электронная встроенная гипертекстовая справочная система Microsoft Access, файл MSACC20.HLP, 4.7 Мбайта.

19. Минин М.Г. “Диагностика качества знаний и компьютерные технологии обучения” - Томск: Изд-во ТГПУ, 2000

20. Брудник С.С. и др. "Экономическое содержание дипломных проектов", М.:ГАНГ, 1990г.

21. Брудник С.С., Кочегарова И.А., Степин Ю.П., Чикиров А.Б., Определение экономической эффективности программных средств в АСУ" М.:ГАНГ, 1995г

22. Санитарные нормы и правила http://niiot.ru/doc/doc56/doc56_00.htm

23. Санитарно-эпидемиологические правила и нормативы СанПин 2.2.2/2.4.1340-03 «Гигиенические требования к персональным электронно-вычислительным машинам и организации работы»

24. ПЭЭП «Правила эксплуатации электроустановок потребителей», 5-е издание, переработанное и дополненное (с изменениями). - Москва, 1997

25. И.Г.Гетия, И.Н.Леонтьева, Е.Н.Кулемина. Учебное пособие. Проектирование вентиляции и кондиционирование воздуха, искусственного и естественного освещения в помещении ВЦ (спец.01.02; 21.01; 21.03;21.06; 22.01; 22.03; 23.03)-М:МГАПИ,1995.

ПРИЛОЖЕНИЕ 1

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Работа АРМ по технике безопасности начинается с авторизации пользователей в системе. При этом выводится форма представленная на Рис.П.1.1

Если пользователь был зарегистрирован в системе ранее, то ему предоставляется возможность ввести свой логин и пароль, и войти в программу. В случае если пользователь не зарегистрирован, то он может это сделать во вкладке «Новый», показанной на рисунке Рис.П.1.2

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

Рис.П.1.

В случае неправильного ввода пароля или логина выдается сообщение пользователю представленное на Рис.П.1.3

Предупреждающее что логин или пароль не верен.

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

Если сотрудник ввел при регистрации неправильно пароль или подтверждение пароля, выдается информационное окно представленное на Рис.П.1.5

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

Для прохождения тестирования сотрудник выбирает тест по его названию и нажимает «Выбрать тест».

После выбора теста открывается новое окно для прохождение тестирования.

В котором содержатся: вопрос, варианты ответа на этот вопрос, порядковый номер текущего вопроса, количество вопросов в данном тесте. Форма прохождения тестирования представлено на Рис.П.1.7

По окончании теста выводится информационное окно сообщающее что тест окончен и результат тестирования.

Выводима информация представлена на Рис.П.1.7 и Рис.П.1.8.

Рис.П.1.8

До и после тестирования, пользователю доступно изучение методического материала. Для ознакомления с методическим материалом необходимо выбрать тест, по которому необходимо получить справочный материал и прейти на вкладку «Справочный материал», который представлен на Рис.П.1.9.

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

На главной форме для пользователя и администратора доступна кнопка «Отчет». По нажатию на данную кнопку открывается новая форма представленная на рисунке П.1.11. В данной форме выводится список всех тестов. Пользователь выбирает тест по его названию и нажимает кнопку «ОК». Выводится таблица со всеми сотрудниками проходившие данное тестирование. Данная форма представлена на рисунке П.1.12

Рис.П.1.11

РУКОВОДСТВО АДМИНИСТРАТОРА

После авторизации администратора открывается Рабочая форма, на которой для администратора доступно редактирование тестов, редактирование пользователей и просмотр отчетов. Данная форма представлена на Рис.П.1.13

Для редактирования теста администратору необходимо выбрать тест из списка и нажать кнопку «Редактирование тестов». Открывается новая форма, в которой отображается список всех тестов. Форма редактирования тестов и метолического материала представлена на рисунке П.1.14.

По нажатию на кнопку «Редактирование» появляется поле редактирования теста. Можно изменить название теста, количество баллов на оценку отлично, хорошо и удовлетворительно, по выбранному тесту администратор может добавлять или изменять справочный материал. По выбранному тесту можно вносить изменения в вопросы и варианты ответов, путем добавления, редактирования или удаления их. Данная информация представлена на рисунках П.1.15 и П.1.16

Рис.П.1.16

По нажатию на кнопку «Пользователи» на главной форме, открывается новая форма редактирования данных сотрудников. В которой отображается список всех сотрудников зарегистрированных в программе. Рисунок П.1.17 Администратор может вносить изменения во все поля пользовательских данных либо удалить запись полностью. Он может присвоить статус администратора какому-либо пользователю. На второй вкладке «Результаты» отображается список тестов выбранного сотрудника, дата сдачи и результат теста. Администратор так же имеет право на удаление результатов. Рисунок П.1.18

Рис.П.1.18

ПРИЛОЖЕНИЕ 2. ИСХОДНЫЙ ТЕКСТ ПРОГРАММЫ

Модуль 1.

Код данного модуля отвечает за описание всех переменных в программе

unit Unit1;

interface

uses

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

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

type

TForm1 = class(TForm)

ADOConnection1: TADOConnection;

DataSource1: TDataSource;

ADOTable1: TADOTable;

ADOTable2: TADOTable;

ADOTable3: TADOTable;

ADOTable4: TADOTable;

DataSource2: TDataSource;

DataSource3: TDataSource;

DataSource4: TDataSource;

ADOTable5: TADOTable;

DataSource5: TDataSource;

ADOTable2id: TAutoIncField;

ADOTable2nazvanie: TWideStringField;

ADOTable2good: TIntegerField;

ADOTable2sred: TIntegerField;

ADOTable2poor: TIntegerField;

ADOTable3id: TAutoIncField;

ADOTable3nomertesta: TIntegerField;

ADOTable3nomervoprosa: TIntegerField;

ADOTable3vopros: TWideStringField;

ADOTable3pravotvet: TIntegerField;

ADOTable4id: TAutoIncField;

ADOTable4nomervoprosa: TIntegerField;

ADOTable4variant: TIntegerField;

ADOTable4textvarianta: TWideStringField;

ADOTable4prav_neprav: TBooleanField;

ADOTable2spravmat: TMemoField;

ADOTable1id: TAutoIncField;

ADOTable1login: TWideStringField;

ADOTable1fio: TWideStringField;

ADOTable1status: TBooleanField;

ADOTable1password: TWideStringField;

ADOTable5id: TAutoIncField;

ADOTable5login: TWideStringField;

ADOTable5test: TWideStringField;

ADOTable5datasdachi: TDateTimeField;

ADOTable5rezult: TIntegerField;

ADOTable5ocenka: TWideStringField;

ADOTable6: TADOTable;

DataSource6: TDataSource;

ADOQuery1: TADOQuery;

DataSource7: TDataSource;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

end.

Модуль 2

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

unit Unit2;

interface

uses

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

Dialogs, StdCtrls, unit1,Grids, DBGrids, DB, ADODB, ExtCtrls, ComCtrls;

type

TForm2 = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Button1: TButton;

TabSheet2: TTabSheet;

Label4: TLabel;

Button4: TButton;

Edit8: TEdit;

Label7: TLabel;

Label8: TLabel;

Edit7: TEdit;

Edit6: TEdit;

Label6: TLabel;

Label5: TLabel;

Edit5: TEdit;

Button2: TButton;

procedure Button1Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure TabSheet2Show(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

status: boolean;

authorization: boolean;

implementation

uses Unit3, Unit4;

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);

begin

if form1.ADOTable1.Locate('login;password',VarArrayOf([edit1.Text,edit2.Text]),[loCaseInsensitive]) then

begin

status:=form1.ADOTable1.FieldByName('status').AsBoolean;

authorization:=true;

button2.Enabled:=true;

end

else MessageDlg('Проверьте правильность ввода', mtInformation, [mbOk], 0);

if status then label4.Caption:='Администратор'

else label4.Caption:='Не администратор'

end;

procedure TForm2.Button4Click(Sender: TObject);

begin

if not authorization then

if edit5.Text='' then MessageDlg('Заполните поле Логин', mtInformation, [mbOk], 0)

else

if edit6.Text=edit7.Text then

begin

if not form1.ADOTable1.Locate('login',edit5.Text,[loCaseInsensitive]) then

begin

form1.ADOTable1.Append;

form1.ADOTable1.FieldByName('login').AsString:=edit5.Text;

form1.ADOTable1.FieldByName('password').AsString:=edit6.Text;

form1.ADOTable1.FieldByName('fio').AsString:=edit8.Text;

form1.ADOTable1.Post;

MessageDlg('Пользователь '+edit5.Text+ ' успешно зарегистрирован', mtInformation, [mbOk], 0);

authorization:=true;

button2.Enabled:=true;

end

else MessageDlg('Пользователь с таким логином уже зарегистрирован', mtInformation, [mbOk], 0);

end

else MessageDlg('Введите еще раз пароли', mtInformation, [mbOk], 0)

else

if edit5.Text='' then MessageDlg('Заполните поле Логин', mtInformation, [mbOk], 0)

else

if edit6.Text=edit7.Text then

begin

if not form1.ADOTable1.Locate('login',edit5.Text,[loCaseInsensitive]) then

begin

form1.ADOTable1.edit;

form1.ADOTable1.FieldByName('login').AsString:=edit5.Text;

form1.ADOTable1.FieldByName('password').AsString:=edit6.Text;

form1.ADOTable1.FieldByName('fio').AsString:=edit8.Text;

form1.ADOTable1.Post;

MessageDlg('Изменения успешно внесены', mtInformation, [mbOk], 0);

end

else MessageDlg('Пользователь с таким логином уже зарегистрирован', mtInformation, [mbOk], 0);

end

else MessageDlg('Введите еще раз пароли', mtInformation, [mbOk], 0);

end;

procedure TForm2.FormCreate(Sender: TObject);

begin

authorization:=false;

end;

procedure TForm2.TabSheet2Show(Sender: TObject);

begin

if authorization then

begin

edit5.Text:=form1.ADOTable1.FieldByName('login').AsString;

edit6.Text:=form1.ADOTable1.FieldByName('password').AsString;

edit7.Text:=form1.ADOTable1.FieldByName('password').AsString;

edit8.Text:=form1.ADOTable1.FieldByName('fio').AsString;

end;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

form4.show;

form2.hide;

end;

end.

Модуль 3

Данный модуль отвечает за обработку ввода информации.

unit Unit3;

interface

uses

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

Dialogs, StdCtrls, unit1, Grids, DBGrids, ExtCtrls, Spin,DB, ADODB,

DBCtrls, Mask, ComCtrls ;

type

TForm3 = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

DBGrid1: TDBGrid;

Button1: TButton;

Button2: TButton;

Button4: TButton;

Panel2: TPanel;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

Button7: TButton;

DBGrid2: TDBGrid;

DBGrid3: TDBGrid;

DBText1: TDBText;

DBText2: TDBText;

DBEdit4: TDBEdit;

DBEdit5: TDBEdit;

Label4: TLabel;

Label5: TLabel;

Button3: TButton;

Button5: TButton;

Button6: TButton;

Panel1: TPanel;

DBEdit6: TDBEdit;

Label6: TLabel;

Button8: TButton;

Panel3: TPanel;

Label7: TLabel;

DBEdit7: TDBEdit;

Button9: TButton;

Button10: TButton;

Button11: TButton;

Button12: TButton;

DBMemo1: TDBMemo;

DBEdit3: TDBEdit;

Label8: TLabel;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

procedure Button7Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button12Click(Sender: TObject);

procedure Button11Click(Sender: TObject);

procedure Button10Click(Sender: TObject);

procedure Button9Click(Sender: TObject);

procedure Button8Click(Sender: TObject);

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

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form3: TForm3;

implementation

uses Unit4, Unit5;

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);

begin

form1.ADOTable2.Append;

panel2.Show;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

form1.ADOTable2.edit;

panel2.Show;

end;

procedure TForm3.Button4Click(Sender: TObject);

begin

if MessageDlg('Вы уверены?', mtConfirmation, [mbYes, mbNo], 0) =mrYes then

begin

form1.ADOTable2.Delete;

end;

end;

procedure TForm3.Button6Click(Sender: TObject);

begin

form1.ADOTable3.Append;

panel1.Show;

end;

procedure TForm3.Button7Click(Sender: TObject);

begin

panel2.Hide;

form1.ADOTable2.post;

end;

procedure TForm3.Button8Click(Sender: TObject);

begin

form1.ADOTable3.post;

panel1.Hide;

end;

procedure TForm3.Button5Click(Sender: TObject);

begin

form1.ADOTable3.edit;

panel1.Show;

end;

procedure TForm3.Button3Click(Sender: TObject);

begin

if MessageDlg('Вы уверены?', mtConfirmation, [mbYes, mbNo], 0) =mrYes then

begin

form1.ADOTable3.Delete;

end;

end;

procedure TForm3.Button12Click(Sender: TObject);

begin

form1.ADOTable4.Append;

panel3.Show;

end;

procedure TForm3.Button11Click(Sender: TObject);

begin

form1.ADOTable4.edit;

panel3.Show;

end;

procedure TForm3.Button10Click(Sender: TObject);

begin

if MessageDlg('Вы уверены?', mtConfirmation, [mbYes, mbNo], 0) =mrYes then

begin

form1.ADOTable4.Delete;

end;

end;

procedure TForm3.Button9Click(Sender: TObject);

begin

panel3.Hide;

form1.ADOTable4.post;

end;

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

begin

form4.Show;

end;

end.

Модуль 4

Окно главной формы.

unit Unit4;

interface

uses

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

Dialogs, Grids, DBGrids, StdCtrls, ExtCtrls, Mask, DBCtrls, ComCtrls;

type

TForm4 = class(TForm)

Button1: TButton;

Button2: TButton;

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

DBGrid1: TDBGrid;

DBMemo1: TDBMemo;

Button3: TButton;

Button4: TButton;

Button5: TButton;

procedure Button1Click(Sender: TObject);

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

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure FormShow(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form4: TForm4;

nvopr: byte;

implementation

uses unit1, Unit5, Unit2, Unit3, Unit6, Unit7, Unit8, Unit9;

{$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject);

begin

form1.ADOTable3.FindFirst;

form1.ADOTable4.FindFirst;

form5.show;

end;

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

begin

form2.show;

end;

procedure TForm4.Button3Click(Sender: TObject);

begin

form3.show;

form4.Hide;

end;

procedure TForm4.Button4Click(Sender: TObject);

begin

form6.show;

form4.hide;

end;

procedure TForm4.Button2Click(Sender: TObject);

begin

form7.show;

form4.Hide;

end;

procedure TForm4.Button5Click(Sender: TObject);

begin

form4.Hide;

form9.show;

// form8.QuickRep1.Preview;

// form8.show;

end;

procedure TForm4.FormShow(Sender: TObject);

begin

if status then

begin

button1.Enabled:=false;

button2.Enabled:=false;

button3.Enabled:=true;

button4.Enabled:=true;

end

else

begin

button1.Enabled:=true;

button2.Enabled:=true;

button3.Enabled:=false;

button4.Enabled:=false;

end;

end;

end.

Модуль 5.

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

unit Unit5;

interface

uses

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

Dialogs, Grids, DBGrids, ExtCtrls, DBCtrls, dbcgrids, StdCtrls, Mask;

type

TForm5 = class(TForm)

Button1: TButton;

RadioGroup1: TRadioGroup;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

DBText1: TDBText;

Label4: TLabel;

procedure Button1Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure FormDeactivate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form5: TForm5;

numvopr: integer; // номер вопроса

kolvopr: integer; // количество вопросов

pravotv: integer; //правильных ответов

implementation

uses unit1;

{$R *.dfm}

procedure TForm5.Button1Click(Sender: TObject);

var i: integer;

begin

if radiogroup1.ItemIndex+1=form1.ADOTable3.FieldByName('pravotvet').AsInteger then pravotv:=pravotv+1;

label3.Caption:=inttostr(pravotv);

if radiogroup1.ItemIndex<>-1 then

begin

numvopr:=numvopr+1;

label1.Caption:='Вопрос № '+inttostr(numvopr);

if numvopr<=kolvopr then

begin

form1.ADOTable3.FindNext;

radiogroup1.Items.Clear;

for i:=1 to form1.ADOTable4.RecordCount do

begin

radiogroup1.Items.Append(form1.ADOTable4.FieldByName('textvarianta').AsString);

if i<form1.ADOTable4.RecordCount then form1.ADOTable4.FindNext;

end;

end

else

begin

form1.ADOTable5.append;

form1.ADOTable5.FieldByName('test').AsString:=form1.ADOTable2.FieldByName('nazvanie').AsString;

form1.ADOTable5.FieldByName('rezult').AsInteger:=pravotv;

form1.ADOTable5.FieldByName('datasdachi').AsDateTime:=date+time;

if pravotv>=form1.ADOTable2.FieldByName('good').AsInteger then

begin

form1.ADOTable5.FieldByName('ocenka').AsString:='Отлично';

MessageDlg('Тест закончен, ваш результат - Отлично', mtInformation, [mbOk], 0);

end

else

if pravotv>=form1.ADOTable2.FieldByName('sred').AsInteger then

begin

form1.ADOTable5.FieldByName('ocenka').AsString:='Хорошо';

MessageDlg('Тест закончен, ваш результат - Хорошо', mtInformation, [mbOk], 0);

end

else

if pravotv>=form1.ADOTable2.FieldByName('poor').AsInteger then

begin

form1.ADOTable5.FieldByName('ocenka').AsString:='Удовлетворительно

MessageDlg('Тест закончен, ваш результат - Удовлетворительно', mtInformation, [mbOk], 0);

end

else

begin

form1.ADOTable5.FieldByName('ocenka').AsString:='Отвратительно';

MessageDlg('Тест закончен, ваш результат - Отвратительно', mtInformation, [mbOk], 0);

end;

// form1.ADOTable5.FieldByName('ocenka').AsString:=form1.ADOTable2.FieldByName('nazvanie').AsString;

form1.ADOTable5.Post;

form5.Close;

end;

end

else MessageDlg('Выберите вариант ответа', mtInformation, [mbOk], 0);

end;

procedure TForm5.FormCreate(Sender: TObject);

var i: integer;

begin

pravotv:=0;

kolvopr:=form1.ADOTable3.RecordCount;

label2.Caption:='Вопросов: '+inttostr(kolvopr);

numvopr:=1;

label1.Caption:='Вопрос № '+inttostr(numvopr);

radiogroup1.Items.Clear;

for i:=1 to form1.ADOTable4.RecordCount do

begin

radiogroup1.Items.Append(form1.ADOTable4.FieldByName('textvarianta').AsString);

if i<form1.ADOTable4.RecordCount then form1.ADOTable4.FindNext;

end;

end;

procedure TForm5.FormDeactivate(Sender: TObject);

begin

form5.Close;

end;

end.

Модуль 6.

Данный модуль отвечает за редактирование БД пользователей, а именно редактирование ФИО, логина, пароля. Данный модуль доступен только администратору. Возможно удаление результатов прохождения тестирования.

unit Unit6;

interface

uses

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

Dialogs, Grids, DBGrids, ComCtrls, unit1, StdCtrls, DBCtrls, Mask;

type

TForm6 = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

DBGrid1: TDBGrid;

DBGrid2: TDBGrid;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DBCheckBox1: TDBCheckBox;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Button1: TButton;

Button2: TButton;

Button3: TButton;

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

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form6: TForm6;

implementation

uses Unit4;

{$R *.dfm}

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

begin

form4.show;

end;

procedure TForm6.Button1Click(Sender: TObject);

begin

if MessageDlg('Вы уверены?', mtConfirmation, [mbYes, mbNo], 0) =mrYes then

begin

form1.ADOTable1.Delete;

end;

end;

procedure TForm6.Button2Click(Sender: TObject);

begin

if MessageDlg('Вы уверены?', mtConfirmation, [mbYes, mbNo], 0) =mrYes then

begin

form1.ADOTable5.Delete;

end;

end;

end.

Модуль 7.

Просмотр результатов тестирования выбранным пользователем.

unit Unit7;

interface

uses

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

Dialogs, unit1, Grids, DBGrids, StdCtrls, DBCtrls;

type

TForm7 = class(TForm)

DBGrid1: TDBGrid;

DBText1: TDBText;

DBText2: TDBText;

DBText3: TDBText;

DBText4: TDBText;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

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

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form7: TForm7;

implementation

uses Unit4;

{$R *.dfm}

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

begin

form4.show;

end;

end.

Модуль 8

Данный модуль отвечает за печать списка сданных тестов.

unit Unit9;

interface

uses

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

Dialogs, unit1, StdCtrls, DBCtrls, Grids, DBGrids, ComCtrls, Mask;

type

TForm9 = class(TForm)

DBGrid2: TDBGrid;

Button1: TButton;

Label1: TLabel;

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

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form9: TForm9;

implementation

uses Unit4, Unit8;

{$R *.dfm}

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

begin

form4.show;

end;

procedure TForm9.Button1Click(Sender: TObject);

begin

form8.QuickRep1.DataSet.Filter:='test='+quotedstr(form1.ADOQuery1.FieldValues['test']);

form8.QuickRep1.DataSet.Filtered:=true;

form8.QuickRep1.Preview;

end;

end.

СПИСОК СОКРАЩЕНИЙ

АИС - автоматизированная информационная система;

АРМ - автоматизированное рабочее место;

АСУ - автоматизированные системы управления;

БД - база данных;

OC - операционная система;

ТБ - техника безопасности;

ОТ - охрана труда;

ПБ - пожарная безопасность;

ГОСТ - государственный стандарт;

СУБД - система управления базами данных;

ТЭП - технико-экономические показатели;

ВЦ - вычислительный центр;

ЭВМ - электранно- вычислительная машина;

ПЭВМ - персональная электранно- вычислительная машина;

КПД - коэффициент полезного действия.

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


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

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