Файл: Информатика Методичка Windows.docx

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

Категория: Методичка

Дисциплина: Операционные системы

Добавлен: 20.10.2018

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

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

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

Таблица Поиск

Форма Фильтрация

Выход Сортировка


Вид → Панели инструментов →Настройка →Контекстные меню→Создать


Создание панели инструментов На

Панель инструментов: Настраиваемая1→ Ok

Установите панель в нужное место, передвигая за синюю полосу.)

Команды → Новое меню → → Два раза перетащите в новую панель инструментов)

Новое меню Новое меню



12 Переименуйте элементы меню.

А ктивируйте элемент меню, Новое меню Новое меню

Имя: Заполнение → → «Обработка»)


1 3 Произведите насыщение элемента «Заполнение». Команды:

Все таблицы →Таблица1 → Перетащите в нужное место)

Файл → Выход

Элемента «Обработка»

Записи → Сортировка→…→Изменить фильтр→…→Применить фильтр→...→Правка →…→Найти →…→Закрыть







Лабораторная работа № 14

Введение в MS Access: Мастер форм.


Понятийный аппарат: база данных, система управления базой данных;

таблица, форма, поле, свойства поля.

Прикладные навыки: работа с мышью, настройка фона и шрифта, распределение

экранного пространства.


1 Войдите в среду MS Access

ПУСК → Программы MS Access


2 Откройте файл базы данных db1.mdb

Файл → Открыть базу данных → → или )

Папка: Мои документы Имя файла: db1.mdb → Открыть


3 Создайте форму для «Клиенты»

Формы Создать →

Конструктор → Источник данных → Клиенты →Ok

Вид → Список полей

Произведите привязку полей к сетке, перетаскивая их из «списка полей»)







































































Сохраните форму → Имя формы: Клиенты → Ok

Перейдите в режим формы: Вид → Режим формы

Просмотрите содержание записей и введите одну новую.



4 Измените фон формы, цвет и размер шрифта надписей.

Вид → Конструктор → Область данных: Цвет фона

Удерживая клавишу SHIFT щелкните левой кнопкой по всем надписям формы, смените цвет и размер шрифта.

5 Создайте в режиме конструктора еще две таблицы:


«Товары»:

Код товара → счетчик)

Наименование товара → текстовый)

Единица измерения → текстовый)


«Поставка»

Дата

Клиент

Товар

Цена

Количество

Приход

Стоимость

Накладная

Зададим структуру записи «Поставка».

Имя поля Тип данных Свойства

Дата Дата/время Маска ввода: →… →

Краткий формат даты → Готово

Значение по умолчанию: Date → )

Клиент Тип: Мастер подстановок →Значение из таблицы →Далее →

Таблица: Клиенты → Далее

Выбранные поля:

N > →Фамилия > → Имя > → Отчество > → Фирма >→Далее

Скрыть ключевой столбец → Далее

Подпись: N → Готово

Товар Тип: Мастер подстановок → Значение из таблицы →Далее

Таблица: Товары → Далее

Выбранные поля:

Код товара > → Наименование> → Ед./измер. > → Далее

Скрыть ключевой столбец → Далее

Подпись: Код товара → Готово


Цена Числовой

Количество Числовой

Стоимость Числовой

Накладная Счетчик → Ключевое)

Приход Логический


6 Создайте формы для новых таблиц.

В форме «Поставка» установите кнопки вызова форм «Клиенты» и «Товары».

Кнопка → Категории: Работа с формой → Действия: Открытие формы →Далее → Открываемая форма: Клиенты → Далее → Открыть форму и показать все записи → Далее →Текст → Клиенты → Далее

Имя кнопки: Кнопка1 → Готово

[Аналогичными действиями создайте кнопку «Товары»]


{Обновите список клиентов при выходе из кнопки}

[Фокус на кнопке в режиме конструктора]

Свойства → События → Выход

[Процедура обработки событий] → … →

Form_Поставка: Модуль класса:

N

Exit

Private Sub N_Exit→ Cancel As Integer)

