create or replace trigger InsertAISyn
after update ON REQ_PROC
FOR EACH ROW
DECLARE
OLDSTATUS VARCHAR2(64);
NEWSTATUS VARCHAR2(64);
STUDYUID VARCHAR2(64);
STUDYID VARCHAR2(64);
PATIENTID VARCHAR2(64);
Modality VARCHAR2(64);
StudyDesc VARCHAR2(64);
BEGIN
NEWSTATUS :=:new.STATUS;
OLDSTATUS := :old.STATUS;
STUDYUID:=:new.STUDY_INS_UID;
Modality:=:new.MODALITY;
STUDYID:=:new.REQ_PROC_ID;
StudyDesc:=:new.PARTOFCHECK;
IF NEWSTATUS ='已检查' AND OLDSTATUS<>NEWSTATUS then
BEGIN
delete hhpacs.SynAIStaus where STUDYUID= STUDYUID;
if(Modality = 'CT') then
BEGIN
insert into hhpacs.SynAIStaus(STUDYUID,STUDYID,PATIENTID,Modality,StudyDesc,SynStatus)
values(STUDYUID,STUDYID,PATIENTID,Modality,StudyDesc,0);
END;
end if;
END;
end if;
END;
after update ON REQ_PROC
FOR EACH ROW
DECLARE
OLDSTATUS VARCHAR2(64);
NEWSTATUS VARCHAR2(64);
STUDYUID VARCHAR2(64);
STUDYID VARCHAR2(64);
PATIENTID VARCHAR2(64);
Modality VARCHAR2(64);
StudyDesc VARCHAR2(64);
BEGIN
NEWSTATUS :=:new.STATUS;
OLDSTATUS := :old.STATUS;
STUDYUID:=:new.STUDY_INS_UID;
Modality:=:new.MODALITY;
STUDYID:=:new.REQ_PROC_ID;
StudyDesc:=:new.PARTOFCHECK;
IF NEWSTATUS ='已检查' AND OLDSTATUS<>NEWSTATUS then
BEGIN
delete hhpacs.SynAIStaus where STUDYUID= STUDYUID;
if(Modality = 'CT') then
BEGIN
insert into hhpacs.SynAIStaus(STUDYUID,STUDYID,PATIENTID,Modality,StudyDesc,SynStatus)
values(STUDYUID,STUDYID,PATIENTID,Modality,StudyDesc,0);
END;
end if;
END;
end if;
END;