Методические указания к практическим работам по дисциплине «Базы данных»


НазваниеМетодические указания к практическим работам по дисциплине «Базы данных»
страница12/12
ТипМетодические указания
filling-form.ru > Бланки > Методические указания
1   ...   4   5   6   7   8   9   10   11   12

Тема: «VBA,программирование в отчетах»

Практическая работа №24. Тема: «VBA, программирование в отчетах»


Для работы создайте отчёт по таблице «Заказано» с помощью Автоотчет: ленточный.

Нумерация записей.

В некоторых случаях отчеты нагляднее, если записи каждой страницы пронумерованы.

Для нумерации записей каждой страницы используйте счетчик.

Создайте в области данных текстовое поле с именем полеЗапись (для этого вызовите свойства поля и на вкладке Другие выберите свойство Имя). Для того чтобы значение в этом поле с каждой записью увеличивалось на 1, назначьте событию области данных Печать, следующую процедуру (для этого вызовите свойства области данных, перейдите на вкладку События в строке Печать выберите ….и Программа или Процедура обработки событий и ….):

Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)

If PrintCount = 1 Then ПолеЗапись = ПолеЗапись + 1

End Sub

На каждой странице значения в поле Счетчик должны начинаться со значения 1. Для этого назначьте событию Печать области верхнего колонтитула следующую процедуру:

Private Sub ВерхнийКолонтитул_Print(Cancel As Integer, PrintCount As Integer)

ПолеЗапись = 0

End Sub

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

Печать суммы на каждой странице отчета.

В многостраничных счетах на каждой странице следует печатать промежуточную сумму.

Для вычисления промежуточной суммы воспользуйтесь событием Печать

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

Первая процедура связана с событием печать верхнего колонтитула
(эту процедуру добавьте в предыдущую, для перехода в программу выберите Вид, Программа)
:

Private Sub ВерхнийКолонтитул_Print(Cancel As Integer, PrintCount As Integer)

Me!ПолеСумма = 0

End Sub

Вторая процедура связана с событием Печать области данных:

Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)

If PrintCount = 1 Then

Me!ПолеСумма = Me!ПолеСумма + Me![цена]

End Sub

Для каждой записи промежуточная сумма будет увеличиваться на величину поля Цена. Однако перед этим значение свойства PrintCount проверяется на равенство 1. Это является обязательным, поскольку Access неоднократно обращается к событию Print при печати счета, занимающего несколько страниц. Свойство PrintCount указывает, сколько раз происходило обращение к этому событию для текущей области. Для того чтобы значение поля не прибавлялось несколько раз, вычисление выполняется только при первом событии.

Выделение важных данных начертанием.

Важнейшие данные отчета должны быть выделены полужирным стилем.

Создайте для события Форматирование области данных процедуру, в которой свойство FontBold некоторого управляющего элемента имеет значение True.

Свойство FontBold задает использование полужирного шрифта в следующих ситуациях:

  • · при просмотре или выводе на печать элементов управления в форме или в отчете;

  • · при выводе отчета на печать с помощью метода Print.

Свойство FontBold может иметь следующие значения.

Значение

Описание

True (–1)

Текст выводится полужирным шрифтом.

False (0)

(Значение по умолчанию) Текст выводится без атрибута полужирного шрифта.

Эта процедура может выглядеть следующим образом:

Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)

If Me![цена] < 30000 Then

Me![цена].FontBold = True

Else

Me![цена].FontBold = False

End If

End Sub

В этом случае значения, меньше 30000 выделяются жирным шрифтом

Практическая работа №25. Тема: «Создание модулей форм и модулей отчетов».


Выполнение работы:

Работа со структурой документа.

Объекты Database (база данных), TableDef (определение таблицы), Fields (поля таблицы).

База данных в целом представлена объектом типа Database. Объекта "таблица" не существует, а доступ к таблицам осуществляется посредством объектов TableDef. Объекты типа Field, объединенные в семейство Field соответствующего объекта TableDef, представляют поля таблицы. С помощью этих объектов можно создать новые таблицы, поля в базу данных.