Me! N.Requery

End Sub


7 В форме «Поставка» в режиме конструктора необходимо указать следующие свойства полей.

Цена → Свойства → События → Потеря фокуса

Процедура обработки событий → … →


Private Sub Цена_LostFocus→ )

Стоимость = [Цена] * [Количество]



End Sub

[Все действия для “Цена” повторите для “Количество”, проверьте качество заполнения поля “Стоимость”]


8 Просмотрите структуру образовавшихся связей.

Сервис → Схема данных

Лабораторная работа № 15

Введение в MS Access: Модификация проекта базы данных.


Понятийный аппарат: база данных, система управления базой данных;

таблица, форма, поле, свойства поля.

Прикладные навыки: расщепление таблиц, проектирование форм, использование

функций.

БД «Складской учет»

выполнен студентом

271 гр. Ивановым И.И.


1 Откройте файл базы данных db1.mdb

Файл → Открыть базу данных


2 Создайте простую форму-заставку.

Формы → Создать → Конструктор →Ok

{В окне формы вне области данных} →Свойства

Макет →Режим по умолчанию → Простая форма →Допустимые режимы → Форма → Выравнивание по центру → Да → Полосы прокрутки → Отсутствуют → Тип границы → Отсутствует → Область выделения → Нет → Кнопка оконного меню → Нет → Поле номера записи → Нет → Кнопка размеров окна → Все → Разделительные линии → Нет → Кнопка закрытия → Да → Автоматический размер → Да →Кнопка контекстной справки → Нет


Данные →Тип набора записей → Динамический набор

Событие → Открытие → [Процедура обработки событий] →…→

Private Sub Form_Open(Cancel As Integer)

' Форма открывается как заставка (без кнопки). Свойство "Интервал таймера"

' (TimerInterval) определяет закрытие формы через 5 секунд.

Me.TimerInterval = 5000

End Sub

Включение → [Процедура обработки событий] → … →

Private Sub Form_Activate()

' Скрывает встроенную панель инструментов "Режим формы".

DoCmd.ShowToolbar "Режим формы", acToolbarNo

End Sub

Отключение → [Процедура обработки событий] → … →

Private Sub Form_Deactivate()

' Выводит встроенную панель инструментов "Режим формы" в подходящем случае.

DoCmd.ShowToolbar "Режим формы", acToolbarWhereApprop

End Sub

Перехват нажатия клавиш → Да →

Таймер → [Процедура обработки событий] →… →

Private Sub Form_Timer()

' Конструкция If используется для сброса значения

' свойства "Интервал таймера" (TimerInterval).

If Me.TimerInterval <> 0 Then

Me.TimerInterval = 0

End If

DoCmd.Close acForm, "Заставка"

DoCmd.OpenForm "Поставка"

End Sub

Сохраните указанные свойства. → Закройте окно свойств

Откройте форму «Заставка».





3 Модифицируйте структуру базы: Расщепите таблицу “Поставка”.


3.1 Переименуйте таблицу и форму «Товары» в «Список товаров». Откройте форму «Список товаров» в режиме конструктора. Откорректируйте связь с базовой таблицей.

{В окне формы вне области данных}

Данные → Источник записей → Список товаров

Макет → Подпись → Список товаров


3.2 Сделайте копию таблицы «Поставка» под именем «Товары».

В закладке «Таблицы» Вашей базы данных:

Поставка → Копировать → Вставить → Имя таблицы: Товары Ok


3.3 В таблице «Товары» оставьте следующие поля:

Nп/п

(счетчик)

Дата

Накладная (числовое)

Товар (подстановка)

Приход

Цена

Количество

Стоимость

«Товар» - поле со списком из таблицы «Список товаров».

Тип полей «Цена», «Количество», «Стоимость» - вещественный с не менее чем 2-мя знаками после запятой. В схеме данных установите связь ([Поставка.Накладная] «Один-ко многим» [Товары.Накладная]).


3.4 В таблице «Поставка» оставьте следующие поля:

Дата

Клиент

