1108: l_approval_date DATE;
1109: l_ap_id NUMBER;
1110: CURSOR c_old_appr_ap (p_ap_rev_id IN NUMBER) IS
1111: SELECT ap2.audit_procedure_rev_id
1112: FROM amw_audit_procedures_b ap1, amw_audit_procedures_b ap2
1113: WHERE ap1.audit_procedure_id = ap2.audit_procedure_id
1114: AND ap1.audit_procedure_rev_id = p_ap_rev_id
1115: AND ap2.curr_approved_flag = 'Y'
1116: AND ap2.latest_revision_flag = 'N';
1158:
1159: IF (l_update_status = 'APPROVED') THEN
1160: -- Update the status of the AP object to 'A' -- Approved
1161: l_approval_date := SYSDATE;
1162: UPDATE amw_audit_procedures_b
1163: SET approval_status = 'A',
1164: object_version_number = object_version_number + 1,
1165: curr_approved_flag = 'Y',
1166: latest_revision_flag = 'Y',
1167: approval_date = l_approval_date
1168: WHERE audit_procedure_rev_id = l_ap_rev_id
1169: AND object_version_number = l_object_version_number;
1170: IF l_old_appr_ap_rev_id IS NOT NULL THEN
1171: UPDATE amw_audit_procedures_b
1172: SET object_version_number = object_version_number + 1,
1173: curr_approved_flag = 'N',
1174: latest_revision_flag = 'N',
1175: end_date = l_approval_date
1176: WHERE audit_procedure_rev_id = l_old_appr_ap_rev_id;
1177: END IF;
1178: -- AMW.D Update the control associations (set approval_date)
1179: select audit_procedure_id into l_ap_id
1180: from amw_audit_procedures_b
1181: where audit_procedure_rev_id = l_ap_rev_id;
1182: update amw_ap_associations
1183: set approval_date = l_approval_date
1184: where audit_procedure_id = l_ap_id
1193: and deletion_approval_date is null;
1194: ELSIF (l_update_status = 'REJECTED') THEN
1195: -- Update the status of the AP object to 'R' -- Rejected
1196: IF l_old_appr_ap_rev_id IS NOT NULL THEN
1197: UPDATE amw_audit_procedures_b
1198: SET object_version_number = object_version_number + 1,
1199: latest_revision_flag = 'Y'
1200: WHERE audit_procedure_rev_id = l_old_appr_ap_rev_id;
1201: UPDATE amw_audit_procedures_b
1197: UPDATE amw_audit_procedures_b
1198: SET object_version_number = object_version_number + 1,
1199: latest_revision_flag = 'Y'
1200: WHERE audit_procedure_rev_id = l_old_appr_ap_rev_id;
1201: UPDATE amw_audit_procedures_b
1202: SET approval_status = 'R',
1203: object_version_number = object_version_number + 1,
1204: curr_approved_flag = 'N',
1205: latest_revision_flag = 'N',
1206: end_date = SYSDATE
1207: WHERE audit_procedure_rev_id = l_ap_rev_id
1208: AND object_version_number = l_object_version_number;
1209: ELSE
1210: UPDATE amw_audit_procedures_b
1211: SET approval_status = 'R',
1212: object_version_number = object_version_number + 1,
1213: curr_approved_flag = 'N',
1214: latest_revision_flag = 'Y',
1217: AND object_version_number = l_object_version_number;
1218: END IF;
1219: ELSE
1220: -- Update the status of the AP object to 'D' -- Draft
1221: UPDATE amw_audit_procedures_b
1222: SET approval_status = 'D',
1223: object_version_number = object_version_number + 1
1224: --curr_approved_flag = 'N',
1225: --latest_revision_flag ='Y'