Проектирование информационной системы «Отдел кадров»

Автор работы: Пользователь скрыл имя, 01 Июля 2013 в 11:07, курсовая работа

Краткое описание

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

Содержание

Введение 5
1 Информационная система 8 1.1 Общее представление 8
1.2 Анализ информационной системы «Отдел кадров» 17
2 Проектирование информационной системы «Отдел кадров» 19
2.1 Структура информационной системы 19
2.2 Описание процедур информационной системы «Отдел кадров» 23
Заключение 28
Список использованных источников

Прикрепленные файлы: 1 файл

moya_kursovaayaya.doc

— 1.01 Мб (Скачать документ)

          end;

        stringgrid1.Rows[otdel.kol_vo].Clear;

        //убираем лишнюю строку

        stringgrid1.RowCount := stringgrid1.RowCount - 1;

       change:=true;

      end;

    end else

    showmessage('невозможно  удалить запись');

end;

procedure TForm2.N12Click(Sender: TObject);

var i,j:integer; l : integer;

begin

       //сортировка  от а до я

 otdel.Sort;

  stringgrid1.RowCount := 2;

  for i := 1 to (otdel.kol_vo - 1) do

    begin

        stringgrid1.cells[0,i]:=inttostr(i);

        stringgrid1.cells[2,i]:= otdel.otdelkadrov[i].name;

        stringgrid1.cells[1,i]:= otdel.otdelkadrov[i].familia ;

        stringgrid1.cells[3,i]:= otdel.otdelkadrov[i].surname;

        stringgrid1.cells[4,i]:= otdel.otdelkadrov[i].dolzhnost;

        memo1.Lines[i]:=otdel.otdelkadrov[i].info;

        stringgrid1.cells[5,i]:= inttostr(otdel.otdelkadrov[i].pasport);

        stringgrid1.cells[6,i]:= inttostr(otdel.otdelkadrov[i].zarplata);

      stringgrid1.RowCount := stringgrid1.RowCount + 1;

    end;

end;

procedure TForm2.N13Click(Sender: TObject);

var i,j:integer;

 begin

   //сортировка от  я до а

  otdel.Sorted;

  stringgrid1.RowCount := 2;

  for i := 1 to (otdel.kol_vo - 1) do

    begin

        stringgrid1.cells[0,i]:=inttostr(i);

        stringgrid1.cells[2,i]:= otdel.otdelkadrov[i].name;

        stringgrid1.cells[1,i]:= otdel.otdelkadrov[i].familia ;

        stringgrid1.cells[3,i]:= otdel.otdelkadrov[i].surname;

        stringgrid1.cells[4,i]:= otdel.otdelkadrov[i].dolzhnost;

        memo1.Lines[i]:=otdel.otdelkadrov[i].info;

        stringgrid1.cells[5,i]:= inttostr(otdel.otdelkadrov[i].pasport);

        stringgrid1.cells[6,i]:= inttostr(otdel.otdelkadrov[i].zarplata);

 

      stringgrid1.RowCount := stringgrid1.RowCount + 1;

    end;

end;

procedure TForm2.N16Click(Sender: TObject);

begin

  //показываем окно  О программе

  ShellAbout(Form2.Handle, 'Автоматизированный отдел кадров',

  '(c Каштанов Алексей 201С 2013 год', Application.Icon.Handle);

end;

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

begin

  //закрыта главная  форма

  //закрываем все  приложение

  application.Terminate;

end;

end.

unit Unit3;  // модуль формы создания записи

interface

uses

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

  Dialogs, StdCtrls, Buttons, ExtCtrls, Unit2,my_class_methods;

type

  TForm3 = class(TForm)

    Image1: TImage;

    LabeledEdit1: TLabeledEdit;

    LabeledEdit2: TLabeledEdit;

    LabeledEdit3: TLabeledEdit;

    LabeledEdit4: TLabeledEdit;

    LabeledEdit5: TLabeledEdit;

    LabeledEdit6: TLabeledEdit;

    Memo1: TMemo;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    Label1: TLabel;

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form3: TForm3;

  current:integer;

implementation

{$R *.dfm}

procedure TForm3.BitBtn1Click(Sender: TObject);// отмена создания записи/базы

begin

     form2.show;

     form3.Hide;

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

     current:=1;

end;

procedure TForm3.BitBtn2Click(Sender: TObject); // вводим данные, сохраняем их в массив

begin

