Skip to content

Latest commit

 

History

History
24 lines (24 loc) · 1.25 KB

task.md

File metadata and controls

24 lines (24 loc) · 1.25 KB

Необходимо спроектировать триггера, которые будут обрабатывать логику и целостность данных в таблицах.


Функциональные требования:

  1. При изменении поля скидка (orders.discount) должны пересчитываться суммы по строкам заказа (orders_detail.str_sum).
  2. При добавлении строки заказа, удалении строки заказа или изменении цены или количества по строке заказа должна изменяться сумма заказа (orders.amount).
  3. При изменении цены или количества по строке заказа должна автоматом пересчитываться сумма по строке заказа (orders_detail.str_sum).
  4. Поле в строке заказа orders_detail.idx порядковый номер должен формироваться автоматически и в нумерации строк заказа не должно быть пропусков. Последовательность должна быть строго 1,2, … количество строк заказа.
  5. Значение скидки (orders.discount) может иметь значение от 0 до 100
  6. Сумма по строке вычисляется следующим образом = цена(orders_detail.price)*количество(orders_detail.qty)* (1-скидка(orders.descount)/100)

Ограничения: Изменять можно только следующие поля orders.n_doc orders.date_doc orders.discount orders_detail.id_order orders_detail.price orders_detail.qty orders_detail.sku остальные пересчитываются автоматически.