Автор работы: Пользователь скрыл имя, 27 Июня 2013 в 11:38, курсовая работа
Разработать модель распределенной реляционной базы данных предприятия, состоящего из главного производства и нескольких удаленных филиалов. Части предприятия связаны компьютерной сетью, имеют собственные локальные базы данных, могут использовать данные удаленных узлов. Глобальная информация хранится на центральном узле.
Разработать приложение, обеспечивающее создание, модификацию и поиск данных. Считать, что все локальные базы размещены на одном компьютере.
Разработать модель распределенной
реляционной базы данных предприятия,
состоящего из главного производства
и нескольких удаленных филиалов.
Части предприятия связаны
Разработать приложение, обеспечивающее создание, модификацию и поиск данных. Считать, что все локальные базы размещены на одном компьютере.
Требования:
Последовательность выполнения работы:
Структура пояснительной записки:
2. Описание структуры и функционирования предприятия
Медицинское учреждение состоит из трех отделений: отдела администрации, хирургического отдела, глазного отдела.
Отдел администрации осуществляет управленческую деятельность в медицинском учреждении. К полномочиям администрации медицинского учреждения относятся: управление и контроль над работой отделов, путем принятия решений в проводящихся совещаниях, назначение и освобождение от должности их сотрудников; внесение в отделы предложений по реконструкции отделов, приобретению нового оборудования, техники, персонала, медикаментов необходимых для правильного функционирования медицинского учреждения и др.
Руководитель администрации – должностное лицо, директор, возглавляющий медицинское учреждение. Руководитель администрации вносит в темы совещания проекты программ и планов социально-экономического развития медицинского учреждения, отчеты об их исполнении.
Заместитель руководителя назначается на должность и освобождается от должности приказами руководителя администрации. Должностные инструкции заместителя руководителя а утверждаются руководителем медицинского учреждения.
Организация работы медицинского учреждения осуществляется в соответствии с его функциями и полномочиями на основе планов работы. Планы работы являются основой планирования работы сотрудников администрации. Предложения в планы работы вносятся заместителем руководителя, заведующими отделениями медицинского учреждения не позднее, чем за неделю до планируемого периода для их утверждения. К предложениям прилагается справка-отчет о выполнении плана работы за предыдущий период. План работы администрации утверждается распоряжением руководителя администрации медицинского учреждения.
В администрации проводятся совещания с сотрудниками медицинского учреждения.
По результатам совещания руководитель может давать письменные поручения сотрудникам с определением сроков их исполнения. Контроль за исполнением поручений осуществляется руководителем медицинского учреждения.
Хирургическое и глазное отделы являются отраслевым органом администрации медицинского учреждения, обслуживающими и оказывающими соответствующую помощь пациентам медицинского учреждения.
Отделение возглавляет заведующий отделением. Директор медицинского учреждения принимает на работу и увольняет в соответствии с действующим законодательством сотрудников, применяет к ним меры поощрения и дисциплинарной ответственности, принимает решение об осуществлении в установленном порядке компенсационных и стимулирующих выплат; утверждает должностные инструкции сотрудников.
Отделы медицинского учреждения периодически сдают отчет в отдел администрации, связанной с выполненной работой за определенный период. Ответственным за сдачу отчета назначается определенный сотрудник отдела.
3. Создание модели данных
Работа отдела администрации
Работа хирургического отдела
Работа глазного отдела
3.2. Модель «сущность-связь» БД медицинского учреждения
Диаграмма сущность-связь для отдела администрации
Диаграмма сущность-связь для
3.3. Реляционная модель БД
Реляционная модель БД отдела администрации
Реляционная модель БД хирургического и глазного отделов
4. Описание БД
Система автоматизирующая работу медицинского учреждения состоит из трех баз данных реализованных в СУБД Interbase:
1. БД Администрация (BDAdministrasija)
Create table Sotrudniki //таблица сотрудников
(Ident_str char(5) not null,
FIO char(25) not null,
Birthday char(10) not null,
Telephone char(15) not null,
Address char(45) not null,
Dolgnost char(20) not null,
Primary Key (Ident_str));
Create Table Sovechanija //таблица совещаний
(Ident_sovech char(5) not null,
Tema char(25) not null,
Data_proved char(10) not null,
Vrermja_proved char(5) not null,
Otvetstvennij char(30) not null,
Ident_str char(5),
Primary key (Ident_sovech));
Create Table Plani //таблица планов
(Ident_plan char(5) not null,
Porychenija char(55) not null,
Srok_Vipol char(15) not null,
Data_sdachi char(10) not null,
Rukovoditel char(25) not null,
Ident_str char(5),
Primary Key (Ident_plan));
CREATE GENERATOR GenSotr; //генератор номера сотрудника
SET GENERATOR GenSotr TO 5555;
SET TERM !! ;
CREATE TRIGGER TrSovechanija FOR Sotrudniki //Совещания руководите
ACTIVE
AFTER DELETE // его из таблицы Сотрудники
AS
BEGIN
DELETE FROM Sovechanija WHERE Sotrudniki.FIO=Sovechanija.
END!!
SET TERM;!!
SET TERM!! ; //триггер, генерирующий номера сотрудников
CREATE TRIGGER TrSotr FOR Sotrudniki
ACTIVE
BEFORE INSERT
AS
BEGIN
NEW.Ident_str=GEN_ID (GenSotr, 1);
END!!
SET TERM !! ; //хранимая процедура, выводящая фамилии найденных
CREATE PROCEDURE pSotrudniki(ipDolgnost char (15)) // сотрудников,
RETURNS (opFIO CHAR (25)) // при поиске их по
AS // должностям
BEGIN
FOR SELECT FIO
FROM Sotrudniki
WHERE Dolgnost=:ipDolgnost
INTO: opFIO
DO SUSPEND;
END!!
SET TERM;!!
Create table Sotrudniki //таблица сотрудников
(Ident_str char(5) not null,
FIO char(25) not null,
Birthday char(10) not null,
Telephone char(15) not null,
Address char(45) not null,
Dolgnost char(20) not null,
Primary Key (Ident_str));
Create table Pocienti //таблица пациентов
(Ident_poc char(5) not null,
FIO char(25) not null,
Birthday char(10) not null,
Telephone char(15) not null,
Address char(45) not null,
Istorija_bolezni char(20) not null,
Data_Postyplenija char(10) not null,
Data_Vipiski char(10) not null,
Obslygiv_Vrach char(25) not null,
Ident_str char(5),
Primary Key (Ident_poc));
Create Table Otcheti //таблица отчетов
(Ident_otch char(5) not null,
Tema char(25) not null,
Data_cdachi char(10) not null,
Otvetcvennij char(30) not null,
Ident_str char(5),
Primary key (Ident_otch));
CREATE GENERATOR GenSotr; //генератор номера сотрудника
SET GENERATOR GenSotr TO 5555;
SET TERM!! ; //триггер, генерирующий номера сотрудников
CREATE TRIGGER TrSotr FOR Sotrudniki
ACTIVE
BEFORE INSERT
AS
BEGIN
NEW.Ident_str=GEN_ID (GenSotr, 1);
END!!
SET TERM !! ; //тригер, для удаления из таблицы Пациенты
CREATE TRIGGER TrPocienti FOR Sotrudniki // обслуживающего врача, в
ACTIVE
// случае удаления его из таблицы
Сотрудники
AFTER DELETE
AS
BEGIN
DELETE FROM Pocienti WHERE Sotrudniki.FIo=Pocienti.
END!!
SET TERM ; !!
Create table Sotrudniki //таблица сотрудников
(Ident_str char(5) not null,
FIO char(25) not null,
Birthday char(10) not null,
Telephone char(15) not null,
Address char(45) not null,
Dolgnost char(20) not null,
Primary Key (Ident_str));
Create table Pocienti //таблица пациентов
(Ident_poc char(5) not null,
FIO char(25) not null,
Birthday char(10) not null,
Telephone char(15) not null,
Address char(45) not null,
Istorija_bolezni char(20) not null,
Data_Postyplenija char(10) not null,
Data_Vipiski char(10) not null,
Obslygiv_Vrach char(25) not null,
Ident_str char(5),
Primary Key (Ident_poc));
Create Table Otcheti //таблица отчетов
(Ident_otch char(5) not null,
Tema char(25) not null,
Data_cdachi char(10) not null,
Otvetcvennij char(30) not null,
Ident_str char(5),
Primary key (Ident_otch));
CREATE GENERATOR GenSotr; //генератор номера сотрудника
SET GENERATOR GenSotr TO 5555;
SET TERM!! ; //триггер, генерирующий номера сотрудников
CREATE TRIGGER TrSotr FOR Sotrudniki
ACTIVE
BEFORE INSERT
AS
BEGIN
NEW.Ident_str=GEN_ID(GenSotr,
END!!
SET TERM !! ; //тригер, для удаления из таблицы Пациенты
CREATE TRIGGER TrPocienti FOR Sotrudniki // обслуживающего врача, в
ACTIVE
// случае удаления его из таблицы
Сотрудники
AFTER DELETE
AS
BEGIN
DELETE FROM Pocienti WHERE Sotrudniki.FIo=Pocienti.
END!!
SET TERM ; !!
5. Описание работы программы
После запуска приложения, при открытии БД на выполнение появляется окно, в котором нужно ввести пароль. Если введен верный пароль, при нажатии на кнопку «ОК» появляется главная форма. Иначе, выводится сообщение об ошибке.
После успешной проверки пароля появляется форма выбора учреждения. Пользователь выбирает нужное ему на данный момент учреждение и нажимает на кнопку ОК. При нажатии на кнопку «Выход» приложение закрывается.
БД Администрация состоит из трех таблиц («Сотрудники», «Совещания», «Планы»).
На вкладке «Сотрудники» содержится информация о сотрудниках. Кнопка «Открыть» визуализирует набор данных. При помощи компонента DBNavigator можно редактировать, добавлять и удалять записи. После внесенных изменений БД можно обновить, нажав соответствующую кнопку. В таблице можно найти запись об интересующем сотруднике. Для этого в поле ввода достаточно ввести первые несколько букв его фамилии и курсор укажет нужную строку. Также можно реализовать поиск по должностям сотрудников. После завершения работы БД можно закрыть.
Информация о работе Разработка модели распределенной реляционной базы данных предприятия