Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Управление данными. Лабораторный практикум

.pdf
Скачиваний:
0
Добавлен:
09.08.2026
Размер:
458 Кб
Скачать

Отчет → Создать → Автоотчет в столбец → Источник данных запрос Оправданность цены >=90. Сохранить отчет с именем Оправданность цены >=90.

10  Создание макроса (рисунок  3.3), обеспечивающего переход от диалоговой работы с БД к выводу отчетов. Цель: в сеансе ввода данных об оправданности цены подготавливать и выводить отчеты об оправданности цены <90 и >=90. Для решения задачи необходимо создать группу макросов Оправданность цены<90 / Оправданность цены >=90, включающую макросы:

1)  Начало, открывающий формы Оправданность цены <90 и Оправданность цены >=90, а также очищающий таблицы перед формированием новых отчетов;

2)  Формирование, заполняющий таблицы Оправданность цены <90 и Оправданность цены >=90 через соответствующие однозаписевые формы;

3)  Отчет, распечатывающий соответствующие отчеты по завершении ввода данных об Оправданности цены <90 и Оправданности цены >=90.

Для выполнения макроса Начало в момент, когда пользователь открывает форму Итоговая оценка, в свойствах формы в строку события Открытие введите имя макроса Оправданность цены <90 / Оправданность цены >=90.Начало. В результате этот макрос будет выполняться один раз в начале ввода данных.

Макрос Формирование должен выполняться при обновлении поля Оправданность цены в записях формы Итоговая оценка. Свяжите этот макрос со свойством события После обновления поля Оправданность цены, введя в строку свойства имя этого макроса

Оправданность цены <90 / Оправданность цены >=90.Формирование.

Макрос Отчет должен выполняться при закрытии пользователем формы Итоговая оценка. Введите в свойствах формы в строке события Закрытие имя этого макроса Оправданность цены <90 / Оправданность цены >=90.Отчет.

Для проверки макроса откройте форму Итоговая оценка, при желании введите новые записи (можно не вводить), закройте форму. НИЧЕГО НЕ УДАЛЯТЬ!!! На экране отобразятся отчеты Оправданность цены <90 и Оправданность цены >=90.

21

Рисунок  3.3 – Создание макроса, обеспечивающего переход от диалоговой работы с БД к выводу отчетов

Содержательная часть отчета по лабораторной работе должна включать в себя порядок выполнения работы с промежуточными результатами и файл с базой данных, сохраненной в Access, в соответствии с вариантом лабораторной работы №  2.

Контрольные вопросы

1  Для чего предназначены макросы?

2  Какими способами можно запустить макрос на выполнение?

3  Какими могут быть примеры событий?

4  Каким образом можно автоматизировать работу с базой данных?

5  Как задать аргументы макрокоманды «СдвигРазмер»? 6  Как задать аргументы макрокоманды «Применить-

Фильтр»?

7  Какзадатьаргументымакрокоманды«ЗадатьЗначение»? 8  Каким образом задать имя макроса?

9  Какими событиями запускается группа макросов для синхронной обработки данных двух форм?

10  Какими событиями запускается макрос, обеспечивающий переход от диалоговой работы с БД к выводу отчетов?

22

Лабораторная работа №  4 СОЗДАНИЕ И ИСПОЛЬЗОВАНИЕ МОДУЛЕЙ

Visual Basic for Applications (VBA) – общее средство программирования для всего семейства Microsoft Office, включая

Access, Word, Excel, Outlook и PowerPoint.

Основой для программирования являются события, которые обрабатываются процедурами обработки событий. Процедура состоит из последовательности инструкций и методов, с помощью которых решается задача: выполняются требуемые действия или производятся расчеты.

Инструкция определяет операцию или описание объектов, переменных, констант, которые используются в операции. Метод – это инструкция, определяющая инструкцию или функцию, применяемую только к конкретным объектам.

Процедуры, входящие в состав приложения, хранятся в модулях в БД. Модули можно подразделить на стандартные (являются отдельными объектами БД и представлены в окне БД на вкладке Модули), модули форм и отчетов (сохраняются вместе с конкретной формой или отчетом).

Основные инструкции VBA:

Sub – объявляет процедуру-подпрограмму с именем, включающим имя кнопки и имя события. Пустые круглые скобки говорят об отсутствии аргументов;

End Sub – завершает текст процедуры;

DoCmd. – для выполнения макрокоманд (после точки указывается макрокоманда);

Exit Sub – завершает выполнение процедуры;

On Error GoTo – позволяет при возникновении ошибки передать управление (GoTo) программе обработки ошибок;

MsgBox – выводит стандартное сообщение об ошибке (аргумент Err.DESCription определяет строковое значение, которое возвращается при ошибке);