Сначала необходимо объявить переменные: базу данных, таблицу и поля таблицы. Для этого используется следующее:

Dim db as Database

Dim td as TableDef

Dim fld as Field

Затем следует открыть базу данных, если для нужна другая база данных :

Set db=opendatabase("имя файла базы данных")
если нужна текущая база данных то используется
Set db = CurrentDb ()

Т.к. база данных теперь открыта и содержится в переменной db, можно обратиться к семейству определений таблиц и присвоить требуемое значение переменной td:

Set td=db.TableDefs("имя таблицы")

Затем, при помощи метода CreateField объекта TableDef можно добавить поле с заданными именем заданного размера:

Set flf=td.createfield(имя поля, тип данных, размер)

Поле создано и содержится в переменной fld, но в состав таблицы оно ещё не включено. Метод Append позволяет включить поле в таблицу:

Td.fields.append.fld

Остается закрыть базу данных и освободить память, выделенную под переменную db:

Db.close

Set db=nothing

Если требуется создать новую таблицу в базе данных, то действовать следует аналогичным образом. Только вместо открытия таблицы обращением к семейству TableDefs следует использовать метод CreateTable того же семейства, и пока на таблицу указывает объектная переменная, создать в ней необходимые поля и включить таблицу в состав семейства при помощи метода Append.

Задание1.

Добавим в базу данных "Борей" таблицу "Счета" для ведения лицевых счетов клиентов. Каждая запись в таблице должна состоять из двух полей: поля "лицевой счет" (длинное целое), поля "остаток" (денежный) и поля "примечание" (текстовый, размер 30).

'Объявим необходимые переменные

Dim db as Database

Dim td as TableDef

'Открыть базу данных

Set db=opendatabase("c:\2as_\борей.mdb")

'Создать новую таблицу

Set td=db.CreateTableDef("ЛицевыеСчета")

'Создать в новой таблице два поля

With td

.Fields.Append.CreateField("ЛицевойСчет", dblong)

.Fields.Append.CreateField("остаток", dbcurrency)

.Fields.Append.CreateField("примечание", dbtext, 30)

End With

'включить новую таблицу в базу данных

Td.TableDefs.Append td

'закрыть базу данных и освободить память

Db.close

Set db=nothing

Задание2.

Добавим в таблицу "товары" базу данных "Заказы товаров" поле дата_выпуска типа дата/время.

Dim db as Database

Dim td as TableDef

Dim fld as Field

Set db = CurrentDb()

'выбрать таблицу "товары"

Set td=db.TableDefs("Товары")

'Создать в таблице поле

set fld=td. CreateField("дата_выпуска",dbD ate)

'включить новое поле в таблицу базы данных

Td.Fields.Append fld

'закрыть базу данных и освободить память

Db.close

Set db=nothing

Программирование в отчетах.

Для работы создайте отчёт по таблице «Заказано» в базе данных "Борей» с помощью Автоотчет: ленточный.

Нумерация записей.

В некоторых случаях отчеты нагляднее, если записи каждой страницы пронумерованы.

Для нумерации записей каждой страницы используйте счетчик.

Создайте в области данных текстовое поле с именем полеЗапись (для этого вызовите свойства поля и на вкладке Другие выберите свойство Имя). Для того чтобы значение в этом поле с каждой записью увеличивалось на 1, назначьте событию области данных Печать, следующую процедуру (для этого вызовите свойства области данных, перейдите на вкладку События в строке Печать выберите ….и Программа или Процедура обработки событий и ….):

Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)

If PrintCount = 1 Then ПолеЗапись = ПолеЗапись + 1

End Sub

На каждой странице значения в поле Счетчик должны начинаться со значения 1. Для этого назначьте событию Печать области верхнего колонтитула следующую процедуру:

Private Sub ВерхнийКолонтитул_Print(Cancel As Integer, PrintCount As Integer)

