Смекни!
smekni.com

Разработка автоматизированной системы заполнения первичной документации предприятия (стр. 15 из 18)

Правила пожарной безопасности

Помещения, в которых проводятся работы с использованием персональных компьютеров, а также сами компьютеры содержат большое количество горючих и легковоспламеняющихся материалов. Поэтому, для устранения опасности возникновения пожара при оборудовании и эксплуатации помещений, предназначенных для работы с ПЭВМ, следует соблюдать “Правила пожарной безопасности Российской Федерации”[2]. В соответствии с этими правилами на 100 м2площади таких помещений должен располагаться минимум 1 огнетушитель углекислого типа.

Защита рабочих от поражения электрическим током

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

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


ЗАКЛЮЧЕНИЕ

В процессе работы над данным дипломным проектом мне пришлось столунуться с рядом достаточно сложных проблем, для решения которых пришлось пополнить некоторые теоретические знания и практические знания, как по общей теории баз данных, так и реализации приложений баз данных в среде визуального программирования Delphi. Именно на данную систему программирования и пал мой выбор после получения технического задания, содержащего все требования к функциональным характеристикам программы. Данный выбор не случаен. BorlandDelphi 7.0 является, по-моему грлубочайшему убеждению одной из самых лучших (если не самой лучшей) системой по написанию приложений баз данных. Эта система имеет широкие возможности по реализации СУБД самой различной конфигурации и архитектуры, что в сочетании с гибгим и достаточно структурированным язком программирования ObjectPascal дает Delphiогромное преимущество в сравнении с другими подобными системами.

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

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

Программа занимает на диске до 15-ти мегабайт. В оперативной памяти программа вместе со всеми загруженными библиотеками DLL занимает 11 килобайт. Так как программа использует технологии баз данных, то это увиличивает требования к свободной оперативной памяти компьютера и минимальным объемом, при котором программа работает с приемлимым быстродействием, составляет 32 мегабайта.

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

В завершении хочется отметить, что данный проект (программа «D-ArtAurorav.1.0») не будет заброшен и разработка новых версий не заставит себя ждать, возможности программы будут расширены, но основной принцип всех моих программ, «Максимум пользы, при минимуме сложности», останется неизменным.


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

1. Робинсон С. – MicrosoftAccess 2000: учебный курс – СПб.: Питер, 2002.

2. Валерий Фаронов – Delphi 6: учебный курс – СПб.: Питер, 2002.

3. Валерий Фаронов – Программирование баз данных в Delphi 6: учебный курс – СПб.: Питер, 2002.

4. Валерий Фаронов – Профессиональная работа в Delphi 6. Библиотека программиста. – СПб.: Питер, 2002

5. Елманова Н. – Delphi 6 и технология COM. – СПб.: Питер, 2002

6. Базы данных: Учебник для высших учебных заведений /Под ред. проф. А.Д. Хомоненко. – СПб.: КОРОНА принт, 2000


ПРИЛОЖЕНИЕ 1

«Листинг программы D-ArtAurorav.1.0»

(ПРОЕКТAURORA.DPR)

{D-Art® Aurora® v.1.0. © D-ArtSoftwareCorporation - 2003-2004.

All Copyrights are protected. Only personal use.

Not legal sale - is forbidden! }

Program Aurora;

uses

Forms,

SysUtils,

Controls,

Av_General in 'Av_General.pas' {General},

Av_Data in 'Av_Data.pas' {P_Data: TDataModule},

Sub_Program in 'Sub_Program.pas',

Load in 'Load.pas' {LoadF},

Av_Nuclls in 'Av_Nuclls.pas' {Nucll},

Av_DBData in 'Av_DBData.pas' {DB_Data: TDataModule},

Calend in 'Calend.pas' {Calen},

Av_ListRed in 'Av_ListRed.pas' {ListRed},

Av_ManyW in 'Av_ManyW.pas' {Many_List},

Av_Querys in 'Av_Querys.pas' {FQuery},

Av_Find in 'Av_Find.pas' {FFind},

Av_QLibrary in 'Av_QLibrary.pas' {QLib},

