Базы данных по анкетам детей, оставшихся без попечения родителей для ОГОУ “Центра психолого-медико-социального сопровождения”

Автор работы: Пользователь скрыл имя, 26 Мая 2011 в 06:26, дипломная работа

Описание

Целью данного дипломного проекта являлось создание базы данных по анкетам детей, оставшихся без попечения родителей для ОГОУ “Центра психолого-медико-социального сопровождения”.

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

Содержание

Введение 5
Глава 1. Описание предметной области объекта автоматизации 7
1.1. Постановка задачи 7
1.2. Описание предметной области задачи 9
1.2.1. История ОГОУ ЦПМСС 9
1.2.2. Направление деятельности ОГОУ ЦПМСС 9
1.2.3. Структура ОГОУ ЦПМСС 10
1.2.4. Описание компьютерной сети 12
1.2.5. Декомпозиция бизнес-процессов 13
1.2.6. Построение объектной модели задачи 19
Глава 2. Проектирование базы данных и реализация приложения 24
2.1. Программные средства, используемые при реализации проекта 24
2.2. Базы данных 26
2.2.1. Классификация баз данных 28
2.2.2. Структурные элементы баз данных 29
2.3. Проектирование базы данных 30
2.3.1. Проектирование инфологической модели 31
2.3.2. Проектирование логической и физической модели 34
2.4. Описание серверной части клиент-серверного приложения 37
2.5. Описание клиентской части 38
клиент-серверного приложения 38
2.6. Проектирование тестов и тестирование 40
Глава 3. Организационно-экономическая часть 46
3.1. Оценка затрат на разработку АС 46
3.1.1. Материальные затраты 48
3.1.2. Затраты на оплату труда 48
3.1.3. Дополнительная заработная плата 49
3.1.4. Страховые взносы 49
3.1.5. Затраты на электроэнергию 50
3.1.6. Затраты на содержание и эксплуатацию оборудования 50
3.1.7. Амортизационные отчисления 51
3.1.8. Накладные расходы 51
3.1.9. Cводная таблица затрат на разработку и внедрение проекта 52
3.2. Оценка эффекта от внедрения АС 53
Заключение 55
Список литературы 57
Приложения 58

Работа состоит из  1 файл

Диплом итог.doc

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

//значения  ищутся по любому  совпадению в определенной  колонке

m:='';

if (StringGrid1.Cells[1,1]='') and (StringGrid1.Cells[1,2]='') and (StringGrid1.Cells[1,3]='') then

  ShowMessage('Укажите значения') else

begin

if RadioGroup1.ItemIndex=0 then

  begin

  dm.anketa.Close;

  dm.anketa.SelectSQL.Clear;

  dm.anketa.SelectSQL.Append('select anketa.id_a, anketa.fio, anketa.date_b, anketa.date_pr from anketa where anketa.fix_pay like '+chr(39)+'%'+StringGrid1.Cells[1,1]+'%'+chr(39)+' and anketa.sv_float like '+chr(39)+'%'+StringGrid1.Cells[1,2]+'%'+chr(39)+'and anketa.sv_float_doc like '+chr(39)+'%'+StringGrid1.Cells[1,3]+'%'+chr(39)+' order by fio');

  dm.anketa.Open;

  dm.anketa.First;

  dm.anketa.Last;

  dm.anketa.First;

  end;

if RadioGroup1.ItemIndex=1 then

  begin

  dm.anketa.Close;

  dm.anketa.SelectSQL.Clear; 

  if StringGrid1.Cells[1,3]='' then

  begin

   k3:='';

   m:='';

  end  else

  begin

  k3:='anketa.sv_float_doc like '+chr(39)+'%'+StringGrid1.Cells[1,3]+'%'+chr(39);

  m:=' or';

  end; 

  if StringGrid1.Cells[1,2]='' then

  begin

   k2:='';

  end  else

  begin

  k2:='anketa.sv_float like '+chr(39)+'%'+StringGrid1.Cells[1,2]+'%'+chr(39)+m;

  m:=' or';

  end; 

  if StringGrid1.Cells[1,1]='' then

  begin

   k1:='';

  end else

  begin

   k1:='anketa.fix_pay like '+chr(39)+'%'+StringGrid1.Cells[1,1]+'%'+chr(39)+m;

  end;

  b:='select anketa.id_a, anketa.fio, anketa.date_b, anketa.date_pr from anketa where '+k1+' '+k2+' '+k3+' order by fio';

  dm.anketa.SelectSQL.Append(b);

  dm.anketa.Open;

  dm.anketa.First;

  dm.anketa.Last;

  dm.anketa.First;

  end;

form1.DBGrid1.Columns[1].Title.Caption:='ФИО';

form1.DBGrid1.Columns[1].Width:=250;

form1.DBGrid1.Columns[2].Width:=150;

form1.DBGrid1.Columns[2].Title.Caption:='Дата рождения';

form1.DBGrid1.Columns[3].Width:=150;

form1.DBGrid1.Columns[3].Title.Caption:='Регистрация';

form1.DBGrid1.Columns[0].Width:=40;

form1.DBGrid1.Columns[0].Title.Caption:='Номер';

close;

end;

end; 

end. 

unit Unit8; 

interface 

uses

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

  Dialogs, Mask, inifiles, StdCtrls; 

type

  TForm8 = class(TForm)

    Edit1: TEdit;

    Button1: TButton;

    Button2: TButton;

    Label1: TLabel;

    Label2: TLabel;

    MaskEdit1: TMaskEdit;

    Label3: TLabel;

    procedure Button1Click(Sender: TObject);

    procedure Button2Click(Sender: TObject);

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

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

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form8: TForm8;

  mydir:string;

