Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
22 лаб роб (Створення фільтрів і запитів).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
626.69 Кб
Скачать

4. Результат роботи показати викладачу.

Завдання 16. Створення об’єкта Модуль

Відкрийте запит У наявності в режимі Таблица і переконайтеся, що в полях Залишилося і Сума підраховуються значення тільки для товарів, що і продавалися, і купувалися, але відсутні записи про товари, що лежать "без руху".

Давайте з'ясуємо, чому це відбувається. У завданні 12 була введена формула:

Залишилося: Кіл+[Sum-Прийшло]-[Sum-Пішло] (1)

для обчислення значень у полі Залишилося. Проаналізуємо результати обчислення за цією формулою для різних випадків руху товарів, що занесено в таблицю.

Товар

Кіл

Sum-Прийшло

Sum-Пішло

Залишилося

56437

220

30

25

225

56426

200

40

порожне значення

порожне значення

56429

150

порожне значення

30

порожне значення

16226

16

порожне значення

10

порожне значення

5024

100

50

порожне значення

порожне значення

для решти

числове значення

порожне значення

порожне значення

порожне значення

Як видно з таблиці, числове значення в полі Залишилося, підрахувалося тільки для товару 56437, у якого всі складові у формулі є числовими значеннями і не підрахувалося для всіх інших товарів, тому що в них хоча б одна складова виявилась «порожне значення». Подивимося, що відбудеться, якщо зробити заміну «порожніх значень» на числові значення. Для цього виконаємо операції купівлі і продажу деяких товарів. Як "продавати" і "купувати" товари було показано в завданні 3-4 лабораторної роботи №21.

Завдання:

  1. Продайте товар 56426 у кількості 60 штук, тобто замініть «порожне значення» у колонці Sum-Пішло на числове значення 60. (Для продажу товару скористайтесь формою Вимога)

  2. Купіть товар 56429 у кількості 0 штук, тобто замініть «порожне значення» у колонці Sum-Прийшло на числове значення 0. (Для купівлі товару скористайтесь формою Накладна)

  3. Відкрийте запрос У наявності в режимі Таблица.

Як тільки «порожне значення» замінилися на числові, у тому числі і на цифру 0, у полі Залишилося з'явилися результати обчислень за формулою (1) і таблиця набула наступного вигляду:

Товар

Кіл

Sum-Прийшло

Sum-Пішло

Залишилося

56437

220

30

25

225

56426

200

40

60

180

56429

150

0

30

120

16226

16

порожне значення

10

порожне значення

5024

100

50

порожне значення

порожне значення

для решти

числове значення

порожне значення

порожне значення

порожне значення

Висновок: Для того, щоб формула (1) працювала для всіх можливих варіантів руху товарів, необхідно і достатньо у всіх комірках запиту У наявності зробити перетворення: «порожне значення» замінити на числове значення, що дорівнює 0.

Завдання 17. Створити модуль Преобразование.

Модуль буде використовуватися програмою для перетворення в запиті У наявності, так званих, "порожніх" значень у нульові (числові) значення. Зі списку функцій, що є в програмі Access, для цієї мети підходить функція Zero.

Послідовність дій при виконанні завдання:

  1. Відкрити у вікні База данных Склад вкладку Модули. Клацнути по кнопці Создать.

  1. У вікні, що відкрилося Microsoft Visual Basic, набрати текст програми, який наведено нижче.

Примітки:

  1. Після правильного введення першого рядка автоматично створюється останній рядок.

  2. Робочим тілом програми є ліва частина запису (виділена жирним шрифтом), у правій частині, після знака "апостроф" записано коментарі (не набирати) до кожного з рядків.

Function Zero(Value) ' Призначення імені функції

If IsNull(Value) Then ' Перевірка умови: Якщо комірка порожня, то:

Zero = 0 ' Функції Zero присвоїть 0 (нуль)

Else ' Інакше

Zero = Value ' Функції Zero присвоїть значення комірки

End If ' Кінець умови

End Function ' Кінець функції

3. Зберегти Модуль з ім'ям Преобразование. Закрити вікно Microsoft Visual Basic.

Завдання 18. Змінити запит У наявності, додавши функцію Zero, створену в модулі Преобразование.

Послідовність дій при виконанні завдання:

  1. Відкрити запит У наявності. Змінити формулу:

Залишилося:[Кіл]+[Sum-Прийшло]-[Sum-Пішло]

на

Залишилося:[Кіл]+Zero([Sum-Прийшло])-Zero([Sum-Пішло])

  1. Зберегти запит У наявності. Перевірити запит. У режимі Таблица поля Залишилося і Сума повинні бути заповнені для кожного запису.

Робота зі створення складного запиту У наявності завершена, а це означає, що комп'ютеризована інформаційно-довідкова система готова до використання. Перевіримо, як за допомогою КІДС можна здійснювати реєстрацію руху товарів через склад:

Завдання 19. (Контрольне)

  1. Товар

    Прийшло

    Пішло

    16115

    58

    30

    У запиті У наявності подивитися і запам'ятати значення поля Залишилося для товару 16115.
  2. Зареєструвати прихід і відправлення товару в кількості, зазначеній в таблиці (дата виконання всіх операцій - сьогоднішня):

  1. Значення поля Залишилося для товару 16115 повинно збільшитися на 28 одиниць.

  2. Аналогічну операцію провести для товарів 15407, 15408

