Пропускной пункт предприятия

Автор работы: Пользователь скрыл имя, 11 Декабря 2011 в 17:33, курсовая работа

Описание работы

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

Содержание работы

ВВЕДЕНИЕ 4
1 ОБЩАЯ ЧАСТЬ 6
1.1 Техническое задание на разработку программного продукта 6
1.2 Анализ средств программирования 9
2 СПЕЦИАЛЬНАЯ ЧАСТЬ 15
2.1 Описание алгоритма 15
2.2 Текст программы с описанием 15
2.3 Описание процесса отладки программы 16
3 ОРГАНИАЦИЯ ПРОИЗВОДСТВА 17
ЗАКЛЮЧЕНИЕ 18
СПИСОК ЛИТЕРАТУРЫ 19

Файлы: 1 файл

Мезин.doc

— 891.00 Кб (Скачать файл)

interface 

uses

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

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

  ComCtrls, TabNotBk, DBTables, Menus, Buttons, Mask, frxClass, frxDBSet; 

type

  TMenu1 = class(TForm)

    Label1: TLabel;

    TabbedNotebook1: TTabbedNotebook;

    ADOTable2: TADOTable;

    DataSource2: TDataSource;

    GroupBox2: TGroupBox;

    Edit3: TEdit;

    CheckBox3: TCheckBox;

    CheckBox4: TCheckBox;

    Edit4: TEdit;

    Button2: TButton;

    Button5: TButton;

    MainMenu1: TMainMenu;

    N1: TMenuItem;

    N2: TMenuItem;

    N3: TMenuItem;

    N4: TMenuItem;

    N5: TMenuItem;

    N6: TMenuItem;

    N7: TMenuItem;

    N8: TMenuItem;

    N9: TMenuItem;

    N10: TMenuItem;

    N11: TMenuItem;

    N12: TMenuItem;

    N13: TMenuItem;

    DBGrid4: TDBGrid;

    DataSource5: TDataSource;

    DBGrid2: TDBGrid;

    ADOQuery1: TADOQuery;

    DBGrid1: TDBGrid;

    ADOTable1: TADOTable;

    DataSource1: TDataSource;

    BitBtn1: TBitBtn;

    GroupBox5: TGroupBox;

    GroupBox6: TGroupBox;

    DBEdit4: TDBEdit;

    DBEdit2: TDBEdit;

    DBEdit1: TDBEdit;

    DBEdit3: TDBEdit;

    DBEdit5: TDBEdit;

    DBEdit6: TDBEdit;

    DBEdit9: TDBEdit;

    Label4: TLabel;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Label8: TLabel;

    Label9: TLabel;

    Label10: TLabel;

    DBEdit11: TDBEdit;

    DBEdit10: TDBEdit;

    DBEdit13: TDBEdit;

    DBEdit14: TDBEdit;

    DBEdit15: TDBEdit;

    Label11: TLabel;

    DBEdit16: TDBEdit;

    Label12: TLabel;

    Label13: TLabel;

    Label14: TLabel;

    Label15: TLabel;

    Label16: TLabel;

    ADOTable7: TADOTable;

    ADOTable8: TADOTable;

    DataSource8: TDataSource;

    DataSource9: TDataSource;

    DBNavigator1: TDBNavigator;

    DBNavigator2: TDBNavigator;

    DBEdit7: TDBEdit;

    DBEdit8: TDBEdit;

    Label17: TLabel;

    Label19: TLabel;

    DBEdit12: TDBEdit;

    Label20: TLabel;

    GroupBox1: TGroupBox;

    Edit1: TEdit;

    CheckBox1: TCheckBox;

    CheckBox2: TCheckBox;

    Edit2: TEdit;

    Button1: TButton;

    DataSource3: TDataSource;

    ADOTable3: TADOTable;

    DBGrid3: TDBGrid;

    GroupBox3: TGroupBox;

    Edit5: TEdit;

    CheckBox5: TCheckBox;

    CheckBox6: TCheckBox;

    Edit6: TEdit;

    Button3: TButton;

    Button4: TButton;

    Button8: TButton;

    frxReport1: TfrxReport;

    frxReport2: TfrxReport;

    frxReport3: TfrxReport;

    frxDBDataset1: TfrxDBDataset;

    frxDBDataset2: TfrxDBDataset;

    frxDBDataset3: TfrxDBDataset;

    ADOTable4: TADOTable;

    ADOTable5: TADOTable;

    ADOTable6: TADOTable;

    N14: TMenuItem;

    N15: TMenuItem;

    frxReport4: TfrxReport;

    frxDBDataset4: TfrxDBDataset;

    frxReport5: TfrxReport;

    frxReport6: TfrxReport;

    frxReport7: TfrxReport;

    frxDBDataset5: TfrxDBDataset;

    frxDBDataset6: TfrxDBDataset;

    frxDBDataset7: TfrxDBDataset;

    ADOTable9: TADOTable;

    Button6: TButton;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

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

    procedure Button3Click(Sender: TObject);

    procedure N10Click(Sender: TObject);

    procedure N8Click(Sender: TObject);

    procedure N9Click(Sender: TObject);

    procedure N11Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure Button8Click(Sender: TObject);

    procedure TabbedNotebook1Click(Sender: TObject);

    procedure FormActivate(Sender: TObject);

    procedure DBEdit6KeyPress(Sender: TObject; var Key: Char);

    procedure N4Click(Sender: TObject);

    procedure N12Click(Sender: TObject);

    procedure N13Click(Sender: TObject);

    procedure N5Click(Sender: TObject);

    procedure N6Click(Sender: TObject);

    procedure N7Click(Sender: TObject);

    procedure N15Click(Sender: TObject);

    procedure N14Click(Sender: TObject);

    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);

    procedure Button6Click(Sender: TObject); 
 

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Menu1: TMenu1;

  keyFields:string;

  keyValues:Variant;

  Options:TlocateOptions;

  i,q,w,Namber,Fam,Name,Sername:string;

  CanClose: Boolean;

  fileOut:TextFile;k,z:integer;

implementation 

uses Unit1, Unit2, Unit4, Unit8, Unit9, Unit10; 

{$R *.dfm} 

procedure TMenu1.Button1Click(Sender: TObject);

begin

if not (checkbox1.Checked or checkbox2.Checked) then begin

     messagedlg ('Не заданы условия поиска!!!',mtconfirmation,[mbok],0);  //Если не поставлены галочки напротив checkbox то выдаст сообщение

     exit;

   end;

   if (checkbox1.Checked=true and checkbox2.Checked=true) then begin

     keyFields:='Номермашины;фамилия';

     keyValues:=vararrayof([edit1.Text,edit2.Text]);                    //Сравнение данных по обоим полям "НомерМашины", "фамилия" введенных в Edit1,2 с содержимым БД

   end

   else begin

    if checkbox1.Checked then begin

     keyFields:='Фамилия';

     keyValues:=edit1.Text;      //Сравнение данных по полям "фамилия" введенных в Edit с содержимым БД

    end;

    if checkbox2.Checked then begin

     keyFields:='Номермашины';

     keyValues:=edit2.Text;       //Сравнение данных по полям  "НомерМашины" введенных в  Edit с содержимым БД

    end;

   end;

    options:=[loCaseInsensitive,loPartialKey];

    if not ADOtable1.Locate(keyFields,keyValues,options) then begin

      beep;

      messagedlg('Запись не найдена!!!',mtInformation,[mbok],0);    //Если не найдены записи то выдаст сообщение

      exit;

     end;

end; 

procedure TMenu1.Button2Click(Sender: TObject);

begin

if not (checkbox3.Checked or checkbox4.Checked) then begin

     messagedlg ('Не заданы условия поиска!!!',mtconfirmation,[mbok],0);   //Если не поставлены галочки напротив checkbox то выдаст сообщение

     exit;

   end;

   if (checkbox3.Checked=true and checkbox4.Checked=true) then begin

     keyFields:='Личныйнормеработника;фамилия';

     keyValues:=vararrayof([edit3.Text,edit4.Text]);                       //Сравнение данных по обоим полям "фамилия", "ЛичныйНомерРаботника" введенных в Edit1,2 с содержимым БД

   end

   else begin

    if checkbox3.Checked then begin

     keyFields:='Фамилия';

     keyValues:=edit3.Text;      //Сравнение данных по полям  "фамилия" введенных в Edit с содержимым БД

    end;

    if checkbox4.Checked then begin

     keyFields:='Личныйномерработника';

     keyValues:=edit4.Text;       //Сравнение данных по полям  "ЛичныйНомерРаботника" введенных  в Edit с содержимым БД

    end;

   end;

    options:=[loCaseInsensitive,loPartialKey];

    if not ADOtable2.Locate(keyFields,keyValues,options) then begin

      beep;

      messagedlg('Запись не найдена!!!',mtInformation,[mbok],0);       //Если не найдены записи то выдаст сообщение

      exit;

    end;

   end; 

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

begin

Glavnay1.Visible:=true;

end; 

procedure TMenu1.Button3Click(Sender: TObject);

begin

if not (checkbox5.Checked or checkbox6.Checked) then begin

     messagedlg ('Не заданы условия поиска!!!',mtconfirmation,[mbok],0);

     exit;                                                      //Если не поставлены галочки  напротив checkbox то выдаст сообщение

   end;

   if (checkbox5.Checked=true and checkbox6.Checked=true) then begin

     keyFields:='Личныйнормеработника;фамилия';

     keyValues:=vararrayof([edit5.Text,edit6.Text]);    //Сравнение данных по обоим  полям "ЛичныйномерРаботника", "фамилия" введенных в Edit1,2 с содержимым БД

   end

   else begin

    if checkbox5.Checked then begin

     keyFields:='Фамилия';

     keyValues:=edit5.Text;    //Сравнение данных по полям  "фамилия" введенных в Edit с содержимым БД

    end;

    if checkbox6.Checked then begin

     keyFields:='Личныйномерработника';

     keyValues:=edit6.Text;         //Сравнение данных по полям "Личныйномерработника" введенных в Edit с содержимым БД

    end;

   end;

    options:=[loCaseInsensitive,loPartialKey];

    if not ADOtable3.Locate(keyFields,keyValues,options) then begin

      beep;

      messagedlg('Запись не найдена!!!',mtInformation,[mbok],0);     //Если не найдены записи то выдаст сообщение

      exit;

       end;

end; 

procedure TMenu1.N10Click(Sender: TObject);

begin

z:=3;

TabbedNotebook1.ActivePage:='Отчет';

with menu1.ADOQuery1 do begin

Close;

SQL.Clear;

SQL.Add('SELECT *');    //выделить все поля в таблице Машины

SQL.Add('FROM Машины');

SQL.Add('Where НаОбъекте  LIKE "Да"');  //Дабовить все записи если значение в поле наобъекте равно Да

Информация о работе Пропускной пункт предприятия