if (form3.LabeledEdit1.Text<>'') and (form3.LabeledEdit2.Text<>'') and

    (form3.LabeledEdit3.Text<>'') and (form3.LabeledEdit4.Text<>'') and

    (form3.LabeledEdit5.Text<>'') and (form3.LabeledEdit6.Text<>'') and

    (form3.Memo1.Lines.Count<>0)

    then

    begin  otdel.Dannue_add(form3.LabeledEdit1.Text,form3.LabeledEdit2.Text,form3.LabeledEdit3.Text,

form3.LabeledEdit4.Text,form3.Memo1.Lines.Text,strtoint(form3.LabeledEdit5.Text),

strtoint(form3.LabeledEdit6.Text));

form2.StringGrid1.cells[0,  current] := inttostr( current);

form2.stringgrid1.cells[1,  current]:= form3.LabeledEdit1.text;

form2.stringgrid1.cells[2,  current]:= form3.LabeledEdit2.Text;

form2.stringgrid1.cells[3,  current]:= form3.LabeledEdit3.Text;

form2.stringgrid1.cells[4,  current]:= form3.LabeledEdit4.Text;

form2.stringgrid1.cells[5,  current]:= form3.LabeledEdit5.Text;

form2.stringgrid1.cells[6,  current]:= form3.LabeledEdit6.Text;

otdel.otdelkadrov[current].info:=form3.Memo1.lines.Text;

form2.Memo1.Lines.Text:= otdel.otdelkadrov[current].info;

LabeledEdit1.Clear;

LabeledEdit2.Clear;

LabeledEdit3.Clear;

LabeledEdit4.Clear;

LabeledEdit5.Clear;

LabeledEdit6.Clear;

memo1.Clear;

inc(current);

form2.StringGrid1.RowCount:=form2.StringGrid1.RowCount+1;

change:=true;

form3.Close;

end else

begin

    showmessage('наобходимо ввести все поля');

 end;

end;

End.

unit Unit4; // модуль формы редактирования записи

interface

uses

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

  Dialogs, StdCtrls, Buttons, ExtCtrls, unit2, my_class_methods;

type

  TForm4 = class(TForm)

    Image1: TImage;

    LabeledEdit1: TLabeledEdit;

    LabeledEdit2: TLabeledEdit;

    LabeledEdit3: TLabeledEdit;

    LabeledEdit4: TLabeledEdit;

    LabeledEdit5: TLabeledEdit;

    LabeledEdit6: TLabeledEdit;

    Memo1: TMemo;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    Label1: TLabel;

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form4: TForm4;

implementation

{$R *.dfm}

procedure TForm4.BitBtn1Click(Sender: TObject);//отмена  редактирования записи

begin

     form2.show;

     form4.Hide;

end;

procedure TForm4.BitBtn2Click(Sender: TObject);// редактирование записи

begin

    if (form4.LabeledEdit1.Text<>'') and (form4.LabeledEdit2.Text<>'') and

    (form4.LabeledEdit3.Text<>'') and (form4.LabeledEdit4.Text<>'') and

    (form4.LabeledEdit5.Text<>'') and (form4.LabeledEdit6.Text<>'') and

    (form4.Memo1.Lines.Count<>0)

    then

    begin    otdel.Dannue_update(curent_row,form4.LabeledEdit1.Text,form4.LabeledEdit2.Text,form4.LabeledEdit3.Text, form4.LabeledEdit4.Text,form4.Memo1.Lines.Text,strtoint(form4.LabeledEdit5.Text),strtoint(form4.LabeledEdit6.Text));

form2.StringGrid1.cells[0,  curent_row] := inttostr( curent_row);

form2.stringgrid1.cells[1,  curent_row]:= form4.LabeledEdit1.text;

form2.stringgrid1.cells[2,  curent_row]:= form4.LabeledEdit2.Text;

form2.stringgrid1.cells[3,  curent_row]:= form4.LabeledEdit3.Text;

form2.stringgrid1.cells[4,  curent_row]:= form4.LabeledEdit4.Text;

form2.stringgrid1.cells[5,  curent_row]:= form4.LabeledEdit5.Text;

form2.stringgrid1.cells[6,  curent_row]:= form4.LabeledEdit6.Text;

otdel.otdelkadrov[curent_row].info:=form4.Memo1.lines.Text;

form2.Memo1.Lines.Text:= otdel.otdelkadrov[curent_row].info;

LabeledEdit1.Clear;

LabeledEdit2.Clear;

LabeledEdit3.Clear;

LabeledEdit4.Clear;

LabeledEdit5.Clear;

LabeledEdit6.Clear;

memo1.Clear;

change:=true;

form4.Close;

end else

begin

    showmessage('наобходимо  ввести все поля');

end;

end;

end.

unit Unit5;//модуль формы поиска

interface

uses

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

  Dialogs, ExtCtrls, StdCtrls, Grids, Buttons, my_class_methods;