Av_ActionNow in 'Av_ActionNow.pas' {AN},

Av_FSort in 'Av_FSort.pas' {FSort},

Av_Print in 'Av_Print.pas' {FPrint},

Registry,

Av_Reports in 'Av_Reports.pas' {FReport},

Av_Pwrd in 'Av_Pwrd.pas' {FPwrd},

Av_ClearT in 'Av_ClearT.pas' {Form1},

Av_Exp in 'Av_Exp.pas' {FExp},

Av_Help in 'Av_Help.pas' {FHelp};

var

Aurora_Reg: TRegistry;

{$R *.res}

begin

{-----------------Начальные значения переменных------------}

First_load := True; //Устанавливает запуск программы (=>Av_General)

Can_RS := False; //Запрещает менять размеры рабочего окна (=>Av_Nuclls)

//Set_Top := True; //Разрешаем мнять местоположение рабочего окна (=>Av_Nuclls)

TAMode := am_None; //Устанавливаем состаяние НД(N_Gen) - НД не менялся (=>Av_Nuclls)

//i := 1; //Счетчик массива номеров записей для удаления (=>Av_Nucll)

SV_Click := False;

CH_F := False;

CH_F2 := False;

Del_Q := 0;

//NumNewF := 0;

//ShowMEssage(Prog_Dir);

{-----------------Начальные значения (конец)---------------}

Application.Title := 'D-Art: Aurora v.1.0';

Application.CreateForm(TGeneral, General);

Application.CreateForm(TLoadF, LoadF);

Application.CreateForm(TP_Data, P_Data);

Application.CreateForm(TDB_Data, DB_Data);

Application.CreateForm(TCalen, Calen);

Application.CreateForm(TListRed, ListRed);

Application.CreateForm(TMany_List, Many_List);

Application.CreateForm(TFFind, FFind);

Application.CreateForm(TQLib, QLib);

Application.CreateForm(TAN, AN);

Application.CreateForm(TFSort, FSort);

Application.CreateForm(TFPrint, FPrint);

Application.CreateForm(TFPwrd, FPwrd);

Application.CreateForm(TForm1, Form1);

Application.CreateForm(TFExp, FExp);

Application.CreateForm(TFHelp, FHelp);

Application.Initialize;

{-----------------Реестр Windows---------------------------}

Aurora_Reg := TRegistry.Create;

//Считываем значения из системного реестра

WithAurora_RegDo

begin

OpenKey('\Software\D-Art Soft\Aurora',True);

If not ValueExists('Work_dir') Then

