Модифікація даних

Моделювання обробки даних пов'язане з діями СУБД по внесенню інформації в базу даних у формі операцій додавання, зміни або видалення даних. При цьому будь-який запит але модифікації даних завжди є певною функціональної операції користувача інформаційної системи.

приклад

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

Розглянутий приклад містить у своїй формулюванні кілька операцій, які повинні бути виконані в комплексі. При цьому формулювання містить вказівку на виконання операції коригування сховища даних [1] про загальну кількість товарів на складі (рис. 5.66). Ця операція може бути виконана у вигляді критичного дії, що також буде враховано в процесі моделювання. * V

image372

Мал. 5.66. Опис структури вихідних даних


Як і для моделювання запитів вибірки, при моделюванні обробки даних потрібно визначити комплекс вхідних параметрів. Оскільки для процедур обробки часто використовується досить велика кількість параметрів, то для прикладу буде розглянута ситуація використання комплексного бізнес-елемента вихідних даних. Потім, якщо буде необхідність у створенні самостійних бізнес-елементів під окремі параметри, в даному бізнес-елементі можна буде замінити простий атрибут на створений бізнес-елемент.

Спочатку необхідно визначити початок і кінець майбутньої процедури (рис. 5.67).

image373

Мал. 5.67. Визначення початку і кінця процедури

В якості вихідних даних визначено бізнес-елемент, що описує параметри процедури. Як результативних даних спеціальний бізнес-елемент не створювалася, оскільки результатом є простий текст помилки або порожній рядок, якщо помилка відсутня. Це визначило варіант вказівки результату у вигляді простих текстових даних.

Згідно з умовою в прикладі оприбуткування товару на складі може виконуватися тільки в разі, коли товар буде знайдений в базі даних. Тому першим завданням буде перевірка наявності товару в базі даних (рис. 5.68), використовуючи таблицю З ргобісХ, що в моделі можна уявити комбінацією глобального процесу вибірки товарів по заданому параметру і простого рішення щодо визначення успішності виконання операції.

image374

Мал. 5.68. Перевірка існування зазначеного товару

Для того, щоб перевірити наявність товару, потрібно виконати просту вибірку даних за ідентифікатором товару, який присутній у вихідних даних процедури. З огляду на те що цей параметр потрібен в якос-

стве самостійного бізнес-елемента, він створюється окремо і вноситься в опис параметрів вихідних даних процедури замість існуючого атрибуту (рис. 5.69).

image375

Мал. 5.69. Зміна структури параметрів процедури


Для вибірки формується окрема модель реалізації, яка демонструє правильну організацію запиту до бази даних і накладення обмежень па результат обраних даних (рис. 5.70).

В результаті вибірки запит поверне одну або нуль записів з таблиці товарів, що потім перевіряється простим рішенням, де "Так" означає, що запис існує, а "Ні" - що записів не повернуто і товар в базі даних відсутня.

В результаті такої перевірки, згідно з умовою обробки, має бути повернуто повідомлення про помилку, що також відбивається в моделі.

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

Для того щоб в моделі уявити повернення повідомлення про помилку, необхідно створити повідомлення, що можна зробити, вибравши в контекстному меню бізнес-елементів пункт "Створити / Повідомлення" (рис. 5.72). У відповідному діалоговому вікні описується потрібне повідомлення.


image376

Мал. 5.70. Вибірка товарів за ідентифікатором


image377

Мал. 5.71. Додавання повідомлення про помилку



image378

Мал. 5.72. Опис повідомлення про помилку


Надалі це повідомлення прив'язується до елементу "Передавач повідомлень", що відображає відправку повідомлення користувачу.

Подальше моделювання пов'язане з безпосередніми операціями внесення даних в базу даних, для чого необхідно виконати ряд дій, а саме: створити новий запис у таблиці "Отримання товару" і змінити загальну кількість товару на складі в сховище "Кількість товарів". Ці дві операції виконуються послідовно один за одним, але перед другою операцією необхідно визначити, як її виконати, оскільки товар може надійти перший раз і в сховище кількості товарів па складі може не бути відповідного запису.

При розгляді умов завдання було виділено, що операцію з внесення даних про загальну кількість товарів на складі можна виконати із застосуванням інструменту тригерів, що в даному випадку буде представлено в рамках опису процедури у вигляді глобального процесу (рис. 5.73).

Паралельно з додаванням необхідних завдань в модель процедури вносяться сховища, які характеризують взаємодію задач з таблицями даних (рис. 5.74), враховуючи, що обов'язковим є операція збереження даних в сховищі даних.

Тепер ця модель може вважатися закінченою, яка описує повний процес збереженої процедури, враховуючи, що деякі операції: вибірка даних для перевірки, тригер на додавання товару, є глобальними процесами і описуються додатково. Саме тому при додаванні цих глобальних процесів в модель процедури обробки даних не були включені відповідні вказівки на використання таблиць.


image379

Мал. 5.73. Модель реалізації процедури


image380

Мал. 5.74. Додавання таблиць для збереження даних



  • [1] термінології нотації ВРМN.
 
< Попер   ЗМІСТ   Наст >