Разработка информационно-поисковой системы - Программирование, компьютеры и кибернетика курсовая работа

Разработка информационно-поисковой системы - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Разработка информационно-поисковой системы

Автоматизация и визуализация рабочего места методиста факультета, работающего с личными делами студентов. Создание базы данных и ограничений. Интерфейс пользователя и порядок работы с программным обеспечением. Разработка справки и контекстной помощи.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Разработка информационно-поисковой системы
Базы данных - это совокупность структур, предназначенных для хранения больших объемов информации и программных модулей, осуществляющих управление данными, их выборку, сортировку и другие подобные действия. Информация базы данных хранится в одной либо нескольких таблицах. Любая таблица с данными состоит из набора однотипных записей, расположенных друг за другом. Они представляют собой строки таблицы, которые можно добавлять, удалять или изменять. Каждая запись является набором именованных полей, или ячеек, которые могут хранить самую разнообразную информацию, начиная от даты рождения и заканчивая подробным описанием домашнего адреса. Однотипные поля разных записей образуют столбец таблицы.
В БелГУТе существует автоматизированная система управления вузом, которая решает ряд определенных задач. Однако все задачи разобщены, но с другой стороны они взаимосвязаны. Так вновь прибывшие сотрудники, в том числе и преподаватели, проходят через отдел кадров, у которого своя система учета и фиксирования рабочих мест и кадров. При смене места работы или должности затрагиваются различные подразделения БелГУТа, которые связаны друг с другом некоторой общей информацией (Бухгалтерия). Таким образом, появляется необходимость централизации базы данных, дополнения ее информацией.
Для решения поставленной задачи были написаны различные триггеры, фиксирующие любые внесенные изменения, процедуры, выполняющие определенные действия, представления, для удобной визуализации разобщенной информации и клиентское приложение.
1.1 Описание предметной области и требуемых функций
Предметной областью данного курсового проекта является автоматизация и визуализация рабочего места методиста факультета, работающего с личными делами студентов.
При зачислении на каждого студента заполняется личная карточка, в которой указывается информация о факультете, специальности, специализации, фамилии, имени, отчестве поле, дате рождения, о мести проживания, гражданстве, выполняемой общественной работе, образовании, семейном положении, а так же сведенья о родителях. Кроме того к личной карточке студента прилагается фотография. Так же в карточке указывается номер зачетки и номер студенческого билета студента.
Кроме этого необходимо закрепить указанного студента за подгруппой. Так же необходимо внести информацию в случаи изменением данным студентом своей фамилии с указанием причины, по которой эта фамилия сменилась, а так же дату приказа и номер приказа.
Так же методисту факультета необходимо вести учет студентов участвующих в творческой деятельности с указанием вида искусства, а так же результатов, которых студент добился в своей области.
Кроме этого методисту необходимо вести учет студентов, которые выполняют общественную работу на факультете.
Так же методисту факультета необходимо формировать списки студентов по факультету и группе, и учитывать в них статус студента.
При необходимости методисту может произвести поиск студента по заданным критериям, а так же внести в справочники необходимую информацию при изменении каких-либо обстоятельств обучения(например добавлении нового иностранного языка).
1.2 Создание базы данных и ограничений
1 Приводятся структуры таблиц с описанием типа, размера и информации, хранящейся в каждом поле. В этом же разделе выполняется разработка скриптов для создания таблиц и ограничений базы данных.
Структура администрируемых таблиц и справочников приведена в таблицах 1 - 11.
Таблица 1-Student(Студенты БелГУТа).
Внешняя ссылка на Kind_Speciality (ID)
Внешняя ссылка на Kind _Affiliated_Societies (ID)
Внешняя ссылка на Kind_Foreign (ID)
Внешняя ссылка на Kind_Competition (ID)
Внешняя ссылка на Kind_Entrant (ID)
Внешняя ссылка на Kind_Maintenance (ID)
Внешняя ссылка на Kind_Citizenship (ID)
Внешняя ссылка на Kind_Marital_Status (ID)
Внешняя ссылка на Kind_Militarian (ID)
Внешняя ссылка на Kind _Department_Militarian (ID)
ВнешняяссылканаKind_Education_Type (ID)
ВнешняяссылканаKind_Student_Status (ID)
Таблица 2- Student_Family(семья студента).
Внешняя ссылка на Kind_Relation_Degree (ID)
Является ли родственник студентом БелГУТа
Внешняя ссылка на Student (ID) (допускает пустое значение)
Внешняя ссылка на Kind_Invalid (ID)
Таблица 3 - Student_Last_Name_Modify(данные о смене фамилии студентами).
Внешняя ссылка на Kind_Last_Name_Modify (ID)
Таблица 4 - Student_Actor(участие в художественной самодеятельности).
Вид художественной самодеятельности
Таблица 5 - Student_Work_Public(общественная работа).
Внешняя ссылка на Kind_Work_Public (ID)
Таблица 6 - Kind_Last_Name_Modify(справочник причин смены фамилии).
Таблица 7 - Kind_Art (справочник видов художественной самодеятельности).
Вид художественной самодеятельности
Таблица 8 - Kind_Work_Public (справочник видов общественных работ)
Таблица 9 - Kind_Foreign (справочник иностранных языков).
Таблица 10- Kind_Relation_Degree (справочник степеней родства).
Таблица 11 - Kind_Marital_Status (справочник видов семейного положения).
Для создания поля, которое заполняется автоматически при добавлении записи в таблицу, используется генератор, а для его вызова - триггер. Разработанные триггеры для протоколирования работы и таблицами и для реализации автоинкрементных полей (ID) всех таблиц приведены в приложении Б. Триггеры для протоколирования работы и таблицами вносят в таблицу Protocol следующие значения:
- операция (удаление, вставка, редактирование)
- старое значение редактируемого поля
- новое значение редактируемого поля
Триггер по заданию работает следующим образом: Если родственник является студентом БелГУТа, то поля, начиная с фамилии (Last_Name), заполняются с помощью триггера автоматически при добавлении записи или изменении поля «Является ли родственник сотрудником БелГУТа» (Middle_Student_ID). При пустом значении поля Middle_Student_IDэти поля должны заполняться вручную.
Второй триггер по заданию работает следующим образом:При добавлении записи в таблицу Student_Last_Name_Modify триггер заносит значение новой фамилии из поля new.Last_Name_Old в поле Last_Name таблицы Student, а значение поля Student(Last_Name) заносит в new. Last_Name_Old, т.е. меняет их местами. Таким образом, в таблицу при добавлении записи вставляется новая фамилия, а реально триггер поменяет ее местами со старой.
Для решения определенных задач используются специальные хранимые процедуры:
1. Locality_Address. По ID населенного пункта формирует его полный адрес (от государства и далее до населенного пункта) по таблицам Kind_Administrative_District и Kind_City. Возвращает строку с адресом.
2 .District_Locality_All. По ID административной единицы возвращает ID всех входящих в нее населенных пунктов.
3.District_District_Down.По ID административной единицы возвращает ID всех входящих в нее административных единиц более низкого уровня (одно вложение)
4. Locality_State.По ID населенного пункта возвращает ID государства, в которое он входит.
5.Locality_District.Входные параметры: ID населенного пункта и ID административной единицы.Определяет, входит ли данный населенный пункт в эту административную единицу. Учитывается любая вложенность ссылок. Возвращает 1 (true) или 0 (false).
6.Locality_Region.По ID населенного пункта возвращает ID района, в который он входит.
7.Locality_State.По ID населенного пункта возвращает ID области, в которую он входит.
Скрипт для процедур приведен в приложении Б.
2. Разработка руководства пользователя
2.1 Описание интерфейса пользователя и порядка работы с программным обеспечением
В приложении разработан парольный вход (рисунок 1), который позволяет ограничить доступ к приложению. Таким образом, выполняется необходимые условия для безопасного функционирования программы.
Рисунок 1 - Форма парольного входа в приложение.
Данная форма разделена на три части:
В части "Идентификация" находятся поля Логин и Пароль для парольного входа в приложение. При успешном подключении к базе данных становится активным главное окно программы (рисунок 2). Данная форма показывает главное меню:
Для дальнейшей работы необходимо выбрать интересующий раздел:
ь Поиск информации по различным параметрам.
ь Форма для формирования списков студентов
Порядок работы с формами справочников (и с большой частью таблиц) аналогичен, поэтому подробное описание приведем для одной формы.
Форма «Справочник видов искусств» содержит (рисунок 3):
Форма «Справочник видов искусств» решает следующие задачи:
- Редактирование уже существующей записи
Рисунок 3 - Форма для работы со справочником видов искусств.
Для реализации функции «редактирование» нужно выбрать в окне отображения данных необходимую строку (рисунок 3).
Нажать кнопку «Изменить» и корректировать нужную информацию, затем подтвердить изменения, нажав кнопку «Подтвердить» (рисунок 4).
Рисунок 4 - Форма для работы со справочником видов искусств.
Также в таблицах было реализовано окно для инкрементного поиска. Для начала работы нужно параметр, который необходимо найти (рисунок 5).
Для удаления ненужной информации необходимо выбрать нужную строку и нажать кнопку «Удалить». Появится соответствующее сообщение «О подтверждении». Нужно подтвердить или отменить действие, нажав кнопку «ДА» или «НЕТ» (рисунок 6).
Справочник видов общественных работ.
Форма «Справочник видов общественных работ» содержит(рисунок 7):
- идентификатор справочника видов общественных работ.
Рисунок 5 - Пример работы автоинкрементного поиска.
Рисунок 6 - Окно о подтверждении удаления.
Форма «Справочник видов общественных работ» решает следующие задачи (рисунок 7):
- Редактирование уже существующей записи
Справочник причин изменения фамилии.
Форма «Справочник причин изменения фамилии» содержит (рис. 8):
- идентификатор причин изменения фамилии
Форма «Справочник причин изменения фамилии» предоставляет возможности (рисунок 8):
Рисунок 7 - Форма для работы со справочником видов общественных работ.
Рисунок 8 - Форма для работы со справочником причин изменения фамилии.
- Редактирование уже существующей записи
Форма «Справочник иностранных языков» содержит (рисунок 9):
Форма «Справочник иностранных языков» предоставляет возможности (рисунок 9):
- Редактирование уже существующей записи
Рисунок 9 - Форма для работы с иностранными языками.
Форма «Справочник родственных отношений» содержит (рисунок 10):
- идентификатор вида родственных отношений
Форма «Справочник родственных отношений» предоставляет возможности (рисунок 10):
- Редактирование уже существующей записи
Рисунок 10 - Форма для работы с видами родственных отношений.
Форма «Справочник семейного статуса» содержит (рисунок 11):
- идентификатор вида семейного статуса
Форма «Справочник семейного статуса» предоставляет возможности (рисунок 11):
- Редактирование уже существующей записи
Рисунок 11 - Форма для работы с видами семейного статуса.
Таблица студентов изменивших фамилию.
Форма «Таблица студентов изменивших фамилию» содержит (рис. 12):
Форма «Таблица студентов изменивших фамилию» предоставляет возможности (рисунок 12):
- Редактирование уже существующей записи
Рисунок 12 - Форма для работы со студентами, изменившими фамилию.
Таблица студентов участвующих в творческой самодеятельности.
Форма «Таблица студентов участвующих в творческой самодеятельности» содержит (рисунок 13):
Форма «Таблица студентов участвующих в творческой самодеятельности» предоставляет возможности (рисунок 13):
- Редактирование уже существующей записи
Рисунок 13 - Форма для работы со студентами, участвующими в творческой деятельности.
Таблица студентов исполняющих общественные работы.
Форма «Таблица студентов исполняющих общественные работы» содержит (рисунок 14):
Форма «Таблица студентов исполняющих общественные работы» предоставляет возможности (рисунок 14):
- Редактирование уже существующей записи
Рисунок 14 - Форма для работы со студентами, участвующими в творческой деятельности.
Форма поиска позволяет осуществить поиск студента по различным параметрам (рисунок 15).
Осуществлен поиск студента, по таким параметрам как:
.Для выполнения поиска необходимо отметить галочками поля для поиска, и нажать кнопку «Поиск». Информация будет отображена на формы.
Рисунок 15 - Общий вид формы расширенного поиска по различным параметрам.
Работа с формой личной карточки студента.
Фильтрация нужной информации по специализации, группе и фамилии, имени, отчества студентов представлена в верхней левой части формы (рисунок 16).
Рисунок 16 - Фильтры по специализации, группе, и ФИО студента.
Для добавления, редактирования и удаления доступны следующая информация. (рисунок 17):
- Фотография (Загрузка оп нажатию на кнопку “Загрузка фотографии”)
- Образование (Учебное заведение и год окончания)
- Выполняемая работа до поступления в БелГУТ (Где и кем)
- Сведения о родителях (ФИО, дата рождения, должность, рабочий телефон, адрес и домашний телефон отца и матери)
Рисунок 17 - Пример работы формы для личной карточки студента.
Работа с формой закрепления студента за подгруппой.
Фильтрация нужной информации по специализации, группе и фамилии, имени, отчества студентов представлена в верхней левой части формы (рисунок 18).
Рисунок 18 - Фильтры по специализации, группе, и ФИО студента.
В данной форме мы можем изменять подгруппу студента. Пример приведен на рисунке 19
Рисунок 19 - Форма изменения подгруппы студента.
Списки студентов можно разделить на списки с основной информацией, а так же на списки с дополнительной информацией. К основной информации относят фамилию, имя, отчество студента, а так же группа и статус студента. Сначала идет формирования списка студентов, которые учатся на факультете, потом находящихся в академическом отпуске, затем те, кто на повторном курсе обучения.
К дополнительной информации относят
Для формирования списка мы должны выбрать факультет или группу для которой необходимо сформировать список, а затем выбрать какой вариант списка нас интересует (с основной или дополнительной информацией) . Пример показан на рисунке 20.
Рисунок 20 - Пример формирования списка для группы ЭМ-22.
Таблица 12 Список студентов с основной информацией
2.2 Разработка справки и контекстной помощи
Важным элементом приложения является интегрированная справочная система. И хотя многое очевидно для опытного пользователя, все равно всегда остаётся что-то, что нужно уточнить; кроме того, неопытные пользователи не могут свободно ориентироваться и правильно трактовать информацию, выводимую компьютером, т.е. понимать значение элементов меню, окон, диалогов или даже просто сообщений.
В курсовом проекте для создания справки используется программа Dr.Explain.
Простая и надёжная программа, для создания справочной документации в форматах HTML, CHM, RTF, PDF. Идеальный вариант для тех, кто хочет сделать качественную справку, не имея специальных знаний в данной области. Преимущества: простой и интуитивный интерфейс; встроенный модуль захвата экрана, который самостоятельно делит изображение на области; удобная панель инструментов; полезный редактор изображений, в котором можно расставить стрелки и подписи для объектов; мгновенный просмотр CHM и HTML; модуль проверки правописания. Недостатки: отсутствие многопользовательского редактирования; поддержка только основных форматов справки
Рисунок 21 - Вид окна контекстной помощи.
В данном разделе показаны примеры и описания работы со всеми таблицами и справочниками, поисковыми системами, формирования отчетности.
автоматизация интерфейс программный справка
Разработано программное обеспечение для методиста факультета. ПО решает следующие задачи:
- ввод и редактирование справочников и таблиц;
- ввод и редактирование личных карточек студентов БелГУТа;
- закрепление студентов БелГУТа за подгруппами;
- проверку корректности вводимых данных;
- поиск информации по различным критериям, в том числе по составным критериям (согласовывается с преподавателем).
Дополнительно реализованы такие задачи как:
-Удобный пользовательский интерфейс.
-Защита информации от несанкционированного доступа (права доступа).
Данная информационно-поисковая система полностью интегрирована в общую информационно-поисковую систему БелГУТа, что позволяет сделать вывод практической важности и целесообразности данной работы.
1. Архангельский А.Я. Программирование в C++Builder 6. - М.: Бином, 2003.
2. Архангельский А.Я.C++Builder 6. Справочное пособие. Книга 2. Классы и компоненты. - М.: Бином, 2002.
Реализованы следующие виды списков:
Список студентов с основной информацией
Список студентов с дополнительной информацией
Код хранимой процедуры Locality_Address
CREATE PROCEDURE "LOCALITY_ADDRESS"
("FULL_ADRESS" VARCHAR(100) CHARACTER SET WIN1251)
("FULL_ADRESS" VARCHAR(100) CHARACTER SET WIN1251)
DECLARE VARIABLE ID_DISTRICT_UP integer;
DECLARE VARIABLE BUFFER_NAME varchar(100);
DECLARE VARIABLE CITY_NAME varchar(100);
SELECT LOCALITY_NAME,ADMINISTRATIVE_DISTRICT_ID from kind_CITY where id=:ID_DEP INTO :CITY_NAME,:ID_DISTRICT_UP;
full_adress=full_adress ||' '|| CITY_NAME;
SELECT ADMINISTRATIVE_DISTRICT_ID,ADMINISTRATIVE_FULL_NAME from Kind_ADMINISTRATIVE_DISTRICT
where ID=:ID_DISTRICT_UP INTO :ID_DISTRICT_UP,:BUFFER_NAME;
full_adress=full_adress ||' '|| BUFFER_NAME;
Код хранимой процедуры District_Locality_All
CREATE PROCEDURE "DISTRICT_LOCALITY_ALL"
ALTER PROCEDURE "DISTRICT_LOCALITY_ALL"
DECLARE VARIABLE ID_DISTRICT integer;
FOR SELECT ID FROM Kind_City WHERE Administrative_District_ID=: ID_UP INTO:ID_DOWN
for SELECT ID FROM KIND_ADMINISTRATIVE_DISTRICT where ADMINISTRATIVE_DISTRICT_ID=:ID_UP INTO :ID_DISTRICT
for SELECT *FROM DISTRICT_LOCALITY_ALL(:ID_DISTRICT) INTO :ID_DOWN
КодхранимойпроцедурыDistrict_District_Down
CREATE PROCEDURE "DISTRICT_DISTRICT_DOWN"
ALTER PROCEDURE "DISTRICT_DISTRICT_DOWN"
FOR SELECT ID FROM KIND_ADMINISTRATIVE_DISTRICT WHERE ADMINISTRATIVE_DISTRICT_ID=:ID_UP INTO:ID_DOWN
Код хранимой процедуры Locality_State
DECLARE VARIABLE ID_DISTRICT_UP integer;
DECLARE VARIABLE ADMIN_LEVEL integer;
SELECT ADMINISTRATIVE_DISTRICT_ID from KIND_CITY where id=:ID_UP INTO: ID_DISTRICT_UP;
SELECT ADMINISTRATIVE_LEVEL_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ADMIN_LEVEL;
SELECT ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_DOWN;
SELECT ADMINISTRATIVE_DISTRICT_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_DISTRICT_UP;
Код хранимой процедуры Locality_Region
DECLARE VARIABLE ID_DISTRICT_UP integer;
DECLARE VARIABLE ADMIN_LEVEL integer;
SELECT ADMINISTRATIVE_DISTRICT_ID from KIND_CITY where id=:ID_CITY INTO: ID_DISTRICT_UP;
SELECT ADMINISTRATIVE_LEVEL_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ADMIN_LEVEL;
SELECT ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_REGION;
SELECT ADMINISTRATIVE_DISTRICT_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_DISTRICT_UP;
Код хранимой процедуры LOCALITY_STATE_AREAL
CREATE PROCEDURE "LOCALITY_STATE_AREAL"
ALTER PROCEDURE "LOCALITY_STATE_AREAL"
DECLARE VARIABLE ID_DISTRICT_UP integer;
DECLARE VARIABLE ADMIN_LEVEL integer;
SELECT ADMINISTRATIVE_DISTRICT_ID from KIND_CITY where id=:ID_CITY INTO: ID_DISTRICT_UP;
SELECT ADMINISTRATIVE_LEVEL_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ADMIN_LEVEL;
SELECT ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_REGION;
SELECT ADMINISTRATIVE_DISTRICT_ID FROM KIND_ADMINISTRATIVE_DISTRICT where id=:ID_DISTRICT_UP INTO: ID_DISTRICT_UP;
Так как триггеры выполняют аналогичные задачи, то рассмотрим триггер на примере таблицы «STUDENT_LAST_NAME_MODIFY»:
CREATE GENERATOR GEN_STUDENT_LAST_NAME_MODIFY_ID;
CREATE TRIGGER “STUDENT_Last_NAME_MODIFY_ID FOR STUDENT_LAST_NAME_MODIFY”
new.ID=GEN_ID(GEN_STUDENT_LAST_NAME_MODIFY_ID, 1);
CREATE TRIGGER "TR_STUDENT_LNM_INSERT" FOR "STUDENT_LAST_NAME_MODIFY"
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'insert', user, NEW.ID, NULL,
CREATE TRIGGER "TR_STUDENT_LNM_DELETE" FOR "STUDENT_LAST_NAME_MODIFY"
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'delete', user, OLD.ID, NULL,
CREATE TRIGGER "TR_STUDENT_LNM_UPDATE" FOR "STUDENT_LAST_NAME_MODIFY"
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'ID', OLD.ID, NEW.ID, 'NOW', 'NOW');
IF (OLD.Student_ID<>NEW.Student_ID) THEN
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'Student_ID', OLD.Student_ID, NEW.Student_ID, 'NOW', 'NOW');
IF (OLD.Order_Date<>NEW.Order_Date) THEN
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'Order_Date', OLD.Order_Date, NEW.Order_Date, 'NOW', 'NOW');
IF (OLD.Order_Number<>NEW.Order_Number) THEN
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'Order_Number', OLD.Order_Number, NEW.Order_Number, 'NOW', 'NOW');
IF (OLD.Last_Name_Modify_ID<>NEW.Last_Name_Modify_ID) THEN
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'Last_Name_Modify_ID', OLD.Last_Name_Modify_ID, NEW.Last_Name_Modify_ID, 'NOW', 'NOW');
IF (OLD.Last_Name_Old<>NEW.Last_Name_Old) THEN
INSERT INTO Protocol(Tablename, Typename, username, recordid, fieldname, oldvalue, newvalue, changedate, changetime) VALUES('STUDENT_LAST_NAME_MODIFY', 'edit', user, OLD.ID,
'Last_Name_Old', OLD.Last_Name_Old, NEW.Last_Name_Old, 'NOW', 'NOW');
6)Триггер по заданию(Если родственник является студентом БелГУТа, то поля, начиная с Last_Name, заполняются с помощью триггера автоматически при добавлении записи или изменении поля Middle_Student_ID. При пустом значении поля Middle_Student_ID эти поля должны заполняться вручную).
CREATE TRIGGER "STUDENT_FAMILY_RELATIVE_INSERT" FOR "STUDENT_FAMILY"
IF(new.MIDDLE_STUDENT_ID is not NULL) then
select Last_Name,First_Name,Middle_Name,Birth_Date, Home_Adress,Home_Phone,WORK_PLACE,WORK_POST,WORK_PHONE,ADDRESS_ENTERPRISE
where Student.ID=new.MIDDLE_STUDENT_ID
into :a,:b,:c,:e,:f,:g,:h,:j,:k,:l;
Специальный триггер 2 делает следующие дейтсвия:1 При добавлении записи в таблицу триггер заносит значение новой фамилии из поля new.Last_Name_Old в поле Last_Name таблицы Student, а значение поля Student(Last_Name) заносит в new.Last_Name_Old, т.е. меняет их местами. Таким образом, в таблицу при добавлении записи вставляется новая фамилия, а реально триггер поменяет ее местами со старой.
CREATE TRIGGER "TR_STUDENT_LNM" FOR "STUDENT_LAST_NAME_MODIFY"
select LAST_NAME from STUDENT where STUDENT.ID=STUDENT_LAST_NAME_MODIFY.STUDENT_ID into fam;
update STUDENT set STUDENT.LAST_NAME=new.LAST_NAME_OLD where STUDENT.ID=STUDENT_LAST_NAME_MODIFY.STUDENT_ID;
Рисунок21 - Пример HELP-файла для справочника «Виды искусств».
Рисунок 22 - Пример HELP-файла для поиска.
Рисунок 23 - Пример HELP-файла для формирования отчетов.
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
TKind_Work_Public *Kind_Work_Public;
//---------------------------------------------------------------------------
__fastcallTKind_Work_Public::TKind_Work_Public(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button1Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button2Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button3Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button4Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button5Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button6Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button7Click(TObject *Sender)
if(Application->MessageBox("Вы действительно хотите удалить запись ?","Внимание",MB_YESNO)==6){
IBQuery4->ParamByName("ID")->AsInteger=Edit2->Text.ToInt();
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button8Click(TObject *Sender)
IBQuery2->ParamByName("PUBLIC_WORK")->AsString=Edit1->Text;
IBQuery2->ParamByName("ID")->AsInteger=Edit2->Text.ToInt();
TKind_Work_Public::Button5Click(Sender);
IBQuery3->ParamByName("PUBLIC_WORK")->AsString=Edit1->Text;
IBQuery3->ParamByName("ID")->AsInteger=Edit2->Text.ToInt();
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button9Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::DataSource1DataChange(TObject *Sender,
Edit1->Text=IBQuery1->FieldByName("PUBLIC_WORK")->Value;
Edit2->Text=IBQuery1->FieldByName("ID")->Value;
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::FormCreate(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcallTKind_Work_Public::Button12Click(TObject *Sender)
WinExec("hh.exe html_help_source.chm::Kind_work_public.html", SW_SHOWNORMAL);
//---------------------------------------------------------------------------
Проектирование баз данных и автоматизация рабочего места лаборанта кафедры ИВТ. Анализ информационной системы. Разработка проектной документации в виде ER-диаграмм. Ознакомление с программным обеспечением "1С: Предприятие 8.0 - Версия для обучения". курсовая работа [661,2 K], добавлен 16.01.2014
Разработка информационной системы на языке программирования С++ в среде С++Builder. Схема базы данных. Характеристика энергосберегающих режимов операционной системы. Интерфейс программы, ее установка на компьютер, выполнение, средства и порядок испытания. отчет по практике [986,2 K], добавлен 06.02.2016
Создание приложения Windows, позволяющего автоматизировать процесс обработки информации студентов университета. Организация работы с физическими файлами в языках программирования. Изучение средств IDE Delphi для организации работы с текстовыми файлами. курсовая работа [1,5 M], добавлен 08.11.2011
Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя. курсовая работа [2,1 M], добавлен 14.11.2013
Описание разрабатываемой программы с точки зрения пользователя и программиста. Поэтапная разработка программной системы. Создание базы данных в Access. Разработка структуры классов. Создание структуры для хранения данных. Проектирование интерфейса. курсовая работа [1,4 M], добавлен 07.08.2013
Разработка web-приложения для оперирования данными с помощью базы данных и web-браузера в качестве клиента пользователя. Основные преимущества языка программирования Java. Осуществление редактирования, добавления информации и поиска по архивам данных. дипломная работа [2,1 M], добавлен 30.09.2016
Трудности проведения работы по учету научно-исследовательских работ студентов. Создание базы данных, принцип системы автоматизированного учета. Интерфейс для просмотра таблиц базы данных полностью и их редактирования. Тестирование программного средства. курсовая работа [2,6 M], добавлен 28.08.2012
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Разработка информационно-поисковой системы курсовая работа. Программирование, компьютеры и кибернетика.
Статья: British slang
Дипломная работа по теме Взаимная обусловленность мотивации и поведения потребителей
Реферат: Эффективность трафика с Вконтакте или как раскрутить магазин за один день
Технология Совершения Покупок 8 Класс Реферат
Реферат: Индо-буддистская культура
Реферат: Music In The Movies Experiencing Something New
Контрольная работа: Процедура импичмента. Скачать бесплатно и без регистрации
Реферат: Имидж страны с точки зрения коммуникации
Роль Общения В Жизни Человека Сочинение
Психологические Проблемы Лидерства Реферат
Дипломная Работа Социально Ответственный Маркетинг
Сочинение Мои Любимые Стихи Лермонтова 6 Класс
Книги Для Итогового Сочинения 2022
Смешные Моменты Сочинение
Реферат: Henry Viii Essay Research Paper Henry VIII
Женские Органы Реферат
Отчет По Практике Кфх
Реферат по теме Решение иррациональных уравнений
Сочинение Что Мешало Катерине Взмахнуть Крыльями
Реферат по теме Анализ ценностных ориентаций молодежи
Педагогічна технологія - Педагогика доклад
Особенности изучения художественного текста - Иностранные языки и языкознание курсовая работа
Українська преса на західноукраїнських землях по Першій світовій війні - Журналистика, издательское дело и СМИ контрольная работа


Report Page