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
) AS
/*
|| Created By : cdcruz
|| Created On : 21-SEP-2001
|| Purpose : Initialises the Old and New references for the columns of the table.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
CURSOR cur_old_ref_values IS
SELECT *
FROM igs_pe_felony_dtls
WHERE rowid = x_rowid;
IF ((cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT'))) THEN
CLOSE cur_old_ref_values;
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;
PROCEDURE BeforeRowInsertUpdate1(
p_inserting IN BOOLEAN,
p_updating IN BOOLEAN,
p_deleting IN BOOLEAN
) as
------------------------------------------------------------------------------------------
--Created by : pkpatel
--Date created: 06-JUN-2002
--
--Purpose:
--Known limitations/enhancements and/or remarks:
--
--Change History:
--Who When What
--gmaheswa 12-Aug-2005 4327807: Added the validation Crime date shouldn't be greater than sysdate.
----------------------------------------------------------------------------------------------
CURSOR validate_cr_dt IS
SELECT birth_date FROM
IGS_PE_PERSON_BASE_V
WHERE person_id = new_references.person_id ;
SELECT meaning FROM
IGS_LOOKUP_VALUES WHERE
lookup_code = 'CRIME_DATE' AND
lookup_type = 'PE_MESSAGE_TOKENS' AND
ENABLED_FLAG = 'Y';
IF p_inserting OR p_updating THEN
OPEN validate_cr_dt;
END BeforeRowInsertUpdate1;
PROCEDURE BeforeRowInsertUpdate2(
p_inserting IN BOOLEAN,
p_updating IN BOOLEAN
) as
----------------------------------------------------------------------------------------------
--Created by : skpandey
--Date created: 04-JUL-2005
--
--Purpose: To check the flag status of felony_convicted_flag in igs_pe_hz_parties table and
-- convict_ind and display error message according to Business Rule
--Known limitations/enhancements and/or remarks:
--
--Change History:
--Who When What
--skpandey 15-Jul-2005 Bug : 4327807
-- Changed the cursor felony_convicted_flag_cur Open and Close logic
----------------------------------------------------------------------------------------------
CURSOR felony_convicted_flag_cur IS
SELECT felony_convicted_flag
FROM igs_pe_hz_parties
WHERE party_id = new_references.person_id;
IF p_inserting THEN
IF x_felony_convicted_flag IS NOT NULL THEN
IF new_references.convict_ind = 'Y' AND x_felony_convicted_flag = 'N' THEN
fnd_message.set_name('IGS','IGS_PE_SS_NO_CRMNL_CONVICT');
fnd_message.set_name('IGS','IGS_PE_SS_FLNY_CANT_INSERT');
END BeforeRowInsertUpdate2;
fnd_message.set_name ('FND', 'FORM_RECORD_DELETED');
SELECT rowid
FROM igs_pe_felony_dtls
WHERE felony_details_id = x_felony_details_id
FOR UPDATE NOWAIT;
SELECT rowid
FROM igs_pe_felony_dtls
WHERE person_id = x_person_id
AND crime_nature = x_crime_nature
AND crime_date = x_crime_date
AND ((l_rowid IS NULL) OR (rowid <> l_rowid));
SELECT rowid
FROM igs_pe_felony_dtls
WHERE ((person_id = x_party_id));
x_last_update_date IN DATE ,
x_last_updated_by IN NUMBER ,
x_last_update_login IN NUMBER
) AS
/*
|| Created By : cdcruz
|| Created On : 21-SEP-2001
|| Purpose : Initialises the columns, Checks Constraints, Calls the
|| Trigger Handlers for the table, before any DML operation.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
BEGIN
set_column_values (
p_action,
x_rowid,
x_felony_details_id,
x_person_id,
x_crime_nature,
x_crime_date,
x_convict_ind,
x_disp_action_info,
x_creation_date,
x_created_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login
);
IF (p_action = 'INSERT') THEN
-- Call all the procedures related to Before Insert.
BeforeRowInsertUpdate1( TRUE, FALSE,FALSE );
BeforeRowInsertUpdate2(TRUE, FALSE);
ELSIF (p_action = 'UPDATE') THEN
BeforeRowInsertUpdate1( FALSE,TRUE,FALSE );
BeforeRowInsertUpdate2(FALSE, TRUE);
ELSIF (p_action = 'VALIDATE_INSERT') THEN
-- Call all the procedures related to Before Insert.
BeforeRowInsertUpdate1( TRUE, FALSE,FALSE );
ELSIF (p_action = 'VALIDATE_UPDATE') THEN
BeforeRowInsertUpdate1( FALSE,TRUE,FALSE );
PROCEDURE insert_row (
x_rowid IN OUT NOCOPY VARCHAR2,
x_felony_details_id IN OUT NOCOPY NUMBER,
x_person_id IN NUMBER,
x_crime_nature IN VARCHAR2,
x_crime_date IN DATE,
x_convict_ind IN VARCHAR2,
x_disp_action_info IN VARCHAR2,
x_mode IN VARCHAR2
) AS
/*
|| Created By : cdcruz
|| Created On : 21-SEP-2001
|| Purpose : Handles the INSERT DML logic for the table.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
CURSOR c IS
SELECT rowid
FROM igs_pe_felony_dtls
WHERE felony_details_id = x_felony_details_id;
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;
SELECT igs_pe_felony_dtls_s.NEXTVAL
INTO x_felony_details_id
FROM dual;
p_action => 'INSERT',
x_rowid => x_rowid,
x_felony_details_id => x_felony_details_id,
x_person_id => x_person_id,
x_crime_nature => x_crime_nature,
x_crime_date => x_crime_date,
x_convict_ind => x_convict_ind,
x_disp_action_info => x_disp_action_info,
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
);
INSERT INTO igs_pe_felony_dtls (
felony_details_id,
person_id,
crime_nature,
crime_date,
convict_ind,
disp_action_info,
creation_date,
created_by,
last_update_date,
last_updated_by,
last_update_login
) VALUES (
new_references.felony_details_id,
new_references.person_id,
new_references.crime_nature,
new_references.crime_date,
new_references.convict_ind,
new_references.disp_action_info,
x_last_update_date,
x_last_updated_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login
);
END insert_row;
SELECT
person_id,
crime_nature,
crime_date,
convict_ind,
disp_action_info
FROM igs_pe_felony_dtls
WHERE rowid = x_rowid
FOR UPDATE NOWAIT;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
PROCEDURE update_row (
x_rowid IN VARCHAR2,
x_felony_details_id IN NUMBER,
x_person_id IN NUMBER,
x_crime_nature IN VARCHAR2,
x_crime_date IN DATE,
x_convict_ind IN VARCHAR2,
x_disp_action_info IN VARCHAR2,
x_mode IN VARCHAR2
) AS
/*
|| Created By : cdcruz
|| Created On : 21-SEP-2001
|| Purpose : Handles the UPDATE DML logic for the table.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
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_felony_details_id => x_felony_details_id,
x_person_id => x_person_id,
x_crime_nature => x_crime_nature,
x_crime_date => x_crime_date,
x_convict_ind => x_convict_ind,
X_disp_action_info => x_disp_action_info,
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_pe_felony_dtls
SET
person_id = new_references.person_id,
crime_nature = new_references.crime_nature,
crime_date = new_references.crime_date,
convict_ind = new_references.convict_ind,
disp_action_info = new_references.disp_action_info,
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;
|| Purpose : Adds a row if there is no existing row, otherwise updates existing row in the table.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
CURSOR c1 IS
SELECT rowid
FROM igs_pe_felony_dtls
WHERE felony_details_id = x_felony_details_id;
insert_row (
x_rowid,
x_felony_details_id,
x_person_id,
x_crime_nature,
x_crime_date,
x_convict_ind,
x_disp_action_info,
x_mode
);
update_row (
x_rowid,
x_felony_details_id,
x_person_id,
x_crime_nature,
x_crime_date,
x_convict_ind,
x_disp_action_info,
x_mode
);
PROCEDURE delete_row (
x_rowid IN VARCHAR2,
x_mode IN VARCHAR2
) AS
/*
|| Created By : cdcruz
|| Created On : 21-SEP-2001
|| Purpose : Handles the DELETE DML logic for the table.
|| Known limitations, enhancements or remarks :
|| Change History :
|| Who When What
|| (reverse chronological order - newest change first)
*/
BEGIN
before_dml (
p_action => 'DELETE',
x_rowid => x_rowid
);
DELETE FROM igs_pe_felony_dtls
WHERE rowid = x_rowid;
END delete_row;