WriteString('Work_dir',ExtractFileDir(ExpandFileName('Aurora.exe')) + '\D_bc\');

If not ValueExists('Prog_dir') Then

WriteString('Prog_dir',ExtractFileDir(ExpandFileName('Aurora.exe')) + '\');

If not ValueExists('NDS') Then

WriteFloat('NDS',0.18);

If not ValueExists('NSP') Then

WriteFloat('NSP',0.05);

If not ValueExists('Ent_name') Then

WriteString('Ent_name','(Нетданных)');

If not ValueExists('Sort_nuclls') Then

WriteString('Sort_nuclls','Num ASC');

Nds_v := ReadFloat('NDS');

Nsp_v := ReadFloat('NSP');

Work_dir := ReadString('Work_dir');

Prog_dir := ReadString('Prog_dir');

Name_E := ReadString('Ent_name');

//Определяемустановленлипароль

If not ValueExists('PassWord') Then WriteString('PassWord','')

Else

begin

rpw := ReadString('PassWord');

If rpw <> '' Then

If FPwrd.ShowModal = mrCancel Then Application.Terminate;

end;

end;

{-----------------Реестр Windows (конец)-------------------}

Application.Run;

end.

(МОДУЛЬ AV_NUCLLS.PAS)

unit Av_Nuclls;

interface

uses

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

Dialogs, ComCtrls, ToolWin, ExtCtrls, StdCtrls, Mask, DBCtrls,

Grids, DBGrids, Buttons, ADODB, DB, Registry;

type

TNucll = class(TForm)

Redactor: TGroupBox;

E_Num: TDBEdit;

E_Sum: TDBEdit;

Tools: TControlBar;

Navig: TToolBar;

Grid: TDBGrid;

E_Date: TDBEdit;

DBEdit6: TDBEdit;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Label4: TLabel;

Label5: TLabel;

Label6: TLabel;

Label7: TLabel;

Date_B: TButton;

Label8: TLabel;

Work_B: TButton;

Client_B: TButton;

FioO_B: TButton;

StatO_B: TButton;

Label9: TLabel;

StatP_B: TButton;

B_NSP: TDBCheckBox;

B_Sile: TDBCheckBox;

B_Many: TDBCheckBox;

Label10: TLabel;

Bevel2: TBevel;

DBEdit3: TDBEdit;

Label11: TLabel;

DBEdit4: TDBEdit;

Label12: TLabel;

E_FioP: TDBEdit;

Save: TToolButton;

Add: TToolButton;

Del: TToolButton;

Edit: TToolButton;

Next: TToolButton;

Prior: TToolButton;

ToolButton7: TToolButton;

View: TToolButton;

Help: TToolButton;

ToolButton10: TToolButton;

L_Work: TDBComboBox;

L_Client: TDBComboBox;

L_FioO: TDBComboBox;

L_StatO: TDBComboBox;

L_StatP: TDBComboBox;

Work_A: TBitBtn;

Client_A: TBitBtn;

FioO_A: TBitBtn;

StatO_A: TBitBtn;

StatP_A: TBitBtn;

Lst_Many: TButton;

Ap_Button: TToolBar;

Red_LST: TToolButton;

ToolButton2: TToolButton;

MB_LST: TToolButton;

MoveBy_P: TToolButton;

ToolButton9: TToolButton;

ToolButton11: TToolButton;

ToolButton12: TToolButton;

ToolButton13: TToolButton;

ToolButton14: TToolButton;

ToolButton4: TToolButton;

MoveBy_N: TToolButton;

ToolButton3: TToolButton;

Bevel1: TBevel;

procedure FormResize(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure FormActivate(Sender: TObject);

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

procedure Date_BClick(Sender: TObject);

procedure Work_BClick(Sender: TObject);

procedure EditClick(Sender: TObject);

procedure SaveClick(Sender: TObject);

procedure AddClick(Sender: TObject);

procedure DelClick(Sender: TObject);

procedure PriorClick(Sender: TObject);

procedure NextClick(Sender: TObject);

procedure B_ManyClick(Sender: TObject);

procedure Lst_ManyClick(Sender: TObject);

procedure Work_AClick(Sender: TObject);

procedure Client_BClick(Sender: TObject);

procedure Client_AClick(Sender: TObject);

procedure FioO_BClick(Sender: TObject);

procedure FioO_AClick(Sender: TObject);

procedure StatO_AClick(Sender: TObject);

procedure StatO_BClick(Sender: TObject);

procedure StatP_BClick(Sender: TObject);

procedure StatP_AClick(Sender: TObject);

procedure Red_LSTClick(Sender: TObject);

procedure MoveBy_PClick(Sender: TObject);

procedure MoveBy_NClick(Sender: TObject);

procedure E_NumEnter(Sender: TObject);

procedure E_NumExit(Sender: TObject);

procedure GridExit(Sender: TObject);

procedure GridEnter(Sender: TObject);

procedure MB_LSTMouseDown(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X, Y: Integer);

procedure GridDblClick(Sender: TObject);

procedure HelpClick(Sender: TObject);

procedure E_SumEnter(Sender: TObject);

procedure E_DateEnter(Sender: TObject);

procedure E_DateExit(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Nucll: TNucll;

Can_RS: boolean;{Определяетнужноменятьразмерырабочегоокна}

TAMode{Определяет различные состояния набора данных N_Gen (=>Av_DBData)}: byte;

CH_F, CH_F2, NoATL, SV_Click, No_Adding, InGRD, Exec, CL_Click, SMM: boolean;