The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_last_update_date IN DATE ,
x_last_updated_by IN NUMBER ,
x_last_update_login IN NUMBER ,
x_org_id IN NUMBER
) AS
CURSOR cur_old_ref_values IS
SELECT *
FROM IGS_PR_STDNT_PR_OU_ALL
WHERE ROWID = x_rowid;
(p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
IF (p_action = 'UPDATE') THEN
new_references.creation_date := old_references.creation_date;
new_references.last_update_date := x_last_update_date;
new_references.last_updated_by := x_last_updated_by;
new_references.last_update_login := x_last_update_login;
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE person_id = x_person_id
AND course_cd = x_course_cd
AND sequence_number = x_sequence_number
FOR UPDATE NOWAIT;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE restricted_attendance_type = x_attendance_type ;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE decision_org_unit_cd = x_org_unit_cd
AND decision_ou_start_dt = x_start_dt ;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE progression_outcome_type = x_progression_outcome_type ;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE progression_rule_cat = x_progression_rule_cat
AND pro_pra_sequence_number = x_pra_sequence_number
AND pro_sequence_number = x_sequence_number ;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE person_id = x_person_id
AND course_cd = x_course_cd
AND prg_cal_type = x_prg_cal_type
AND prg_ci_sequence_number = x_prg_ci_sequence_number
AND rule_check_dt = x_rule_check_dt
AND progression_rule_cat = x_progression_rule_cat
AND pra_sequence_number = x_pra_sequence_number ;
PROCEDURE BeforeInsertUpdate( p_action VARCHAR2 ) AS
/*
|| Created By : anilk
|| Created On : 25-FEB-2003
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
CURSOR c_parent (
cp_progression_rule_cat IGS_PR_RU_OU.progression_rule_cat%TYPE,
cp_pro_pra_sequence_number IGS_PR_RU_OU.pra_sequence_number%TYPE,
cp_sequence_number IGS_PR_RU_OU.sequence_number%TYPE ) IS
SELECT 1
FROM IGS_PR_RU_OU pro
WHERE pro.progression_rule_cat = cp_progression_rule_cat AND
pro.pra_sequence_number = cp_pro_pra_sequence_number AND
pro.sequence_number = cp_sequence_number AND
pro.logical_delete_dt is NULL;
IF (p_action = 'INSERT') AND new_references.progression_rule_cat IS NOT NULL
AND new_references.pro_pra_sequence_number IS NOT NULL
AND new_references.pro_sequence_number IS NOT NULL THEN
OPEN c_parent( new_references.progression_rule_cat, new_references.pro_pra_sequence_number, new_references.pro_sequence_number );
FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
ELSIF(p_action = 'UPDATE') THEN
IF NVL(new_references.progression_rule_cat,'1') <> NVL(old_references.progression_rule_cat,'1') OR
NVL(new_references.pro_pra_sequence_number,1) <> NVL(old_references.pro_pra_sequence_number,1) OR
NVL(new_references.pro_sequence_number,1) <> NVL(old_references.pro_sequence_number,1) THEN
OPEN c_parent( new_references.progression_rule_cat, new_references.pro_pra_sequence_number, new_references.pro_sequence_number );
FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
END BeforeInsertUpdate;
x_last_update_date IN DATE,
x_last_updated_by IN NUMBER,
x_last_update_login IN NUMBER,
x_org_id IN NUMBER
) AS
CURSOR c_sysout_type IS
SELECT s_progression_outcome_type
FROM igs_pr_ou_type
WHERE progression_outcome_type = x_progression_outcome_type;
x_last_update_date,
x_last_updated_by,
x_last_update_login,
x_org_id
);
IF (p_action = 'INSERT' OR P_ACTION = 'UPDATE') THEN
OPEN c_sysout_type;
IF (p_action = 'INSERT') THEN
-- Call all the procedures related to Before Insert.
check_parent_existance;
ELSIF (p_action = 'UPDATE') THEN
-- Call all the procedures related to Before Update.
check_parent_existance;
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to Before Delete.
check_child_existance;
ELSIF (p_action = 'VALIDATE_INSERT') THEN
IF Get_PK_For_Validation (
new_references.person_id ,
new_references.course_cd,
new_references.sequence_number) THEN
Fnd_Message.Set_Name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
ELSIF (p_action = 'VALIDATE_UPDATE') THEN
check_constraints;
ELSIF (p_action = 'VALIDATE_DELETE') THEN
check_child_existance;
BeforeInsertUpdate(p_action);
PROCEDURE INSERT_ROW (
X_ROWID IN OUT NOCOPY VARCHAR2,
X_PERSON_ID IN NUMBER,
X_COURSE_CD IN VARCHAR2,
X_SEQUENCE_NUMBER IN NUMBER,
X_PRG_CAL_TYPE IN VARCHAR2,
X_PRG_CI_SEQUENCE_NUMBER IN NUMBER,
X_RULE_CHECK_DT IN DATE,
X_PROGRESSION_RULE_CAT IN VARCHAR2,
X_PRA_SEQUENCE_NUMBER IN NUMBER,
X_PRO_SEQUENCE_NUMBER IN NUMBER,
X_PROGRESSION_OUTCOME_TYPE IN VARCHAR2,
X_DURATION IN NUMBER,
X_DURATION_TYPE IN VARCHAR2,
X_DECISION_STATUS IN VARCHAR2,
X_DECISION_DT IN DATE,
X_DECISION_ORG_UNIT_CD IN VARCHAR2,
X_DECISION_OU_START_DT IN DATE,
X_APPLIED_DT IN DATE,
X_SHOW_CAUSE_EXPIRY_DT IN DATE,
X_SHOW_CAUSE_DT IN DATE,
X_SHOW_CAUSE_OUTCOME_DT IN DATE,
X_SHOW_CAUSE_OUTCOME_TYPE IN VARCHAR2,
X_APPEAL_EXPIRY_DT IN DATE,
X_APPEAL_DT IN DATE,
X_APPEAL_OUTCOME_DT IN DATE,
X_APPEAL_OUTCOME_TYPE IN VARCHAR2,
X_ENCMB_COURSE_GROUP_CD IN VARCHAR2,
X_RESTRICTED_ENROLMENT_CP IN NUMBER,
X_RESTRICTED_ATTENDANCE_TYPE IN VARCHAR2,
X_COMMENTS IN VARCHAR2,
X_SHOW_CAUSE_COMMENTS IN VARCHAR2,
X_APPEAL_COMMENTS IN VARCHAR2,
X_EXPIRY_DT IN DATE,
X_PRO_PRA_SEQUENCE_NUMBER IN NUMBER,
X_MODE IN VARCHAR2,
X_ORG_ID IN NUMBER
) AS
CURSOR C IS
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE person_id = x_person_id
AND course_cd = x_course_cd
AND sequence_number = x_sequence_number;
X_LAST_UPDATE_DATE DATE;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
X_LAST_UPDATE_DATE := SYSDATE;
X_LAST_UPDATED_BY := 1;
X_LAST_UPDATE_LOGIN := 0;
X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
IF X_LAST_UPDATED_BY IS NULL THEN
X_LAST_UPDATED_BY := -1;
X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
IF X_LAST_UPDATE_LOGIN IS NULL THEN
X_LAST_UPDATE_LOGIN := -1;
p_action =>'INSERT',
x_rowid => x_rowid ,
x_prg_cal_type => x_prg_cal_type ,
x_prg_ci_sequence_number => x_prg_ci_sequence_number ,
x_rule_check_dt => x_rule_check_dt ,
x_progression_rule_cat => x_progression_rule_cat ,
x_pra_sequence_number => x_pra_sequence_number ,
x_pro_sequence_number => x_pro_sequence_number ,
x_progression_outcome_type => x_progression_outcome_type ,
x_duration => x_duration ,
x_duration_type => x_duration_type ,
x_decision_status => x_decision_status ,
x_decision_dt => x_decision_dt ,
x_decision_org_unit_cd => x_decision_org_unit_cd ,
x_decision_ou_start_dt => x_decision_ou_start_dt ,
x_applied_dt => x_applied_dt ,
x_show_cause_expiry_dt => x_show_cause_expiry_dt ,
x_show_cause_dt => x_show_cause_dt ,
x_show_cause_outcome_dt => x_show_cause_outcome_dt ,
x_show_cause_outcome_type => x_show_cause_outcome_type ,
x_appeal_expiry_dt => x_appeal_expiry_dt ,
x_appeal_dt => x_appeal_dt ,
x_appeal_outcome_dt => x_appeal_outcome_dt ,
x_appeal_outcome_type => x_appeal_outcome_type ,
x_encmb_course_group_cd => x_encmb_course_group_cd ,
x_restricted_enrolment_cp => x_restricted_enrolment_cp ,
x_restricted_attendance_type => x_restricted_attendance_type ,
x_comments => x_comments ,
x_show_cause_comments => x_show_cause_comments ,
x_appeal_comments => x_appeal_comments ,
x_person_id => x_person_id ,
x_course_cd => x_course_cd ,
x_sequence_number => x_sequence_number ,
x_expiry_dt => x_expiry_dt,
x_pro_pra_sequence_number => x_pro_pra_sequence_number,
x_creation_date => x_last_update_date ,
x_created_by => x_last_updated_by ,
x_last_update_date => x_last_update_date ,
x_last_updated_by => x_last_updated_by ,
x_last_update_login => x_last_update_login,
x_org_id => igs_ge_gen_003.get_org_id
) ;
INSERT INTO igs_pr_stdnt_pr_ou_all (
person_id,
course_cd,
sequence_number,
prg_cal_type,
prg_ci_sequence_number,
rule_check_dt,
progression_rule_cat,
pra_sequence_number,
pro_sequence_number,
progression_outcome_type,
duration,
duration_type,
decision_status,
decision_dt,
decision_org_unit_cd,
decision_ou_start_dt,
applied_dt,
show_cause_expiry_dt,
show_cause_dt,
show_cause_outcome_dt,
show_cause_outcome_type,
appeal_expiry_dt,
appeal_dt,
appeal_outcome_dt,
appeal_outcome_type,
encmb_course_group_cd,
restricted_enrolment_cp,
restricted_attendance_type,
comments,
show_cause_comments,
appeal_comments,
expiry_dt,
pro_pra_sequence_number,
creation_date,
created_by,
last_update_date,
last_updated_by,
last_update_login,
org_id
) VALUES (
new_references.person_id,
new_references.course_cd,
new_references.sequence_number,
new_references.prg_cal_type,
new_references.prg_ci_sequence_number,
new_references.rule_check_dt,
new_references.progression_rule_cat,
new_references.pra_sequence_number,
new_references.pro_sequence_number,
new_references.progression_outcome_type,
new_references.duration,
new_references.duration_type,
new_references.decision_status,
new_references.decision_dt,
new_references.decision_org_unit_cd,
new_references.decision_ou_start_dt,
new_references.applied_dt,
new_references.show_cause_expiry_dt,
new_references.show_cause_dt,
new_references.show_cause_outcome_dt,
new_references.show_cause_outcome_type,
new_references.appeal_expiry_dt,
new_references.appeal_dt,
new_references.appeal_outcome_dt,
new_references.appeal_outcome_type,
new_references.encmb_course_group_cd,
new_references.restricted_enrolment_cp,
new_references.restricted_attendance_type,
new_references.comments,
new_references.show_cause_comments,
new_references.appeal_comments,
new_references.expiry_dt,
new_references.pro_pra_sequence_number,
x_last_update_date,
x_last_updated_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login,
new_references.org_id
);
END INSERT_ROW;
CURSOR c1 IS SELECT
prg_cal_type,
prg_ci_sequence_number,
rule_check_dt,
progression_rule_cat,
pra_sequence_number,
pro_sequence_number,
progression_outcome_type,
duration,
duration_type,
decision_status,
decision_dt,
decision_org_unit_cd,
decision_ou_start_dt,
applied_dt,
show_cause_expiry_dt,
show_cause_dt,
show_cause_outcome_dt,
show_cause_outcome_type,
appeal_expiry_dt,
appeal_dt,
appeal_outcome_dt,
appeal_outcome_type,
encmb_course_group_cd,
restricted_enrolment_cp,
restricted_attendance_type,
comments,
show_cause_comments,
appeal_comments,
expiry_dt,
pro_pra_sequence_number
FROM igs_pr_stdnt_pr_ou_all
WHERE ROWID = x_rowid FOR UPDATE NOWAIT;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
PROCEDURE UPDATE_ROW (
X_ROWID IN VARCHAR2,
X_PERSON_ID IN NUMBER,
X_COURSE_CD IN VARCHAR2,
X_SEQUENCE_NUMBER IN NUMBER,
X_PRG_CAL_TYPE IN VARCHAR2,
X_PRG_CI_SEQUENCE_NUMBER IN NUMBER,
X_RULE_CHECK_DT IN DATE,
X_PROGRESSION_RULE_CAT IN VARCHAR2,
X_PRA_SEQUENCE_NUMBER IN NUMBER,
X_PRO_SEQUENCE_NUMBER IN NUMBER,
X_PROGRESSION_OUTCOME_TYPE IN VARCHAR2,
X_DURATION IN NUMBER,
X_DURATION_TYPE IN VARCHAR2,
X_DECISION_STATUS IN VARCHAR2,
X_DECISION_DT IN DATE,
X_DECISION_ORG_UNIT_CD IN VARCHAR2,
X_DECISION_OU_START_DT IN DATE,
X_APPLIED_DT IN DATE,
X_SHOW_CAUSE_EXPIRY_DT IN DATE,
X_SHOW_CAUSE_DT IN DATE,
X_SHOW_CAUSE_OUTCOME_DT IN DATE,
X_SHOW_CAUSE_OUTCOME_TYPE IN VARCHAR2,
X_APPEAL_EXPIRY_DT IN DATE,
X_APPEAL_DT IN DATE,
X_APPEAL_OUTCOME_DT IN DATE,
X_APPEAL_OUTCOME_TYPE IN VARCHAR2,
X_ENCMB_COURSE_GROUP_CD IN VARCHAR2,
X_RESTRICTED_ENROLMENT_CP IN NUMBER,
X_RESTRICTED_ATTENDANCE_TYPE IN VARCHAR2,
X_COMMENTS IN VARCHAR2,
X_SHOW_CAUSE_COMMENTS IN VARCHAR2,
X_APPEAL_COMMENTS IN VARCHAR2,
X_EXPIRY_DT IN DATE,
X_PRO_PRA_SEQUENCE_NUMBER IN NUMBER,
X_MODE IN VARCHAR2
) AS
X_LAST_UPDATE_DATE DATE;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
X_LAST_UPDATE_DATE := SYSDATE;
X_LAST_UPDATED_BY := 1;
X_LAST_UPDATE_LOGIN := 0;
X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
IF X_LAST_UPDATED_BY IS NULL THEN
X_LAST_UPDATED_BY := -1;
X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
IF X_LAST_UPDATE_LOGIN IS NULL THEN
X_LAST_UPDATE_LOGIN := -1;
p_action =>'UPDATE',
x_rowid => x_rowid ,
x_prg_cal_type => x_prg_cal_type ,
x_prg_ci_sequence_number => x_prg_ci_sequence_number ,
x_rule_check_dt => x_rule_check_dt ,
x_progression_rule_cat => x_progression_rule_cat ,
x_pra_sequence_number => x_pra_sequence_number ,
x_pro_sequence_number => x_pro_sequence_number ,
x_progression_outcome_type => x_progression_outcome_type ,
x_duration => x_duration ,
x_duration_type => x_duration_type ,
x_decision_status => x_decision_status ,
x_decision_dt => x_decision_dt ,
x_decision_org_unit_cd => x_decision_org_unit_cd ,
x_decision_ou_start_dt => x_decision_ou_start_dt ,
x_applied_dt => x_applied_dt ,
x_show_cause_expiry_dt => x_show_cause_expiry_dt ,
x_show_cause_dt => x_show_cause_dt ,
x_show_cause_outcome_dt => x_show_cause_outcome_dt ,
x_show_cause_outcome_type => x_show_cause_outcome_type ,
x_appeal_expiry_dt => x_appeal_expiry_dt ,
x_appeal_dt => x_appeal_dt ,
x_appeal_outcome_dt => x_appeal_outcome_dt ,
x_appeal_outcome_type => x_appeal_outcome_type ,
x_encmb_course_group_cd => x_encmb_course_group_cd ,
x_restricted_enrolment_cp => x_restricted_enrolment_cp ,
x_restricted_attendance_type => x_restricted_attendance_type ,
x_comments => x_comments ,
x_show_cause_comments => x_show_cause_comments ,
x_appeal_comments => x_appeal_comments ,
x_person_id => x_person_id ,
x_course_cd => x_course_cd ,
x_sequence_number => x_sequence_number ,
x_expiry_dt => x_expiry_dt,
x_pro_pra_sequence_number => x_pro_pra_sequence_number,
x_creation_date => x_last_update_date ,
x_created_by => x_last_updated_by ,
x_last_update_date => x_last_update_date ,
x_last_updated_by => x_last_updated_by ,
x_last_update_login => x_last_update_login
);
UPDATE igs_pr_stdnt_pr_ou_all SET
prg_cal_type = new_references.prg_cal_type,
prg_ci_sequence_number = new_references.prg_ci_sequence_number,
rule_check_dt = new_references.rule_check_dt,
progression_rule_cat = new_references.progression_rule_cat,
pra_sequence_number = new_references.pra_sequence_number,
pro_sequence_number = new_references.pro_sequence_number,
progression_outcome_type = new_references.progression_outcome_type,
duration = new_references.duration,
duration_type = new_references.duration_type,
decision_status = new_references.decision_status,
decision_dt = new_references.decision_dt,
decision_org_unit_cd = new_references.decision_org_unit_cd,
decision_ou_start_dt = new_references.decision_ou_start_dt,
applied_dt = new_references.applied_dt,
show_cause_expiry_dt = new_references.show_cause_expiry_dt,
show_cause_dt = new_references.show_cause_dt,
show_cause_outcome_dt = new_references.show_cause_outcome_dt,
show_cause_outcome_type = new_references.show_cause_outcome_type,
appeal_expiry_dt = new_references.appeal_expiry_dt,
appeal_dt = new_references.appeal_dt,
appeal_outcome_dt = new_references.appeal_outcome_dt,
appeal_outcome_type = new_references.appeal_outcome_type,
encmb_course_group_cd = new_references.encmb_course_group_cd,
restricted_enrolment_cp = new_references.restricted_enrolment_cp,
restricted_attendance_type = new_references.restricted_attendance_type,
comments = new_references.comments,
show_cause_comments = new_references.show_cause_comments,
appeal_comments = new_references.appeal_comments,
expiry_dt = new_references.expiry_dt,
pro_pra_sequence_number = new_references.pro_pra_sequence_number,
last_update_date = x_last_update_date,
last_updated_by = x_last_updated_by,
last_update_login = x_last_update_login
WHERE ROWID = X_ROWID;
END UPDATE_ROW;
SELECT ROWID
FROM igs_pr_stdnt_pr_ou_all
WHERE person_id = x_person_id
AND course_cd = x_course_cd
AND sequence_number = x_sequence_number;
INSERT_ROW (
X_ROWID,
X_PERSON_ID,
X_COURSE_CD,
X_SEQUENCE_NUMBER,
X_PRG_CAL_TYPE,
X_PRG_CI_SEQUENCE_NUMBER,
X_RULE_CHECK_DT,
X_PROGRESSION_RULE_CAT,
X_PRA_SEQUENCE_NUMBER,
X_PRO_SEQUENCE_NUMBER,
X_PROGRESSION_OUTCOME_TYPE,
X_DURATION,
X_DURATION_TYPE,
X_DECISION_STATUS,
X_DECISION_DT,
X_DECISION_ORG_UNIT_CD,
X_DECISION_OU_START_DT,
X_APPLIED_DT,
X_SHOW_CAUSE_EXPIRY_DT,
X_SHOW_CAUSE_DT,
X_SHOW_CAUSE_OUTCOME_DT,
X_SHOW_CAUSE_OUTCOME_TYPE,
X_APPEAL_EXPIRY_DT,
X_APPEAL_DT,
X_APPEAL_OUTCOME_DT,
X_APPEAL_OUTCOME_TYPE,
X_ENCMB_COURSE_GROUP_CD,
X_RESTRICTED_ENROLMENT_CP,
X_RESTRICTED_ATTENDANCE_TYPE,
X_COMMENTS,
X_SHOW_CAUSE_COMMENTS,
X_APPEAL_COMMENTS,
X_EXPIRY_DT,
X_PRO_PRA_SEQUENCE_NUMBER,
X_MODE,
X_ORG_ID);
UPDATE_ROW (
X_ROWID ,
X_PERSON_ID,
X_COURSE_CD,
X_SEQUENCE_NUMBER,
X_PRG_CAL_TYPE,
X_PRG_CI_SEQUENCE_NUMBER,
X_RULE_CHECK_DT,
X_PROGRESSION_RULE_CAT,
X_PRA_SEQUENCE_NUMBER,
X_PRO_SEQUENCE_NUMBER,
X_PROGRESSION_OUTCOME_TYPE,
X_DURATION,
X_DURATION_TYPE,
X_DECISION_STATUS,
X_DECISION_DT,
X_DECISION_ORG_UNIT_CD,
X_DECISION_OU_START_DT,
X_APPLIED_DT,
X_SHOW_CAUSE_EXPIRY_DT,
X_SHOW_CAUSE_DT,
X_SHOW_CAUSE_OUTCOME_DT,
X_SHOW_CAUSE_OUTCOME_TYPE,
X_APPEAL_EXPIRY_DT,
X_APPEAL_DT,
X_APPEAL_OUTCOME_DT,
X_APPEAL_OUTCOME_TYPE,
X_ENCMB_COURSE_GROUP_CD,
X_RESTRICTED_ENROLMENT_CP,
X_RESTRICTED_ATTENDANCE_TYPE,
X_COMMENTS,
X_SHOW_CAUSE_COMMENTS,
X_APPEAL_COMMENTS,
X_EXPIRY_DT,
X_PRO_PRA_SEQUENCE_NUMBER,
X_MODE
);
PROCEDURE DELETE_ROW (
X_ROWID IN VARCHAR2,
x_mode IN VARCHAR2
) AS
BEGIN
Before_DML (
p_action => 'DELETE',
x_rowid => X_ROWID
) ;
DELETE FROM igs_pr_stdnt_pr_ou_all
WHERE ROWID = x_rowid;
END DELETE_ROW;
SELECT positive_outcome_ind, description
FROM igs_pr_ou_type pot
WHERE pot.progression_outcome_type =
new_references.progression_outcome_type;