= Атомично креирање на финансиска трансакција со една помошна финансиска трансакција Корисникот креира нова финансиска трансакција со следните податоци: - Име на финансиска трансакција:// „Пазарување во маркет“ - Датум:// тековен датум - Трансакциска сметка:// Cash Account (id = 1) - Потрошен износ:// 3000 МКД - Заработен износ:// 0 МКД Оваа акција мора да резултира со: - нов запис во табелата `transaction` со автоматско поставен тековен датум - нов запис во `transaction_breakdown` доколку проверката за лимит не фрли исклучок - автоматско ажурирање на балансот на трансакциската сметка - точна пресметка на `net_amount` **Доколку било кој чекор не успее, ниеден податок не смее да остане запишан во базата. Се прави автоматски `ROLLBACK` ако настане грешка** {{{#!sql BEGIN; -- Се активира тригерот `trg_set_transaction_date` INSERT INTO transaction ( transaction_name, amount ) VALUES ( 'Пазарување во маркет', 3000 ); -- Се активира тригерот `trg_cash_account_limit` INSERT INTO transaction_breakdown ( transaction_id, transaction_account_id, spent_amount, earned_amount ) VALUES ( currval('transaction_transaction_id_seq'), 1, 3000, 0 ); -- Се активира тригерот `trg_update_transaction_account_balance` -- Се активира тригерот `trg_update_transaction_net_amount` COMMIT; -- ROLLBACK ако настане грешка }}}