Средствами VBA в программном режиме можно создавать не только объекты Access: таблицы, формы, запросы, но и такие элементы управления, как Кнопки, Надпись и др., что позволяет существенно повысить уровень автоматизации работы приложения. Ниже даны примеры создания некоторых объектов и элементов управления, приведены программы. По тексту программ даны необходимые пояснения.
Создание таблицы.Пусть, требуется создать в текущей базе данных таблицу Elise со следующими полями: Код, Фамилия вкладчика, Домашний адрес, Сумма вклада, Срок заключения договора, мес. Для решения данной задачи необходимо:
- в процедуре создать объектные переменные db, tb типа Database, TableDef и f1, f2, f3, f4 типа Field, предназначенные для хранения ссылок на соответствующие объекты базы данных;
- для создания нового объекта TableDef – таблицы с именем Elise нужно применить метод CreateTableDef к объектной переменной db. Для создания новых объектов Field – полей таблицы, нужно применить метод CreateField к объектным переменным f1, f2, f3, f4;
- для добавления этих полей в семейство Fields, входящих в объект TableDef нужно использовать метод Append;
- для добавления таблицы – объекта TableDef в семейство TableDefs нужно использовать метод Append;
Процедура решения этой задачи с использованием библиотеки DAO приведена ниже
Public Sub Создание_таблицы()
‘ Описание переменных
Dim db As Database
Dim tb As TableDef
Dim f1, f2, f3, f4, f5 As field
Set db = CurrentDb
‘Создание таблицы и ее полей
Set tb = db.CreateTableDef("Elise")
Set f1 = tb.CreateField("Код", dbInteger)
Set f2 = tb.CreateField("Фамилия вкладчика", dbText)
Set f3 = tb.CreateField("Домашний адрес", dbText)
Set f4 = tb.CreateField("Сумма вклада", dbCurrency)
Set f5 = tb.CreateField("Срок заключения договора, мес", dbInteger)
‘Добавление полей в таблицу
tb.Fields.Append f1
tb.Fields.Append f2
tb.Fields.Append f3
tb.Fields.Append f4
tb.Fields.Append f5
‘Добавление таблицы в БД
db.TableDefs.Append tb
End Sub
Создание формы.При создании форм за единицу измерениявMicrosoft Accessберут Твип (twip).Один твип равен 1/1440 дюйма. В одном сантиметре содержится 567 твипов.
Пусть требуетсясредствами VBA создать форму на основе таблицы КАФЕДРА только без фото. Процедура решения этой задачи с использованием библиотеки DAO приведена ниже
Public Sub Создание_формы()
Dim frm As Form 'Определение объектной переменной для формы
Set frm = CreateForm 'Создание новой формы и ссылки на переменную
frm.RecordSource = "КАФЕДРА" 'Источник данных в форме
'Определение объектных переменных для элементов управления
Результат работы программы представлен на рис.2.7.
Рис.2.7. Форма, созданная средствами VBA
Создание запроса.Требуетсясредствами VBA создать запрос МАКС по таблице ТОВАРЫ для выборки записей в которых Стоимость товара больше определенной нижней границы. Граница вводится в окно диалога. Процедура решения этой задачи с использованием библиотеки DAO приведена ниже
Public Sub Создание_запроса_VBA()
Dim db As Database
Dim q As QueryDef
Set db = CurrentDb
' Создается запрос с именем Макс
Set q = db.CreateQueryDef("Макс", "Select *" _
& "from Товары where [Стоимость товара] >” & _
“ [Введите нижнюю границу стоимости товара];")
End Sub
3. СПИСОК ЛИТЕРАТУРЫ
1. Джон Вейскас. Эффективная работа с Microsoft Access 7.0 для Windows .- С-Пб.:Питер, 1997.
2. М.Хэлворсян, М.Янг. Эффективная работа с Microsoft Office 97.- С-Пб.:Питер, 1997.
3. МакФедризг Пол и др. Microsoft Office 97. Энциклопедия пользователя: пер. с англ.-К.: Издательство "ДиаСофт", 1998.
4. К. Гетц, М. Джилберт. Программирование в Microsoft Office. Полное руководство по VBA: пер. с англ.-К.: Издательская группа BHV, 1999.
5. Киммел, Пол. Освой самостоятельно программирование для Microsoft Access 2000 за 24 часа.: пер. с англ.-М.:"Вильямс". 2000.
6. Король В.И. Visual Basic 6.0, Visual Basic for Application 6.0. Язык программирования. Справочник с примерами.-М.: КУДРИЦ-ОБРАЗ, 2000.
7. Каммингс С. VBA для “чайников”: Пер. с англ.: М.:”Вильямс”, 2000.
8. Кен Гетц, Майк Джилберт. Программирование в Microsoft Office: пер. с англ.-К:”Ирина”. BHV, 2000.
2.3. Классы и семейства...................................................................................................29
2.4. Объектные модули Microsoft Office………………………………………………..29
2.5. Модели объектов Microsoft………………………………………………………...29
2.6. Модели объектов доступа к данням DAO и ADO………………………………..29
2.7. Ссылки на объекты.....................................................................................................30
2.8. Свойства и методы объектов……………………………………………………….30
2.9. Применение метода DoCmd в программах VBA ....................................................31
2.10.Работа с объектами доступа к данным.....................................................................33
2.11. Создание объектов баз данных средствами VBA ..................................................37
3. СПИСОК ЛИТЕРАТУРЫ..................................................................................................39
Приложение
ТАБЛИЦЫ БАЗЫ ДАННЫХ УЧЕБНЫЙ ПРОЦЕСС
Таблица 1. Данные таблицы СТУДЕНТ
Номер группы
Номер студента
ФИО
Год рождения
Адрес
+
Балл поступления
Аристов Р.П.
Одесса
4,25
Бондаренко С.А.
Одесса
4,5
Борисова Е.И.
Николаев
4,25
Макова Н.Е.
Херсон
4,75
Боярская Н.П.
Херсон
4,5
Федоров Д.К.
Николаев
4,25
Сидоров И.Р.
Одесса
4,5
Андреев А.П.
Измаил
4,25
Петров П.Н.
Измаил
4,75
Иванов К.К.
Николаев
4,5
Ключевыми полями таблицы СТУДЕНТ являются поля: Номер группы, Номер студента.
Таблица 2. Данные таблицы ГРУППА
Номер группы
Кол_во студентов
Средний балл
4,5
4,4
4,8
4,5
4,8
3,9
4,7
Ключевыми полями таблицы ГРУППА является поле: Номер группы.
Таблица 3. Данные таблицы КАФЕДРА
Код кафедры
Название
Телефон
Зав кафедрой
Фото
Информатики
310-13-24
Игнатьев В.В.
Математики
310-43-98
Иванов И.И.
Истории
310-23-65
Смирнова И.Б.
Иностранного языка
310-97-43
Жданова А.Е.
Физкультуры
310-87-56
Плетнев В.А.
Философии
310-34-12
Бондаренко В.В.
Ключевыми полями таблицы КАФЕДРА является поле: Код кафедры.
Таблица 4. Данные таблицы ПРЕПОДАВАТЕЛЬ
Таб номер
ФИО
Уч_степень
Уч_звание
Код кафедры
Андреев А.П.
д.т.н.
профессор
Апухтин И.С.
к.т.н.
доцент
Глухов И.Л.
к.т.н.
доцент
Сеченов Ю.Б.
к.т.н.
доцент
Чернов В.Б.
к.т.н.
доцент
Блюмкина А.Т.
д.ф.-н.
профессор
Львова В.И.
ассистент
Шапошников И.Т.
д.т.н.
профессор
Новиков П.Н.
ассистент
Ильясов А.А.
к.фил.н.
доцент
Пустынцев Р.Т.
к.ист.н.
доцент
Романов И.П.
к.ист.н.
доцент
Цветков А.И.
к.ист.н.
доцент
Сорокина М.Ф.
к.фил.н.
доцент
Богомолов П.Р.
к.фил.н.
доцент
Лысова М.И.
к.фил.н.
доцент
Шаповалова М.Ф.
к.фил.н.
доцент
Кудряшова Г.М.
ассистент
ассистент
ассистент
ассистент
Жигарева Н.К.
к.пед.н.
доцент
Егорова Н.Н.
ст.преп.
Ермолин Е.Н.
ассистент
ассистент
ассистент
Логинов А.М.
к.фил.н.
доцент
Яковлев К.В.
к.фил.н.
доцент
Раков А.В.
к.фил.н.
доцент
Соловьев С.И.
ассистент
Ключевыми полями таблицы ПРЕПОДАВАТЕЛЬ является поле: Таб номер.
Таблица 5. Данные таблицы ПРЕДМЕТ
Код предмета
Название
Всего часов
Лекции
Практика
Число семестров
Программа
Информатика
Математика
История
Иностранный яз.
Философия
Физкультура
Ключевыми полями таблицы ПРЕДМЕТ является поле: Код предмета.
Таблица 6. Данные таблицы ИЗУЧЕНИЕ
Номер группы
Код предмета
Таб номер
Вид занятия
Часы
Ср_балл
лек
пр
лек
пр
лек
пр
пр
лек
пр
лек
лек
пр
лек
лек
пр
пр
пр
лек
пр
Ключевыми полями таблицы ИЗУЧЕНИЕ являются поля: Номер группы, Код предмета ,Таб номер, Вид занятия.
Таблица 7. Данные таблицы УСПЕВАЕМОСТЬ
Номер группы
Номер студента
Код предмета
Таб номер
Вид занятия
Оценка
лек
пр
лек
пр
лек
пр
лек
пр
Ключевыми полями таблицы УСПЕВАЕМОСТЬ являются поля: Номер группы, Номер студента, Код предмета, Таб номер, Вид занятий
Таблица 8. Данные таблицы ТОВАРЫ
КодТовара
Марка
Описание товара
КодПоставщика
Цена
На складе
Стоимость товара
Кофе "Добра кава"
Молотый по 100 г
2,61р.
2 610,00р.
Кофе "Nescafe Classic"
Растворим. по 100 г
6,26р.
3 756,00р.
Кофе "Арабика"
В зернах 100 г
2,40р.
3 120,00р.
Кофе "Галка"
Растворим. по 50 г
2,44р.
1 366,40р.
Кофе "Галка"
Капучино по 10 г
3,78р.
945,00р.
Кофе Maxima
Молотый по 250 г
4,80р.
7 200,00р.
Кофе "Віденська кава"
В зернах по 100 г
1,94р.
1 396,80р.
Чай Майский
200 г листовой
4,66р.
2 330,00р.
Чай Dilmah
125 г кр. Лист
2,95р.
295,00р.
Таблица 9. Данные таблицы ПОСТАВЩИКИ
КодПоставщика
ФирмаПоставщика
Город
Страна
ДатаПоставки
Чаеразвесочная фабрика
Москва
Россия
04.09.2006
АТ "Галка"
Львов
Украина
10.08.2006
Dilmah
Штутгарт
Германия
30.03.2005
Nestle
Франкфурт на Майне
Германия
11.07.2007
АТ "Свиточ"
Львов
Украина
12.08.2005
Вопрос 2. Классификация страхования.
Многообразие объектов страхования, огромное количество рисков, от которых проводится страхование, различные формы организации страховых отношений приводит к необходимости их систематизации (классификация, которая представляет собой способ упорядочения элементов системы по какому-либо критерию). Отправной классификацией является деление страхования на отрасли. В основе этой классификации лежат различия в объектах страхования. В соответствие с законом «Об организации страхового дела в РФ» объектом страхования может быть любой не противоречащий законодательству имущественный интерес. Надо учитывать, что страхование не может вернуть утраченное здоровье в связи с несчастным случаем или украденную машину, а может только в той или иной степени компенсировать убытки или дополнительные расходы. Объектом страхования является не предмет (имущество, жизнь, здоровье), а связанный с ним имущественный интерес, т.е. стоимостная оценка предмета страхования. Таким образом имущественный интерес (и как стоимостная оценка, и как заинтересованность в компенсации возможных потерь) возникает у страхователя в связи с наличием каково-то предмета страхования. Причем некоторые предметы страхования имеют стоимостную оценку, а некоторые нет. С этой точке зрения в страховой практике выделяют две отрасли: личное и имущественное страхование. Но такая классификация является достаточно поверхностной. Более полной будет классификация, которая также учитывает качественные характеристики объектов страхования, способы страхования и сроки страховой защиты. В этой классификации будет 4 отрасли:
1. Личное страхование: объектом является имущественные интересы, связанные с жизнью, здоровьем и трудоспособностью людей. То есть предметы страхования здесь не вещественные, не имеющие точной стоимостной оценки, полностью не восстанавливаемые после несчастного случая жизненные интересы страхователей.
2. Имущественное страхование: объектом является имущественные интересы, связанные с материальными ценностями. Предметы страхования здесь вещественные, имеющие точную стоимостную оценку, полностью восстанавливающиеся.
3. Страхование гражданской ответственности: объектом является имущественные интересы, связанные с экономическими последствиями гражданской ответственности страхователя за непреднамеренное причинение вреда жизни, здоровью и имуществу третьих лиц. Эти последствия могут иметь материальный характер (когда ущерб причинен имуществу) и не материальный характер ( когда вред причинен жизни и здоровью людей). Соответственно при заключении договора не возможно заранее определить точную стоимость предмета страхования и степень его восстановления.
4. Страхование финансовых рисков: Объектом является имущественные интересы, связанные с потерями прибыли дохода, снижением объема производства и т.п. Предметы страхования финансовые категории, имеющие точную стоимостную оценку и полностью восстанавливаемые после страхового случая.
Отрасль «Личное страхование»
По различиям в объектах, продолжительности страхования и действующей функции выделяют:
1. Страхование жизни.
2. Страхование иное, чем страхование жизни.
3. Смешанное страхование.
Страхование жизни. Осуществляется на случае дожития до окончания срока страхования или смерти в течение этого времени. Оно, как правило, долгосрочное. Страхование в процессе которого осуществляется накопление денежных средств, т.е. реализуется накопительная функция.
Страхование иное, чем страхование жизни. Личное страхование, иное чем страхование жизни, представляет собой страхование от несчастных случаев и медицинское страхование. Такое страхование связано с покрытием расходов возникающих в результате негативных событий, произошедших в жизни страхователя. Продолжительность действия договора в этом случае в пределах года. В этих видах страхования реализуется рисковая функция.
Смешанное страхование.Смешанное страхование представляет собой одновременное страхование медицинских расходов страхователя, страхование на дожитие или в случаи смерти в течение срока страхования, а также от несчастных случаев.
Виды внутри данных подгрупп:
1.Виды страхования жизни:
– Страхование детей до 18 лет.
– Страхование пенсии.
– Страхование на дожитие и т.д.
2. Виды личного страхования иного, чем страхование жизни:
– Страхование от несчастных случаев работников работодателем.
– Страхование пассажиров.
– Медицинское страхование и т.д.
3. При смешанном страхование виды страхования зависят от финансовых возможностей и желания страхователей.
Отрасль «Имущественное страхование»
1. По форме собственности выделяют подотрасли:
– Страхование государственного имущества.
– Страхование имущества предприятий коллективных форм собственности.
– Страхование имущества ИП.
– Страхование арендованного имущества.
– Страхование имущества граждан.
2. По роду опасности выделяют подотрасли:
– Страхование различного имущества от огня и других стихийных бедствий.
– Страхование различного имущества от противоправных действий третьих лиц (кража).
– Страхование животных от падежа и вынужденного забоя.
– Страхование сельскохозяйственных культур от засухи и других стихийных бедствий.
Виды имущественного страхования очень многочисленны и представляют собой или страхование определенного имущества конкретной формы собственности (страхование арендованного оборудование, личного автомобиля), или страхование определенного имущества от конкретной опасности (дача от пожара, пшеница от засухи).
Отрасль «Страхование ответственности»
1.Страхование общегражданской ответственности.
2. Страхование профессиональной ответственности.
В страховании гражданской ответственности выделяют следующие виды:
В страховании профессиональной ответственности выделяют следующие виды
1. Страхование ответственности перевозчиков пассажиров и грузов.
2. Страхование ответственности врачей, аудиторов, нотариусов и т.д.
3. Страхование ответственности производителей и продавцов за качество и безопасность их товара, работ и услуг.
Отрасль «Страхование финансовых рисков»
По характеру происхождения финансовых потерь выделяют следующие подотрасли:
1. Страхование прямых финансовых потерь.
2. Страхование финансовых рисков по долговым обязательствам.
Внутри первой подотрасли выделяют следующие виды:
– Страхование прибыли или дохода предприятия.
– Страхование от банкротства.
– Страхование финансовых рисков по реальным инвестициям и т.д.
Внутри второй подотрасли выделяют следующие виды:
– Страхование непогашения банковских кредитов.
– Страхование риска неплатежа контрагентами.
– Страхование биржевых операций и т.д.
Классификация страхования по методам расчета страховых тарифов
Эта классификация построена на различиях в природе риска. Выделяют две группы риска:
1. Риски маловероятные.
2. Риски неизбежные, но случайные по времени наступления.
При страховании маловероятных рисков или, иначе говоря, при рисковом страхование (несчастных случаев, аварий, пожаров) в основе расчета страхового тарифа лежит вероятность реализации конкретного страхового случая. Страховой взнос здесь намного меньше страховой суммы. Страхование таких рисков называется страхованием ущерба.
При страховании второй группы рисков, т.е. при страховании жизни и предпенсионного страхования, на случай дожития до окончания срока страхования или смерти в течение этого времени (известно, что смерть наступит обязательно). В этих условиях страхование жизни человека на определенную сумму связанно для страховщика с риском не успеть накопить оговоренный договором инвестиционный доход со страхового взноса при преждевременной смерти страхователя. Следовательно, в страхование жизни совокупный за весь период страхования страховой взнос сопоставим со страховой суммой. Такие договоры еще называют договором страховой суммы.