type

  TForm5 = class(TForm)

    Image1: TImage;

    StringGrid1: TStringGrid;

    LabeledEdit1: TLabeledEdit;

    Bevel1: TBevel;

    BitBtn1: TBitBtn;

    Label2: TLabel;

    Label3: TLabel;

    Memo1: TMemo;

    Label1: TLabel;

    procedure BitBtn1Click(Sender: TObject);

    procedure LabeledEdit1Change(Sender: TObject);

    procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;

      var CanSelect: Boolean);

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

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form5: TForm5;

implementation

uses Unit2, Unit7;

{$R *.dfm}

procedure TForm5.BitBtn1Click(Sender: TObject); // назад на форму управления 

begin

    form2.show;

    form5.Hide;

end;

procedure TForm5.LabeledEdit1Change(Sender: TObject); // собственно поиск

    var

  i : integer;

  j : integer;

begin

  j := 1;

  form5.StringGrid1.RowCount := 2;

  form5.StringGrid1.Rows[1].Clear;

  form5.StringGrid1.Rows[2].Clear;

   for i := 1 to otdel.kol_vo do

    if pos(labelededit1.Text, otdel.otdelkadrov[i].familia) <> 0 then

      begin

        form5.StringGrid1.Cells[0, j] := form2.StringGrid1.Cells[0, i];

        form5.StringGrid1.Cells[1, j] := form2.StringGrid1.Cells[1, i];

        form5.StringGrid1.Cells[2, j] := form2.StringGrid1.Cells[2, i];

        form5.StringGrid1.Cells[3, j] := form2.StringGrid1.Cells[3, i];

        form5.StringGrid1.Cells[4, j] := form2.StringGrid1.Cells[4, i];

        form5.StringGrid1.Cells[5, j] := form2.StringGrid1.Cells[5, i];

        form5.StringGrid1.Cells[6, j] := form2.StringGrid1.Cells[6, i];

        inc (j);

        form5.StringGrid1.RowCount := form5.StringGrid1.RowCount + 1;

      end;

end;

procedure TForm5.StringGrid1SelectCell(Sender: TObject; ACol,

  ARow: Integer; var CanSelect: Boolean);

begin

    form5.Memo1.Clear;

     curent_row:=arow;

     if form5.StringGrid1.Cells[0, curent_row] <> '' then

     begin

     form5.Memo1.Clear;

     form5.Memo1.Lines.text:=otdel.otdelkadrov[strtoint(stringgrid1.cells[0, curent_row])].info;

     end;

end;

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

begin

  //возвращаем пользователя  на главную форму

  form2.Show;

  form5.Hide;

end;

procedure TForm5.FormCreate(Sender: TObject);

begin

  //ставим подписи столбцов

     form5.StringGrid1.Cells[0,0]:='№';

     form5.StringGrid1.Cells[1,0]:='Фамилия';

     form5.StringGrid1.Cells[2,0]:=' Имя   ';

     form5.StringGrid1.Cells[3,0]:='Отчество';

     form5.StringGrid1.Cells[4,0]:='Должность  ';

     form5.StringGrid1.Cells[5,0]:='Паспорт';

     form5.StringGrid1.Cells[6,0]:='Зарплата';

end;

end.

unit Unit6; //форма с графиком

interface

uses

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

  Dialogs, TeEngine, Series, StdCtrls, Buttons, ExtCtrls, TeeProcs, Chart, my_class_methods;

type

  TForm6 = class(TForm)

    Chart1: TChart;

    LabeledEdit1: TLabeledEdit;

    LabeledEdit2: TLabeledEdit;

    LabeledEdit3: TLabeledEdit;

    LabeledEdit4: TLabeledEdit;

    BitBtn1: TBitBtn;

    BitBtn2: TBitBtn;

    Series1: TBarSeries;

    procedure BitBtn1Click(Sender: TObject);

    procedure BitBtn2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form6: TForm6;

implementation

 

uses Unit2, Unit7;

{$R *.dfm}

procedure TForm6.BitBtn1Click(Sender: TObject); //на главную форму

begin

     form2.show;

     form6.Hide;

end;

procedure TForm6.BitBtn2Click(Sender: TObject); // если решили выйдти

begin

if change=true then

begin

if MessageDlg('Вы хотите сохранить измененные данные?',

    mtInformation, [mbYes, mbNo], 0) = mrYes then

    begin

    if form2.SaveDialog1.Execute then

       begin

         otdel.Save(form2.SaveDialog1.filename);

       end;

    end;

end;

    if MessageDlg('Вы  уверены, что хотите выйти?',

    mtConfirmation, [mbYes, mbNo], 0) = mrYes then

    begin

     form7.show;

     form6.Hide;

    end;

end;

end.

unit Unit7; //модуль последней завершающей формы

Информация о работе Проектирование информационной системы «Отдел кадров»