Resume – передает управление на метку инструкции, завершающей выполнение процедуры.

23

Цель работы

Создание и использование модулей. Применение инструкций и методов Visual Basic for Applications (VBA) для решения задач.

Порядок выполнения работы

1  Анализ процедуры обработки события, формируемой мастером.

1)  Создание формы Наименование материнской платы

иее цена на основе одноименной таблицы в режиме Автоформа: в столбец.

2)  Создание формы Качество интегрированного звукового решения на основе одноименной таблицы в режиме Автоформа: ленточная.

3)  Создание кнопки управления Open Form Качество в форме Наименование материнской платы и ее цена с помощью мастера. Для этого нужно:

а)  открыть форму Наименование материнской платы и ее цена в режиме Конструктора;

б)  щелкнуть по Кнопке на панели элементов и перетащить ее в область данных формы. Появилось окно мастера кнопок (Создание кнопок – CommAnd Button Wizard);

в)  выбираем: Form Operations Open Form Next Качество интегрированного звукового решения Next Open the form And find specific data to display (Открыть форму для отобранных записей) →Next →Выбрать поле (в обоих окнах) Наименование материнской платы, по которому осуществляется связь форм

иотбор записей подчиненной формы. Щелкнуть <–> Next Text Open form Качество → Имя кнопки Open form Качество

Finish.

г)  сохранить форму → Перейти в режим формы → При щелчке по кнопке Open form Качество открывается форма Качество интегрированного звукового решения и в ней отображаются все записи, связанные с текущей записью формы Наименова-

ние материнской платы и ее цена.

4)  Открытие и анализ процедуры. Для этого нужно:

а)  выделить форму Наименование материнской платы и ее цена → Нажать кнопку Программа. Открылось окно редакто-

24

ра VBA и в нем окно модуля формы. При этом форма открывается в режиме Конструктора;

б)  открыть список (Object) → Open form Качество.

ProcedureClick(соответствуетсобытиюНажатиекнопки); в)  для отображения только процедуры с именем Open form Качество_Click щелкнуть по кнопке Procedure View (в левом нижнем углу). Для предоставления полного модуля щелкнуть

по кнопке Full Module View.

Процедура обработки события является личной Private процедурой типа Sub.

Процедура обработки события. Option Compare Database

Private Sub Open_Form_СП_Тестирование_Click()

On Error GoTo Err_Open_Form_СП_Тестирование_Click

Dim stDocName AS StrIng

Dim stLInkCriteria AS StrIng

stDocName = «Качество интегрированного звукового ре-

шения»

stLInkCriteria = «[Наименование материнской пла-

ты]=» & «’» & Me![Наименование материнской пла-

ты] & «’»

DoCmd.OpenForm stDocName, , , stLInkCriteria

Exit_Open_Form_СП_Тестирование_Click:

Exit Sub

Err_Open_Form_СП_Тестирование_Click:

MsgBox Err.DESCription

Resume Exit_Open_Form_СП_Тестирование_Click

End Sub

2  Выполнение запросов в процедуре обработки события. Цель: создать процедуру, которая подключается при за-

крытии формы Качество интегрированного звукового решения, производит расчет средних показателей качества и создает таблицу Среднее значение показателей качества.

Для расчета средних показателей качества и создания таблицы воспользуемся созданными для этих целей запросами Расчет средних показателей качества и Новая таблица. Выполнение

25

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

1)  Связывание выполнения создаваемой процедуры с закрытием формы Качество интегрированного звукового решения. Для этого нужно:

Открыть форму Качество интегрированного звукового решения в режиме Конструктора →Свойства формы →События → Закрытие [Процедура обработки события] → Щелкнуть по значку построителя в конце строки →Программы.

Появилось окно модуля формы.

2)  Запись инструкций процедуры в шаблон процедуры обработки события.

Private Sub Form_Close()

On Error GoTo Err_Form_Close

Dim stDocName, stDocName1 AS StrIng

stDocName = «Расчет средних показателей качества»

stDocName1 = «Новая таблица»

DoCmd.OpenQuery (stDocName)

DoCmd.OpenQuery (stDocName1)

Exit_Form_Close:

Exit Sub

Err_Form_Close:

MsgBox Err.DESCription

Resume Exit_Form_Close

End Sub

3)  Закрыть окно редактора VBA и возвратиться в Access.

File Close And Return to Microsoft Access

4)  Открыть таблицу Среднее значение показателей качества и переписать значения показателей качества.

5)  Открыть форму Качество интегрированного звукового решения. Уменьшить значения оценки на 1 и закрыть.

