Changes between Version 5 and Version 6 of DatabaseProgramming


Ignore:
Timestamp:
09/16/26 07:23:31 (11 days ago)
Author:
235013
Comment:

Преформулирани забелешки за тригерите во процедурите 3, 7 и 10

Legend:

Unmodified
Added
Removed
Modified
  • DatabaseProgramming

    v5 v6  
    219219=== Процедура 5: Промена на статус на проект (sp_update_project_status) ===
    220220
    221 Го води животниот циклус на проектот: го менува статусот и запишува редица во историјата на статуси со точно еден актер, корисник на софтверската агенција или менаџмент корисник. Новиот статус мора да постои; дека проектот и актерот постојат и дека корисникот на агенцијата ѝ припаѓа на агенцијата на проектот го проверува тригерот при запишувањето во историјата. Ако проектот веќе е во целниот статус, не се запишува ништо. Проект што веќе има рецензија не може да се врати во отворен статус.
     221Го води животниот циклус на проектот: го менува статусот и запишува редица во историјата на статуси со точно еден актер, корисник на софтверската агенција или менаџмент корисник. Новиот статус мора да постои. Тригерот при запишувањето во историјата проверува дека проектот и актерот постојат и дека корисникот на агенцијата ѝ припаѓа на агенцијата на проектот. Ако проектот веќе е во целниот статус, не се запишува ништо. Проект што веќе има рецензија не може да се врати во отворен статус.
    222222
    223223{{{#!sql
    … …  
    241241    PERFORM fn_assert_status_exists(p_new_status_id);
    242242
    243     -- Дека проектот и актерот постојат и дека актерот од агенцијата ѝ припаѓа
    244     -- на агенцијата на проектот го проверува тригерот trg_status_history_actor
    245     -- при INSERT во Project_Status_History подолу
    246 
    247243    -- Ако проектот веќе е во целниот статус, не се запишува ништо
    248244    SELECT status_id INTO v_current_status_id
    … …  
    267263    WHERE  project_id = p_project_id;
    268264
     265    -- проектот, актерот и неговата агенција ги проверува trg_status_history_actor
    269266    INSERT INTO Project_Status_History (
    270267        project_id, status_id, vendor_user_id, management_user_id, comment
    … …  
    367364    END IF;
    368365
    369     -- Дека проектот е завршен (Completed или Cancelled) го проверува тригерот
    370     -- trg_review_finished_project при INSERT во Review подолу
    371 
    372366    -- Најмногу една рецензија по проект (UNIQUE врз Review.project_id)
    373367    IF EXISTS (SELECT 1 FROM Review WHERE project_id = p_project_id) THEN
    … …  
    414408    END IF;
    415409
     410    -- завршеноста на проектот (Completed или Cancelled) ја проверува trg_review_finished_project
    416411    INSERT INTO Review (project_id, client_user_id, summary_text)
    417412    VALUES (p_project_id, p_client_user_id, p_summary_text)
    … …  
    505500    PERFORM fn_assert_not_blank(p_resolution_note, 'resolution_note');
    506501
    507     -- Дека доделениот менаџмент корисник постои го проверува тригерот
     502    -- Постоењето на доделениот менаџмент корисник го проверува тригерот
    508503    -- trg_dispute_ticket_resolve при UPDATE подолу, кој го запишува и
    509504    -- времето на решавање (resolved_at); само отворен спор може да се реши