Запит У наявності виводить повну інформацію про стан справ на складі. На практиці часто виникає необхідність одержувати оперативну інформацію тільки про деякі товари, відібрані за зазначеним критерієм. Наприклад: Вивести список товарів, вартість яких знаходиться в заданому інтервалі цін, або Вивести список товарів, назви яких починаються з зазначеної літери, або Товари, куплені в певну дату і т. п.

Завдання 20. Підготувати макет запиту.

Макет необхідний для створення на його основі запитів-вибірок з бази даних за різними критеріями вибору.

Послідовність дій при створенні макета:

  1. У вікні База данных: Склад вибрати вкладку Запрос.

  2. Клацнути покажчиком мишки по кнопці Создать.

  3. У вікні, що з'явилося, Новий запрос вибрати режим Конструктор.

  4. У вікні Добавление таблицы вибрати одну з трьох вкладок, щоб одержати доступ до можливих джерел даних.

  5. Вибрати потрібне джерело даних. У нашому випадку для більшості запитів - запит У наявності.

  6. Клацнути покажчиком мишки по кнопці Добавить, потім по кнопці Закрыть.

  7. Перенести назви потрібних полів з верхньої частини Конструктора в рядок Поле (ми будемо додавати для кожного з запитів різну кількість полів, в залежності від того, який запит нам потрібно створити).

Дії по створенню будь-якого запиту-вибірки повинні починатися зі створення макета шляхом виконання перерахованих вище семи пунктів. У наступних завданнях розглянемо порядок створення типо­вих видів запитів, вивчивши які можна успішно створювати будь-які запити-вибірки.

Завдання 21. Створити запит-вибірку: П'ять найдорожчих товарів.

Поля: Товар, Найменування, Ціна, Залишилося.

Послідовність дій при виконанні завдання:

Оскільки перші сім пунктів створення запиту вже виконано, продовжимо:

  1. У рядку Сортировка в колонку Ціна встановити опцію По убыванию.

  1. Установити курсор у першій вільній комірці рядка Поле.

  1. У головному меню вибрати команду Вид. У меню, що з'явилося, вибрати опцію Свойства.

  2. У вікні Свойства запроса в рядок Набор значений поставити цифру 5.

  3. Закрити вікно, зберегти запит на диску з ім'ям 5 дорогих. Перевірити, як працює створений Запит.

Завдання 22. Створити запит: Список товарів, ціна яких знаходиться між 5 і 8 грн.

Поля: Товар, Найменування, Ціна, Залишилося.

Послідовність дій при виконанні завдання:

1 -7. Створити макет запиту.

8. Встановити курсор у колонку Ціна в рядок Условие отбора.

9. Записати в цю комірку вираз: >5And<8.

  1. Закрити вікно, зберегти запит з ім'ям Товари від 5 до 8 грн.

  2. Перевірити, як працює створений Запит.

Завдання 23. Створити запит: Список товарів за першою буквою в найменуванні.

Поля: Товар, Найменування, Ціна, Залишилося, Сума.

Послідовність дій при виконанні завдання:

1 -7. Створити макет запиту.

  1. Установити курсор у колонку Найменування в рядок Условие отбора.

  2. Записати в цю комірку вираз: Lіkе[Введіть літеру]&"*".

  1. Закрити вікно, зберегти запит з ім'ям: За літерою в назві.

  2. Перевірити, як працює створений Запит.

Завдання 24. Створити запит-вибірку Продаж в зазначену дату.

У запиті повинна виводитися наступна інформація про товари: код, кількість проданого, дата продажу, ціна, націнка, відпускна ціна, вартість продажу.

(З таблиці Відправлено вибрати поля: Товар, Пішло, ДатаП; з таблиці Товари поле Ціна)

Вказівка: Не всі з перерахованих у завданні імен полів є в джерелах даних. Три останніх імені з цього списку: націнка, відпускна ціна, вартість продажу - мають бути створені.

  • Націнка якщо товар продається менше 100 одиниць, то набавляється 40% від ціни товару, у всіх інших випадках - 25% від ціни товару.

  • ЦінаОтп - ціна з урахуванням націнки.

  • Вартість - вартість проданого товару.

Послідовність дій при виконанні завдання:

  1. У вікні База данных: Склад вибрати вкладку Запрос.

  2. Клацнути покажчиком мишки по кнопці Создать.

  3. У вікні, що з'явилося, Новый запрос вибрати режим Конструктор.

  4. У вікні Добавление таблицы вибрати джерела - дані з таблиць Товари і Відправлено.

  5. Перенести назви потрібних полів з верхньої частини Конструктора в рядок Поле.

  6. У першу вільну комірку рядка Поле ввести формулу:

Націнка:IIF([Пішло]<100;[Ціна]*0,40;[Ціна]*0,25)

7. У наступну комірку ввести формулу:

ЦінаОтп:[Ціна]+[Націнка]

8. У наступну комірку ввести формулу:

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