6)  Открыть таблицу Среднее значение показателей качества и переписать значения показателей качества.

3  Создание формы и заполнение ее записями.

26

Option Compare Database

Sub НоваяФорма()

Dim frm AS Form

Dim ctlLabel AS Control, ctlText AS Control Dim IntDataX AS Integer, IntDataY AS Integer Dim IntLabelX AS Integer, IntLabelY AS Integer Dim stab AS Recordset

Set frm = CreateForm

frm.RecordSource = «Качество интегрированного звукового решения»

IntLabelX = 100

IntLabelY = 100

IntDataX = 3000

IntDataY = 100

Set ctlText = CreateControl(frm.Name, acTextBox, , “”, «Чипсет», _

IntDataX, IntDataY)

Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, «Чипсет», IntLabelX, IntLabelY)

IntLabelX = 100

IntLabelY = 600

IntDataX = 3000

IntDataY = 600

Set ctlText = CreateControl(frm.Name, acTextBox, , “”, «Наименование материнской платы», _

IntDataX, IntDataY)

Set ctlLabel = CreateControl(frm.Name, acLabel, , _ ctlText.Name, «Наименование материнской платы»,

IntLabelX, IntLabelY) DoCmd.Restore

End Sub

4  Создание отчета и заполнение его записями.

Option Compare Database

Sub НовыйОтчет()

Dim frm AS Report

27

Dim ctlLabel AS Control, ctlText AS Control Dim IntDataX AS Integer, IntDataY AS Integer Dim IntLabelX AS Integer, IntLabelY AS Integer Dim stab AS Recordset

Set frm = CreateReport

frm.RecordSource = «Качество интегрированного звукового решения»

IntLabelX = 100

IntLabelY = 100

IntDataX = 3000

IntDataY = 100

Set ctlText = CreateReportControl(frm.Name, acTextBox, ,

“”, «Чипсет», _

IntDataX, IntDataY)

Set ctlLabel = CreateReportControl(frm.Name, acLabel, , _ ctlText.Name, «Чипсет», IntLabelX, IntLabelY)

IntLabelX = 100

IntLabelY = 600

IntDataX = 3000

IntDataY = 600

Set ctlText = CreateReportControl(frm.Name, acTextBox, , “”, «Наименование материнской платы», _ IntDataX, IntDataY) Set ctlLabel = CreateReportControl(frm.Name, acLabel, , _ ctlText.Name, «Наименование материнской платы», IntLabelX, IntLabelY)

DoCmd.Restore End Sub

Содержательная часть отчета по лабораторной работе должна включать в себя порядок выполнения работы с промежуточными результатами и файл с базой данных, сохраненной в Access, в соответствии с вариантом лабораторной работы №  2.

Контрольные вопросы

1  Для чего предназначены модули?

2  Что является основой для программирования VBA? 3  Что входит в состав процедуры?

28

4  Что определяет инструкция? 5  Что определяет метод?

6  Где хранятся процедуры?

7  На какие типы можно подразделить модули? 8  Каковы основные инструкции VBA?

9  С помощью каких инструкций можно объявить начало и конец процедуры?

10  С помощью какой инструкции можно объявить макрокоманду?

11  Каким образом можно связать выполнение процедуры с закрытием формы?

29

Лабораторная работа №  5 СОЗДАНИЕ МОДУЛЯ ДЛЯ ПЕРЕДАЧИ ДАННЫХ ИЗ БАЗЫ ДАННЫХ

В ТЕКСТОВЫЙ ФАЙЛ. СОЗДАНИЕ ЗАЩИТЫ ОТ ДЕЙСТВИЙ ПОЛЬЗОВАТЕЛЯ

Цель работы

Создание и использование модулей. Применение инструкций и методов Visual Basic for Applications (VBA) для решения задач. Создание модуля для передачи данных из базы данных в текстовый файл. Создание защиты от действий пользователя.

Порядок выполнения работы

Создание шаблона документа Word.

1  Создать документ Word:

Заключение О качестве интегрированного звукового решения

Наименование материнской платы

Чипсет

Уровень шума, дБ Динамический диапазон, дБ Гармонические искажения, %

Оценка

Изменяемые данные, которые должны подставляться программно, выделены полужирным шрифтом. Закладка добавляется через пробел от «полужирного» шрифта.

2  Поместить в нужные места этого документа закладки (текст, выделенный полужирным шрифтом). Закладки будут называться так:

-закладка для ввода материнской платы: b1;

-закладка для ввода чипсета: b2;

-закладка для ввода уровня шума: b3;

-закладка для ввода динамического диапазона: b4;

-закладка для ввода гармонических искажений: b5;

-закладка для ввода оценки: b6.

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]