All pastes #375931 Raw Edit

Stuff

public text v1 · immutable
#375931 ·published 2007-02-28 18:45 UTC
rendered paste body

CREATE TRIGGER tr_PCA_WorkOrder_Completion ON WORK_ORDER
AFTER UPDATE
AS

declare @tos_status nvarchar(50)
declare @i_closed_time datetime
declare @d_closed_time datetime

-- Query Closed Time before and after update
select @i_closed_time = closed_time from inserted
select @d_closed_time = closed_time from deleted

-- if closed time of inserted is not null but closed time of deleted is then we're interested
if @i_closed_time is not null and @d_closed_time is null
begin
        -- Find current status of associated tracked object
        select @tos_status = status from tracked_object_status tos, inserted i where tos.tobj_status_key = i.tobj_status_key

        -- If tracked object status record set to close, add record to PCA_Events table
        if @tos_status = 'Closed'
        begin
                INSERT INTO PCA_EVENTS ( connector_id, object_key,
                [object_name], object_verb,
                event_priority, event_status, event_description, other_object_key)
                SELECT 'ProductionCentreAdapter', order_key, 'WORK_ORDER', 'Update', 1, 0, 'WorkOrder Completion', tobj_status_key
                FROM INSERTED
        end
end