Накладная

Сумма (числовое, веществ.[4 байта], 5 знаков)

«Клиент» – поле со списком из таблицы «Клиенты».


3.5 Уничтожьте существующие формы «Поставка» и «Товары». Создайте новые простые формы с помощью мастера:. «Поставка» - выровненную и «Товары» - табличную. Откройте форму «Товары» в режиме конструктора. Проверьте корректность связи с таблицей «Список товаров».

{В фокусе поле со списком “Код товара”.}

Данные → Источник строк


SELECT DISTINCTROW [Список товаров].[код товара],

[Список товаров].[Наименование],

[Список товаров].[Ед/измер] FROM [Список товаров];



3.6 В форме «Товары» в свойствах на выходе с полей «Приход», «Цена» и «Количество» и на получении фокуса поля «Стоимость» произведите расчет стоимости (см.Лаб.р.16) в зависимости от состояния поля «Приход».



If Not Приход Then [Количество] = -1 * Abs([Количество])

Стоимость = [Цена] * [Количество]


В разделе примечаний формы создайте вычисляемое поле «Сумма:», в котором будете подсчитывать текущую суммарную стоимость товаров, взятых клиентом по активной накладной. В свойствах поля укажите:

Данные → Данные → = SUM([Стоимость])

Запомните имя поля, содержащего сумму (Например, «Поле10»).

3.7 Внедрите форму «Товары» в форму «Поставка».

Для этого откройте форму «Поставка» в режиме конструктора и перетащите пиктограмму формы «Товары» из окна Вашей базы данных на отведенное место.

3.8 В форме «Поставка» постройте кнопки вызова форм «Клиенты» и «Список товаров» для дополнения списков товаров и поставщиков. При получении фокуса полями со списком «N», «Код товара» и на выходе с кнопок примените метод обновления списка.


Ф
ОРМА: ПОСТАВКА


3.9. При получении фокуса посредством ссылки на значение подчиненной формы присвойте полю “Сумма” результат суммирования по столбцу «Стоимость» формы «Товары».

Private Sub Сумма_GotFocus()

Сумма =[Forms]![Поставка]![Товары]![Поле10]

End Sub


4 Откройте форму “Поставка”, заполните несколько накладных. Проверьте связи по схеме данных, качество заполнения таблиц, корректность работы БД в целом.

Лабораторная работа № 16

Введение в MS Access: Запросы

Понятийный аппарат: СУБД, таблица, форма, поле, запрос-выборка, запрос-действие.

Прикладные навыки: создание таблиц по результатам запроса.


1. Откройте файл базы данных db1.mdb

Файл Открыть базу данных ( или )

Папка Мои документы Имя файла: db1.mdb Открыть

2. Выведите список клиентов на которых в марте 1999 года выписаны накладные, укажите суммы поставок.

1 способ:

Запросы Создать Конструктор Ok

Добавление таблицы: Поставка Добавить

Клиенты Добавить Закрыть

Поле:

Фамилия

Имя

Отчество

Фирма

Сумма

Дата

Имя таблицы:

Клиенты

Клиенты

Клиенты

Клиенты

Поставка

Поставка

Групповая операция:

Группир

Группир

Группир

Группир

Группиров

Условие

Сортировка:







Вывод на экран:

Условие отбора:








СОХРАНЕНИЕ Имя запроса: Выборка_Клиент-Сумма_по_дате Ok

Режим таблицы

Внесите изменения в условие отбора поля «Дата». Вместо жестко заданного срока организуйте ввод начальной и конечной даты с клавиатуры.

Измените условие: >=[ НачальнаяДата] And <=[ КонечнаяДата]. Режим таблицы


2 способ

Организуйте ввод начальной и конечной даты через элемент ActiveX «Календарь».

Создайте в режиме конструктора новую форму «Календарь».

Внедрите объект «Календарь».

Вставка Элемент ActiveX Элемент управления «Календарь»


В свойствах объекта укажите имя «ВыборДаты».

