Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
ТЕМА : Форма “Долги”
СРОК СДАЧИ : 14 ноября 2003 г.
ЦЕЛЬ РАБОТЫ : Приобретение навыков создания иерархических списков.
ТЕОРЕТИЧЕСКИЕ ЗНАНИЯ : Создание иерархических списков. Обновление данных. Выполнение исполняемых запросов. Отключение сообщений
Форма Долги отображается при нажатии кнопки Долги на формах Главная, Оценки и предназначена для отображения задолженностей студентов на текущую дату.
Форма Долги содержит подчинённую форму ДолгиГруппы, которая основана на запросе ДолгиКоличество и связана с основной формой по значению полей КодПолугодия и КодГруппы.
Форма ДолгиГруппы содержит подчинённую форму ДолгиСтудента, которая основана на запросе ДолгиГруппы и связана с основной формой по значению полей КодСтудента.
Запрос предназначен для отображения всех дисциплин, которые студенты выбранной группы должны сдать в выбранном семестре до текущей даты.
На базе таблиц Студенты, Оценки и Дисциплины создайте запрос ДолгиСеместра, содержащий поля: КодПлана, Предмет, КодПреподавателя, КодГруппы и ДатаКонтроля.
Поле |
Таблица |
Вывод на экран |
Условие отбора |
КодПлана |
План |
Да |
|
Предмет |
Предметы |
Да |
|
КодПреподавателя |
Дисциплины |
Да |
|
КодГруппы |
Дисциплины |
Нет |
[Forms]![Главная]![КодГруппы] |
ДатаКонтроля |
Дисциплины |
Нет |
<Now() |
Запрос должен содержать столько записей, сколько оценок должны получить все студенты по всем дисциплинам в выбранном семестре.
На базе запросов ДолгиСеместра и СтудентыГруппы создайте запрос ДолгиВсе, содержащий поля: Код, Предмет, КодПреподавателя, КодПлана, ФИО, КодСтудента и КодГруппы.
Поле |
Таблица |
Код: [КодСтудента] * 10000 + [КодПлана] |
|
Предмет |
ДолгиСеместра |
КодПреподавателя |
ДолгиСеместра |
КодПлана |
ДолгиСеместра |
ФИО |
СтудентыГруппы |
КодСтудента |
СтудентыГруппы |
КодГруппы |
СтудентыГруппы |
Обратите внимание на то, что запросы, на которых основан запрос ДолгиВсе, не связаны между собой. В этом случае записи “перемножаются” – если в группе 20 студентов, а в плане семестра 10 дисциплин, то запрос будет содержать 120 записей.
Другой особенностью запроса ДолгиВсе является наличие вычисляемого поля Код: [КодСтудента] * 10000 + [КодПлана]. Нам необходимо будет связать записи запроса ДолгиВсе с оценками, полученными студентами. Осуществить такую связь целесообразно с помощью комбинированного ключа Код, значение которого будет уникальным при условии: КодПлана < 10000.
Запрос должен содержать положительные оценки студентов выбранной группы.
На базе таблиц Оценки, Дисциплины, Состав, ТипыОценок и Студенты создайте запрос ДолгиУдовлет, содержащий поля: Код, КодДисциплины, КодПлана, КодСтудента, КодГруппы и Удовлет.
Поле |
Таблица |
Условие отбора |
Код: [КодСтудента] * 10000 + [КодПлана] |
||
КодДисциплины |
Оценки |
|
КодПлана |
Дисциплины |
|
КодСтудента |
Оценки |
|
КодГруппы |
Состав |
[Forms]![Главная]![КодГруппы] |
Удовлет |
ТипыОценок |
1 |
Запрос должен содержать список студентов и дисциплин, по которым они имеют академические задолженности.
На базе запросов ДолгиВсе и ДолгиУдовлет создайте запрос ДолгиГруппы, содержащий поля: ФИО, КодСтудента, Предмет, КодГруппы, КодПреподавателя и Код.
Поле |
Таблица |
Вывод на экран |
Условие отбора |
ФИО |
ДолгиВсе |
Да |
|
КодСтудента |
ДолгиВсе |
Да |
|
Предмет |
ДолгиВсе |
Да |
|
КодГруппы |
ДолгиВсе |
Да |
|
КодПреподавателя |
ДолгиВсе |
Да |
|
Код |
ДолгиУдовлет |
Нет |
Is Null |
Запрос предназначен для отображения студентов выбранной группы, которые имеют академические задолженности в выбранном полугодии, подсчитывает количество задолженностей и сортирует студентов по алфавиту.
На базе запроса ДолгиГруппы создайте запрос ДолгиКоличество, содержащий поля: КодСтудента, ФИО, Количество и КодГруппы.
Поле |
Групповая операция |
Сортировка |
КодСтудента |
Группировка |
|
ФИО |
Группировка |
по возрастанию |
Количество: КодСтудента |
Count |
|
КодГруппы |
Группировка |
Запрос предназначен для отображения фамилий преподавателей и их инициалов.
На базе таблицы Преподаватели создайте запрос ПреподавателиИнициалы, содержащий поля: КодПреподавателя и ФИО. Записи должны быть отсортированы по алфавиту.
Поле |
Сортировка |
КодПреподавателя |
|
ФИО: [Фамилия] & "U" & Mid([Имя];1;1) & "." & Mid([Отчество];1;1) & "." |
по возрастанию |
Запрос используется в качестве источника строк для поля со списком КодПреподавателя в формах Дисциплины и Долги.
Private Sub ОбновлениеГруппы()
Me.КодГруппы.Requery
Me.КодГруппы = DLookup("[КодГруппы]", "ИерархияГруппы")
Forms.Главная.КодГруппы = Me.КодГруппы
End Sub
Private Sub ОпределениеКурса()
Dim Критерий As String
Критерий = "КодГруппы=Forms!Главная!КодГруппы"
Forms.Главная.Курс = DLookup("[Курс]", "Группы", Критерий)
Forms.Главная.КодОтделения = DLookup("[КодОтделения]", "Группы", Критерий)
End Sub
Private Sub Form_Load()
ОпределениеКурса
End Sub
Private Sub КодГода_Change()
Forms.Главная.КодГода = Me.КодГода
ОбновлениеГруппы
ОпределениеКурса
End Sub
Private Sub КодПолугодия_Change()
Forms.Главная.КодПолугодия = Me.КодПолугодия
End Sub
Private Sub КодСпециальности_Change()
Forms.Главная.КодСпециальности = Me.КодСпециальности
ОбновлениеГруппы
ОпределениеКурса
End Sub
Private Sub КодГруппы_Change()
Forms.Главная.КодГруппы = Me.КодГруппы
ОпределениеКурса
End Sub
Private Sub КнопкаОценки_Click()
DoCmd.OpenForm "Оценки"
DoCmd.Close acForm, "Долги"
End Sub
Private Sub КнопкаЗакрыть_Click()
DoCmd.Close
End Sub
1. Создание иерархических списков.
2. Обновление данных.
3. Выполнение исполняемых запросов.
4. Отключение сообщений.
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.