implementation 

uses Unit2, Unit1; 

{$R *.dfm} 

procedure TForm8.Button1Click(Sender: TObject);

var

IniFile:TIniFile;

serv,path:string;

begin

//подключается  к базе, данные  берутся из файла

//если  авторизация верна,  то открывает программу

//данные  об авторизации  хранятся в таблице  базы

IniFile := TIniFile.Create(GetCurrentDir+'\settings.INI');

serv:=IniFile.ReadString('Options','server','');

path:=IniFile.ReadString('Options','path','');

mydir:=IniFile.ReadString('Options','dir','');

DM.DB.DatabaseName:=serv+':'+path;

dm.DB.Connected:=true;

dm.IBQuery1.SQL.Clear;

dm.IBQuery1.SQL.Add('select * from use_acc where login='+chr(39)+Edit1.Text+chr(39)+' and pass='+chr(39)+MaskEdit1.Text+chr(39));

dm.IBQuery1.Open;

login_u:=Edit1.Text;

if dm.IBQuery1.RecordCount=0 then

begin

ShowMessage('Неправильно  указано имя или  пароль');

MaskEdit1.Text:='';

end

else

begin

  if dm.IBQuery1.FieldByName('login').AsString='admin' then

  form1.N7.Visible:=true

  else

  form1.N7.Visible:=false;

form1.show;

form8.Visible:=false;

end;

end; 

procedure TForm8.Button2Click(Sender: TObject);

begin

Application.Terminate;

end; 

procedure TForm8.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if key=#13 then MaskEdit1.SetFocus;

end; 

procedure TForm8.MaskEdit1KeyPress(Sender: TObject; var Key: Char);

begin

if key=#13 then Button1.Click;

end; 

end. 

unit Unit9; 

interface 

uses

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

  Dialogs, StdCtrls, Mask; 

type

  TForm9 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Button1: TButton;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Button2: TButton;

    Label8: TLabel;

    Label9: TLabel;

    ComboBox1: TComboBox;

    Label10: TLabel;

    Button3: TButton;

    Label11: TLabel;

    Button4: TButton;

    MaskEdit1: TMaskEdit;

    MaskEdit2: TMaskEdit;

    MaskEdit3: TMaskEdit;

    Label12: TLabel;

    ComboBox2: TComboBox;

    Button5: TButton;

    Label13: TLabel;

    Label14: TLabel;

    ComboBox3: TComboBox;

    Button6: TButton;

    Label15: TLabel;

    Label16: TLabel;

    ComboBox4: TComboBox;

    Button7: TButton;

    Label17: TLabel;

    Label18: TLabel;

    procedure Button2Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button4Click(Sender: TObject);

    procedure FormShow(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure ComboBox2Change(Sender: TObject);

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

    procedure Button6Click(Sender: TObject);

    procedure ComboBox3Change(Sender: TObject);

    procedure Button7Click(Sender: TObject);

    procedure Edit2Change(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form9: TForm9; 

implementation 

uses Unit2, Unit4, Unit1; 

{$R *.dfm} 

procedure TForm9.Button2Click(Sender: TObject);

var

ad:string;

begin

//обновление  пароля администратора

ad:='admin';

dm.IBQuery1.SQL.Clear;

if (MaskEdit1.Text<>MaskEdit2.Text) or (MaskEdit1.Text='') or (MaskEdit2.Text='') then

ShowMessage('пароль указан неверно')

else

begin

dm.IBQuery1.SQL.Clear;

ad:='update use_acc SET pass='+chr(39)+MaskEdit1.Text+chr(39)+' WHERE id_use=1';

dm.IBQuery1.SQL.Add(ad);

dm.IBQuery1.ExecSQL;

Label8.Caption:='пароль обновлен';

end;

form9.FormShow(sender);

end; 

procedure TForm9.Button1Click(Sender: TObject);

var

st:string;

begin

//добавление  нового пользователя  в базу

dm.IBQuery1.SQL.Clear;

if (Edit1.Text='') or (Edit2.Text='') or (MaskEdit3.Text='') then

ShowMessage('не  все поля заполнены')

else

if Label18.Caption='логин занят' then

ShowMessage('Логин занят')

else

begin

dm.IBQuery1.SQL.Clear;

st:='insert into use_acc (fio,login,pass) values ('+chr(39)+edit1.text+chr(39)+','+chr(39)+edit2.Text+chr(39)+','+chr(39)+maskedit3.Text+chr(39)+');';

dm.IBQuery1.SQL.Add(st);

dm.IBQuery1.ExecSQL;

Label9.Caption:='пользователь '+edit2.Text+' добавлен';

form9.FormShow(sender);

end;

end;

procedure TForm9.Button4Click(Sender: TObject);

begin

close;

end; 

procedure TForm9.FormShow(Sender: TObject);

var

i:integer;

begin

//открытие  формы, внос в  нее всех пользователей  базы

//выпускников снятых и стоящих на учете

Label13.Caption:='';

Label15.Caption:='';

ComboBox1.Text:='';

ComboBox1.Items.Clear;

dm.IBQuery1.Close;

  dm.IBQuery1.SQL.Clear;

  dm.IBQuery1.SQL.Add('select * from use_acc');

  dm.IBQuery1.Open;

  dm.IBQuery1.First;

  dm.IBQuery1.Last;

  dm.IBQuery1.First;

Информация о работе Базы данных по анкетам детей, оставшихся без попечения родителей для ОГОУ “Центра психолого-медико-социального сопровождения”