Создайте поле “НачальнаяДата”, в которое при получении фокуса будет возвращено календарем выбранное значение типа «Date». Повторите аналогичные действия для поля «КонечнаяДата». Создайте кнопку «Выборка данных». В свойствах на нажатие кнопки поставьте процедуру создания и открытия запроса на SQL. Вклейте в текст запроса временной промежуток, составленный из значений полей начальной и конечной даты.

Access Basic:

Option Compare Database

Option Explicit

Private Sub Form_Activate()

' Скрывает встроенную панель инструментов "Режим формы".

DoCmd.ShowToolbar "Режим формы", acToolbarNo

End Sub

Private Sub КонечнаяДата_GotFocus()

КонечнаяДата = ВыборДаты.Value

If IsDate(НачальнаяДата) And IsDate(КонечнаяДата) Then

If КонечнаяДата < НачальнаяДата Then

MsgBox "Начальная дата должна предшествовать конечной дате."

НачальнаяДата.SetFocus

Exit Sub

End If

Else

MsgBox "Введите допустимые значения начальной и конечной даты."

Exit Sub

End If

End Sub

Private Sub НачальнаяДата_GotFocus()

НачальнаяДата = ВыборДаты.Value

End Sub

Private Sub Кнопка_Click()

On Error GoTo Err_Кнопка7_Click

'Преобразование временного промежутка в текстовую строку: 01.01.99# and #01.05.99

Dim Dt As String, k As Byte, n As Byte

n = 0: Dt = Str(Forms![Календарь]![НачальнаяДата]) & "# and #"

Dt = Dt & Str(Forms![Календарь]![КонечнаяДата])

'Замена в строке точек на слэш для формата: #01/05/99#

k = InStr(Dt, ".")

Do While k > 0: n = n + 1: Dt = Left(Dt, k - 1) & "/" & Right(Dt, Len(Dt) - k)

k = InStr(Dt, "."): Loop

'Обмен местами значений числа и месяца для формата #Месяц/День/Год#

Dim a(1 To 4) As String, b As Variant

b = Array(1, 4, 1, 19, 16)

For n = 1 To 4: k = b(n): a(n) = Mid(Dt, k, 2): Next n

Dt = "#" & a(1) & "/" & a(2) & Mid(Dt, 6, 10) & a(3) & "/" & a(4) & Right(Dt, 3) & "#)"

'Ссылка на текущую базу данных.

Dim dbs As Database, qdf As QueryDef

Set dbs = CurrentDb

'Формирование текста запроса с вклейкой введенного временного промежутка

Dim Zapros As String

Zapros = "SELECT Клиенты.Фамилия, Клиенты.Имя, Клиенты.Отчество,"

Zapros = Zapros & " Клиенты.Фирма , Поставка.Сумма"

Zapros = Zapros & " FROM Клиенты INNER JOIN Поставка ON Клиенты.N = Поставка.N"

Zapros = Zapros & " WHERE ((Поставка.Дата) Between " & Dt

Zapros = Zapros & " GROUP BY Клиенты.Фамилия, Клиенты.Имя,"

Zapros = Zapros & " Клиенты.Отчество, Клиенты.Фирма, Поставка.Сумма;"

' Создание нового сохраненного запроса

Set qdf = dbs.CreateQueryDef("ЗапросХ", Zapros)

'Открытие запроса

DoCmd.OpenQuery qdf.Name

Exit_Кнопка7_Click:

Exit Sub

Err_Кнопка7_Click:

MsgBox Err.Description

Resume Exit_Кнопка7_Click

End Sub


3. Выведите список товаров, отпущенных по накладным в конкретную дату. Укажите количество и стоимость товара. Используйте данные из таблиц «Список товаров: наименование» и «Товары: количество, стоимость, дата», связанные по коду товара. Назовите запрос «Выборка товаров по дате».

QBE:

Поле:

Наименование

Количество

Стоимость

Дата

Имя таблицы:

Список товаров

Товары

Товары

Товары

Сортировка:

по возрастанию




Вывод на экран:

Условие отбора:




[Введите дату]