ПолеЗапись = 0

End Sub

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

Печать суммы на каждой странице отчета.

В многостраничных счетах на каждой странице следует печатать промежуточную сумму.

Для вычисления промежуточной суммы воспользуйтесь событием Печать

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

Первая процедура связана с событием печать верхнего колонтитула
(эту процедуру добавьте в предыдущую, для перехода в программу выберите Вид, Программа)
:

Private Sub ВерхнийКолонтитул_Print(Cancel As Integer, PrintCount As Integer)

Me!ПолеСумма = 0

End Sub

Вторая процедура связана с событием Печать области данных:

Private Sub ОбластьДанных_Print(Cancel As Integer, PrintCount As Integer)

If PrintCount = 1 Then

Me!ПолеСумма = Me!ПолеСумма + Me![цена]

End Sub

Для каждой записи промежуточная сумма будет увеличиваться на величину поля Цена. Однако перед этим значение свойства PrintCount проверяется на равенство 1. Это является обязательным, поскольку Access неоднократно обращается к событию Print при печати счета, занимающего несколько страниц. Свойство PrintCount указывает, сколько раз происходило обращение к этому событию для текущей области. Для того чтобы значение поля не прибавлялось несколько раз, вычисление выполняется только при первом событии.

Выделение важных данных начертанием.

Важнейшие данные отчета должны быть выделены полужирным стилем.

Создайте для события Форматирование области данных процедуру, в которой свойство FontBold некоторого управляющего элемента имеет значение True.

Свойство FontBold задает использование полужирного шрифта в следующих ситуациях:

  • · при просмотре или выводе на печать элементов управления в форме или в отчете;

  • · при выводе отчета на печать с помощью метода Print.

Свойство FontBold может иметь следующие значения.

Значение

Описание

True (–1)

Текст выводится полужирным шрифтом.

False (0)

(Значение по умолчанию) Текст выводится без атрибута полужирного шрифта.

Эта процедура может выглядеть следующим образом:

Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)

If Me![цена] < 10000 Then

Me![цена].FontBold = True

Else

Me![цена].FontBold = False

End If

End Sub

В этом случае значения, меньше 10000 выделяются жирным шрифтом
1   ...   4   5   6   7   8   9   10   11   12

Похожие:

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к практическим работам и срс по дисциплине «овос»
Федеральное агентство по образованию Государственное образовательное учреждение высшего

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические рекомендации по разработке методических указаний к практическим...
Методические рекомендации по разработке методических указаний к практическим занятиям, лабораторным работам по дисциплине/ Составители...

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к лабораторным работам по дисциплине «Управление проектами»
Методические указания к лабораторным работам по дисциплине «Управление проектами» для студентов и слушателей факультета «Инженерный...

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания для преподавателей материалы к практическим...
Профиль подготовки Оборудование и технология повышения износостойкости и восстановление деталей машин и аппаратов

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к лабораторным работам по дисциплине «Постреляционные базы данных»
Целью лабораторной работы является практическое изучение возможностей постреляционного расширения языка sql для создания хранимых...

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к практическим работам по дисциплине Информационные...
Федерального государственного образовательного стандарта по специальности среднего профессионального образования, входящей в состав...

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к практическим занятиям по дисциплине «экономическая...
Методические указания к практическим занятиям по дисциплине «Экономическая география и регионалистика мира» для специальности 036401-...

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания для выполнения курсового проекта по дисциплине «Базы данных»
Одобрена предметной комиссией «программного обеспечения и информационных технологий»

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания к практическим занятиям студентов по учебной дисциплине фармакология
Методические рекомендации к практическим занятиям для студентов по учебной дисциплине фармакология. – Ульяновск: огбоу спо умк, 2014....

Методические указания к практическим работам по дисциплине «Базы данных» iconМетодические указания по дисциплине «Экономическая теория»
Методические указания по подготовке к семинарским и практическим занятиям по дисциплине «Экономическая теория». — Ростов н/Д: дгту,...

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск