You are on page 1of 15

Лабораторна робота № 3

Тема: Створення полів, що обчислюються. Створення функцій,


що обчислюються. Створення додатків на основі створених таблиць
БД.
Мета:
1. Прищепити студентам практичні навички в створенні полів, що
обчислюються, функцій, що обчислюються та додатків на основі створених
таблиць БД.
2. Підготовити студентів до самостійного використання обов’язків
адміністратора БД.
Завдання на лабораторну роботу:
Всі дії та результати виконання цих дій повинні бути
продемонстровані за допомогою скриншотів (образ екрану) та
прокоментовані.
1. До таблиці, яка була створена в пункті 2, лабораторної роботи 2, додати 2-3
поля, що обчислюються (наприклад, рік народження кожного співробітника, якщо в
таблиці зберігається його вік; ціна кожного товару в доларах, якщо в таблиці
зберігаються ціни в гривнях) та 2-3 функції, що обчислюються (наприклад, середній
бал в групі з якогось іспиту; кількість студентів з максимальним балом).
2. На основі створених в другій лабораторній роботі таблиць створити
додаток, в якому відобразити спроектовану загальну таблицю, яка є результатом
об’єднання пов’язаних між собою таблиць.
3. Додати в додаток 2-3 поля, що обчислюються (придумані в пункті 1).
4. Додати в додаток 2-3 функції, що обчислюються (придумані в пункті 1),
таким чином, щоб результати виконання цих функцій виводились в компоненти
різних типів (наприклад, середній бал в групі з якогось іспиту в таблицю, а кількість
студентів з максимальним балом в компонент Item).
5. Оформити додаток таким чином:
 підписи полів таблиці (але не їх імена) мають були українською
мовою та складалися з декількох слів;
 над таблицею повинна бути назва таблиці та ще якась загальна
інформація, відформатована належним чином;
 під таблицею має бути якась загальна інформація, відформатована
належним чином, в тому числі результат обрахунку функцій, що
обчислюються.
6. Оформити звіт по лабораторній роботі. Звіт повинен містити інформацію
про виконання кожного пункту завдання на лабораторну роботу.
7. Створити відео-файл з демонстрацією результатів виконання всіх пунктів
завдання (поясненням етапів виконання завдань та результатів).

Зміст звіту:
1. Титульна сторінка.
2. Завдання на лабораторну роботу.
3. Виконання кожного пункту завдання та опис всіх необхідних дій і
результату.

Короткі теоретичні відомості


Розглянемо створення полів, що обчислюються та функцій, що обчислюються
на прикладі таблиць, створених в минулій лабораторній роботі.
Поля, що обчислюються та функції, що обчислюються – не зберігаються в
таблицях!!! Їх значення обчислюються і, відповідно, оновлюються кожного разу, під
час виконання запиту, за допомогою якого вони обраховуються!
Припустимо нам потрібно додати до запиту чотири стовпці «сума у валюті»,
«сума у грн», «ПДВ» та «Всього». Для цього до нашого запиту додамо 4 строки.
Спочатку помножимо кількість товару у замовленні на ціну у валюті за одиницю.
ORDERS.QUANTITY*PRODUCTS.PRICE as CASH_CURRENCY
Тут після ключового слова «as» йде назва нового створбваного стовпця, куди
буде зберігатися результат множення.
ORDERS.QUANTITY*PRODUCTS.PRICE*1.0 as CASH_GRIVNA
ORDERS.QUANTITY*PRODUCTS.PRICE*0.2 as PDV
ORDERS.QUANTITY*PRODUCTS.PRICE*1.2 as ALL
Збережемо цей запит.
select "ORDERS"."ID_ORDER" as "ID_ORDER",
"PRODUCTS"."PRODUCT_NAME" as "PRODUCT_NAME",
"PRODUCTS"."UNIT" as "UNIT",
"ORDERS"."QUANTITY" as "QUANTITY",
"PRODUCTS"."PRICE" as "PRICE",
"ORDERS"."QUANTITY"*"PRODUCTS"."PRICE" as "CASH_CURRENCY",
"ORDERS"."QUANTITY"*"PRODUCTS"."PRICE" as "CASH_GRIVNA",
"ORDERS"."QUANTITY"*"PRODUCTS"."PRICE"*0.2 as "PDV",
"ORDERS"."QUANTITY"*"PRODUCTS"."PRICE"*1.2 as "ALL"
from "PRODUCTS" "PRODUCTS",
"ORDERS" "ORDERS"
where "ORDERS"."ID_PRODUCT"="PRODUCTS"."ID_PRODUCT"
order by ORDERS.ID_ORDER ASC

Підписи полів таблиці (але не їх імена) можна задавати не тільки за


допомогою ключового слова «as», а й під час створення додатку, в налаштуваннях
відображення таблиці.

Ще нам буде потрібен запит на отримання суми всіх замовлень. Підготуємо його
одразу:

select sum("PRODUCTS"."PRICE"*"ORDERS"."QUANTITY") as
"SUMofPRICExQUANTITY"
from "PRODUCTS","ORDERS"
where "PRODUCTS"."ID_PRODUCT"="ORDERS"."ID_PRODUCT"

В цьому запиті ми за допомогою ключового слова sum знаходимо суму всіх замовлень і
зберігаємо результат в поле «SUMofPRICExQUANTITY».

У нас тепер є всі необхідні таблиці і запити для створення додатку, який дасть змогу по
нашим таблицям генерувати «накладні».

Тепер перейдемо безпосередньо до створення нашого додатка.


На головній сторінці БД заходимо в «App Builder».
Просто натискаємо кнопку Create.
Вибираємо перший пункт «New Application».
Даємо назву нашому додатку в полі «Name».

Першу сторінку залишаемо пустою «Blank». Обов’язково спочаку натискаємо «Add


Page».

Тут можна змінити мову додатку.

В цьому пункті можна змінити зовнішній вигляд додатку.

Підтверджуємо вибір.
Потім тискаємо «Edit Page 1».

Починаємо форматувати наш додаток Все вікно додатку розділене на регіони


«Regions». Ми можемо додавати нові регіони та редагувати існуючі. Для цього
натиснемо на «Regions» і перетягнемо в «Content Body» Classis Report

Додаємо нашу результуючу таблицю з запиту. Виберемо «SQL Query».


Даємо назву нашому запиту.
Копіюємо збережений раніше запит в це поле.

Додаємо шапку. Для цього додаємо ще один регіон. Але тепер при виборі типу
замість «Classic Report» обераємо «Static Content».

Код який потрібно додати:

<HTML>
<body>
<pre>
<b><u>Постачальник</u></b> &#9;Компанія КРАТОС ТОВ
&#9;&#9;тел. 206-01-74,332-61-45
<b><u>Одержувач</u></b> &#9;ТОВ "Укр.експериментально-конст.центр"
<b><u>Платник</u></b> &#9;той самий
<b><u>Замовлення</u></b> &#9;Сч. вход. СВ-0000127 (29.11.10)
&#9;&#9;<b><u>Валюта</u></b> &#9;&#9;Гривня
<b><u>Умова:</u></b> &#9;&#9;Безготівковий розрахунок
&#9;&#9;<b><u>Курс</u></b> &#9;&#9;1,0
</pre>
</body>
</HTML>
Додаємо ще один заголовок.

Код заголовку.
<HTML>
<body>
<div align = center><font size="5" face="Arial"><b>Прибуткова накладна № ПН-
0000226</b></font></div>
<div align = center><font size="5" face="Arial"><b>від 10 Грудня 2010 р.</b></font></div>
</body>
</HTML>

Відредактуємо шапку. В пункті «Template» виберемо «No Template». Це дасть змогу


забрати підпис самого регіону.
Чорновий варіант додатку. Ше залишилось додати сумарні значення і нижні
підписи.
Структура
Додаємо напис «Всього:».

Додаємо звіт. Даємо йому назву в полі «Title».

Додаємо запит для отримання кінцевого результату. Ще один новий регіон.


select sum("PRODUCTS"."PRICE"*"ORDERS"."QUANTITY") as "CAHS_GRIVNA",
sum("PRODUCTS"."PRICE"*"ORDERS"."QUANTITY")*0.2 as "PDV",
sum("PRODUCTS"."PRICE"*"ORDERS"."QUANTITY")*1.2 as "ALL"
from "PRODUCTS","ORDERS"
where "PRODUCTS"."ID_PRODUCT"="ORDERS"."ID_PRODUCT"

В цьому запиті ми знаходимо суми по стовпцях «CAHS_GRIVNA», «PDV» та


«ALL»

Кінцевий варіант додатку. Усі налаштовані регіони та об’єкти.

Головна сторінка додатку.

You might also like