Файл: Министерство энергетики, промышленности и связи ставропольского края.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 17.03.2024

Просмотров: 72

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Практическая работа №6-7


Тема: «Создание форм. Построение запросов и отчетов»

Цель: научиться создавать формы, строить запросы к СУБД и отчеты; закрепить приобретенные навыки.
Задание:

  1. Изучите «Пояснения к работе» и «Исходные данные к работе».

  2. Изучить создание формы и отчета печати сводной ведомости.

  3. Изучить создание формы и отчета список студентов определенной группы с указанием среднего балла.

  4. Создать СУБД с формами и отчетами по индивидуальному заданию из 3 практической рабботы.


Исходные данные для выполнения практических работ

Необходимо автоматизировать начисление стипендии для студентов в группах колледжа. Стипендия начисляется на основе среднего балла студента. Средний балл вводится из аттестационных ведомостей. Зачисление и отчисление студентов делается на основе приказов.
Запросы пользователей:

1-ый запрос - Расчетно- платежная ведомость по группе .....за(мес,год)

№ таб

ФИО

начисление

удержание

к выдаче

ПОДПИСЬ

1

Бармалеев С.С.

110.00

1.10

108.90




2

Годзилов Б.Б.

110.00

1.10

108.90





2-ой запрос - Сводная ведомость за (мес, год)

группа

начислено

удержано

к выдаче

ЭВМ-41

1500

15

1485.00

ЭВМ-42

2000

20

1980.00

ИТОГО

3500

35

3465.00



3 -й запрос - Список студентов определенной группы с указанием среднего балла

Структура программного комплекса

Ввод

Назначение st21

Отчет 1

Выход

- Зачисление

- st 11

- Ведомость по группам

- st31

- Отчисление

- st 12

- Сводная ведомость

- st32

- Ввод оценок

- st 13

- Списки студентов

- st33



Ход работы.

Создание проекта

Выберите в меню File - New - Project - NewFile.

Задайте имя папки, в которую будет помещен ваш проект и имя файла проекта (stipend(.Откроется диалоговое окно Project Manager, в котором выполните следующие действия:

  • на вкладке DATA выберите DATABASE, щелкните по кнопке ADD и выберите свою базу данных, чтобы включить ее в состав проекта.

  • на вкладке CODE выберите PROGRAMS, щелкните по кнопке NEW, чтобы включить в состав проекта главную программу, в которой будут выполняться команды установок, открытия базы данных и т.п.

В окне Program введите команды начальных установок:

SETCENTURYON && установить формат ГОД - 4-х значным

SETDATEFRENCH && установить французский формат даты

SETSAFETYOFF && отключить выдачу предупреждающих сообщений

PUBLICD1, D2, D3, D4 &&создать глобальные переменные для ввода

параметровотчетов

OPEN DA TABASE STIP

DO FORM ST0

CLOSEALL

*QUIT

Сохраните программу под именем prog_stip.

Создание формы для реализации главного меню программы (st0)

На вкладке DOCUMENTS диалогового окна Project Manager выберите FORMS, щелкните по кнопке NEW - NEW FORM, чтобы включить в состав проекта форму, на которой будут расположены кнопки для реализации главного меню программы.

Сохраните форму под именем STO.



В окне Инспектора объектов на вкладке АН задайте для формы свойство Caption = "Стипендия". Чтобы отобразить на экране панель инструментов, выберите View - Form Controls Toolbar. Установите на форме кнопку Command Buttonl, установите ее свойство Caption = "Зачисление студента".

В окне Инспектора объектов на вкладке Methods выберите Click Event и напишите для этого события код DO FORMST11

Установите на форме кнопки Button2 ("Отчисление студента"), Button3 (“Ввод оценок"), Button4 .. ("Расчет стипендии"), Button5 ("Печать ведомости по группам"), Button6 ("Печать сводной ведомости"), Button7 ("Списки студентов").

Сохраните форму и закройте ее .

Щелкните по кнопке Build в окне проекта Project Manager и в появившемся диалоговом окне выберите Application(App). Установите опции Display Error, Run After Build. Щелкните по кнопке OK, Fox создаст приложение на основе вашего проекта и запустит его на выполнение.

Создание формы для зачисления студентов (st11)

Выберите в меню File - New - Form - NewFile.

Задайте имя формы, и ее свойства: заголовок формы - свойство Caption = 'Зачисление студентов', ее размеры.

Для установки окружения формы щелкните правой кнопкой мыши по форме, выберите Data Environment и кнопкой Add добавьте таблицы базы данных - СТУДЕНТ и ГРУППА.

Установите на форме компонент Labell со свойством Caption - ‘Фамилия’, с помощью свойства Font... выберите параметры шрифта.

Установите на форме компонент TextBox1 для ввода фамилии студента.

Установите компоненты Label и TextBox для остальных полей таблицы, если нужно.

Установите компонент ComboBox для того, чтобы пользователь мог выбрать название группы, в которую зачисляет студента. Это удобно для пользователя и позволит ему избежать ошибок, возможных при вводе номера группы вручную.

Щелкните правой кнопкой мыши по компоненту ComboBox1, выберите Builder...

В появившемся диалоговом окне на вкладке List Items выберите поля таблицы ГРУППА: НАЗВАН И Е_ГРУППЫ и НОМЕР_ГРУППЫ.

На вкладке Value выберите в качестве возвращаемого значения поле НОМЕР ГРУППЫ. Установите на форме кнопку Command Button1 со свойством Caption -’Сохранить’ и кнопку Command Button2 со свойством Caption -’Отмена’ (Выйти без сохранения).

Для того, чтобы при щелчке по кнопке ’Сохранить’ производилась запись сведений студента в таблицу СТУДЕНТ на вкладке Method выберите для этой кнопки событие Click Event и напишите для него метод:

  • SQL- запрос для добавления записи в таблицу СТУДЕНТ

  • В поле FAM занесем введенный пользователем текст в TextBox1

  • В поле n_GRUP(HOMep группы) занесем преобразованное в числовой формат значение

  • номера группы, выбранное пользователем в Combo1


INSERT INTO STUDENT (FAM,n_GRUP);

VALUES (ThisForm.Text1.Text, VAL(ThisForm.Combo1.Value) )

  • Выдать для пользователя сообщение о вводе

MESSAGEBOX(ThisForm.Text1.Text-’Зачисленвгруппу '- ThisForm.Combo1.DisplayValue)

  • Освободить форму из памяти

ThisForm.Release

Запустите форму на выполнение (в окне Project Manager на вкладке Documents выберите Form – st0 и нажмите кнопку Run или щелкните правой кнопкой мыши по форме и выберите команду Run Form) и проверьте ее работоспособность.

Щелкните по кнопке Build в окне проекта, вновь создайте приложение Application(App) и запустите его на выполнение для проверки.

Создание формы для отчисления студентов (st12)

При отчислении студента нужно сначала выбрать группу, а затем из списка группы фамилию отчисляемого студента. Для выбора группы будем использовать компонент ComboBox, а для выбора фамилии студента - Grid. Фамилию выбранного студента будем отображать на форме с помощью метки.

Выберите в меню File - New - Form - NewFile.

Задайте имя формы, и ее свойства: заголовок формы - свойство Caption, ее размеры.

Сохраните форму под именем st12.

Для установки окружения формы щелкните правой кнопкой мыши, выберите DataEnvironment и кнопкой Add добавьте необходимые таблицы базы данных - СТУДЕНТ и ГРУППА.

Установите на форме компонент ComboBox1.

Щелкните правой кнопкой мыши по компоненту ComboBox1, выберите Builder...

В появившемся диалоговом окне на вкладке List Items выберите поля таблицы ГРУППА: НАЗВАНИЕ_ГРУППЫ и НОМЕР_ГРУППЫ.

Установите на форме компонент метка Label1 со свойством Caption = "Выберите группу" и разместите его слева или сверху от ComboBox1.

Установите на форме компонент Grid 1

Установите на форме компонент метка Label2 и разместите его под Grid 1.

Щелкнув правой кнопкой по компоненту Grid1, выберите Builder и задайте поля, отображаемые компонентом: №ТАБ, ФАМИЛИЯ, №ГРУППЫ (это можно сделать также с помощью установки свойства ControlSourse для каждого столбца).

Щелкнув правой кнопкой по компоненту Grid1, выберите Builder и на вкладке Relationship установите значение внешнего ключа в родительской таблице (ГРУППА.НОМЕР_ГРУППА) и имя индекса в дочерней таблице (по номеру группы).

Для каждого столбца (объект Column в списке объектов) установите шрифт (Font) для заголовка (Header) и для текста (Text)

Выберите для объекта Gridl событие AfterRowColChange на вкладке Method и напишите для него код:

ThisForm.Label2. Caption = stud. fam

Теперь при переходе на какую-либо ячейку Grid1 в метке будет отражена фамилия выбранного студента.


Установите на форме кнопку Command Button1 со свойством Caption -'Отчислить”.

На вкладке Method выберите событие Click Event и напишите для него метод:

SETDELETEDON && - установить режим, при котором не показываются записи, помеченные для удаления

SELECTstud

DELETE && -удалить текущую запись (пометить для удаления)

SELECT grupp

ThisForm.Refresh &&- обновитьформу

Установите на форме кнопку Command Button2 со свойством Caption -'Отмена'.

На вкладке Method выберите событие Click Event и напишите для него метод:

SELECT stud

RECALL

SELECT grupp

ThisForm. Refresh

Восстановление записи возможно, если указатель внутри таблицы не перемещался. Если допустимо перемещение указателя внутри таблицы, то в начале процедуры необходимо добавить команду SETDELETEDOFF.

Установите на форме кнопку Command Button3 со свойством Caption -'Выход'.

На вкладке Method выберите событие Click Event и напишите для него метод:

ThisForm. Release

Запустите форму на выполнение и проверьте ее работоспособность.

Щелкните по кнопке Build в окне проекта, вновь создайте приложение Application(App) и запустите его на выполнение для проверки.

Создание формы для ввода оценок (st13)

Для ввода оценок также нужно сначала выбрать группу, так как оценки обычно выставляются для всей группы, а затем по списку группы напротив фамилии студента ввести оценку. Для выбора группы будем использовать компонент ComboBox, а для ввода оценок - Grid.

Выберите в меню File - New - Form - NewFile.

Задайте имя формы, и ее свойства: заголовок формы - свойство Caption, ее размеры.

Сохраните форму под именем st13.

Для установки окружения формы щелкните правой кнопкой мыши, выберите DataEnvironment и кнопкой Add добавьте необходимые таблицы базы данных - СТУДЕНТ и ГРУППА.

Установите на форме компонент ComboBox1

Щелкните правой кнопкой мыши по компоненту ComboBox1, выберите Builder...

В появившемся диалоговом окне на вкладке List Items выберите поля таблицы ГРУППА: НАЗВАНИЕ_ГРУППЫ и НОМЕР_ГРУППЫ.

Установите на форме компонент Grid1

Щелкнув правой кнопкой по компоненту Grid1, выберите Builder и задайте поля, отображаемые компонентом: №ТАБ, ФАМИЛИЯ, ОЦЕНКА (это можно сделать также с помощью установки свойства ControlSourse для каждого столбца).

Щелкнув правой кнопкой по компоненту Grid1, выберите Builder и на вкладке Relationship установите значение внешнего ключа в родительской таблице (ГРУППА.НОМЕР ГРУППА) и имя индекса в дочерней таблице (по номеру группы).