The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_last_update_date IN DATE DEFAULT NULL,
x_last_updated_by IN NUMBER DEFAULT NULL,
x_last_update_login IN NUMBER DEFAULT NULL
) AS
/*
|| Created By : [email protected]
|| Created On : 14-DEC-2000
|| 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_CO_OU_CO_ALL
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;
SELECT rowid
FROM igs_co_ou_co_all
WHERE ((correspondence_type = x_correspondence_type) AND
(spl_sequence_number = x_letter_reference_number));
PROCEDURE BeforeRowInsertUpdate1(
p_inserting IN BOOLEAN DEFAULT FALSE,
p_updating IN BOOLEAN DEFAULT FALSE,
p_deleting IN BOOLEAN DEFAULT FALSE
) AS
v_created_date IGS_CO_ITM_ALL.create_dt%TYPE;
SELECT create_dt
FROM IGS_CO_ITM_ALL
WHERE correspondence_type = new_references.correspondence_type AND
reference_number = new_references.reference_number;
END BeforeRowInsertUpdate1;
SELECT rowid
FROM igs_co_ou_co_all
WHERE person_id = x_person_id
AND correspondence_type = x_correspondence_type
AND reference_number = x_reference_number
AND issue_dt = x_issue_dt
FOR UPDATE NOWAIT;
x_last_update_date IN DATE DEFAULT NULL,
x_last_updated_by IN NUMBER DEFAULT NULL,
x_last_update_login IN NUMBER DEFAULT NULL
) AS
/*
|| Created By : [email protected]
|| Created On : 14-DEC-2000
|| 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_person_id,
x_correspondence_type,
x_reference_number,
x_issue_dt,
x_addr_type,
x_tracking_id,
x_comments,
x_dt_sent,
x_unknown_return_dt,
x_letter_reference_number,
x_spl_sequence_number,
x_org_id,
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 ( p_inserting => TRUE );
ELSIF (p_action = 'UPDATE') THEN
-- Call all the procedures related to Before Update.
BeforeRowInsertUpdate1 ( p_inserting => TRUE );
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to Before Delete.
check_child_existance;
ELSIF (p_action = 'VALIDATE_INSERT') THEN
-- Call all the procedures related to Before Insert.
IF ( get_pk_for_validation (
new_references.person_id,
new_references.correspondence_type,
new_references.reference_number,
new_references.issue_dt
)
) 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;
PROCEDURE insert_row (
x_rowid IN OUT NOCOPY VARCHAR2,
x_person_id IN NUMBER,
x_correspondence_type IN VARCHAR2,
x_reference_number IN NUMBER,
x_issue_dt IN OUT NOCOPY DATE,
x_addr_type IN VARCHAR2,
x_tracking_id IN NUMBER,
x_comments IN VARCHAR2,
x_dt_sent IN DATE,
x_unknown_return_dt IN DATE,
x_letter_reference_number IN NUMBER,
x_spl_sequence_number IN NUMBER,
x_org_id IN NUMBER,
x_mode IN VARCHAR2 DEFAULT 'R'
) AS
/*
|| Created By : [email protected]
|| Created On : 14-DEC-2000
|| 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_co_ou_co_all
WHERE person_id = x_person_id
AND correspondence_type = x_correspondence_type
AND reference_number = x_reference_number
AND issue_dt = new_references.issue_dt;
x_last_update_date DATE;
x_last_updated_by NUMBER;
x_last_update_login NUMBER;
x_program_update_date DATE;
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;
x_program_update_date := NULL;
x_program_update_date := SYSDATE;
p_action => 'INSERT',
x_rowid => x_rowid,
x_person_id => x_person_id,
x_correspondence_type => x_correspondence_type,
x_reference_number => x_reference_number,
x_issue_dt => NVL (x_issue_dt,sysdate ),
x_addr_type => x_addr_type,
x_tracking_id => x_tracking_id,
x_comments => x_comments,
x_dt_sent => x_dt_sent,
x_unknown_return_dt => x_unknown_return_dt,
x_letter_reference_number => x_letter_reference_number,
x_spl_sequence_number => x_spl_sequence_number,
x_org_id => igs_ge_gen_003.get_org_id,
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_co_ou_co_all (
person_id,
correspondence_type,
reference_number,
issue_dt,
addr_type,
tracking_id,
comments,
dt_sent,
unknown_return_dt,
letter_reference_number,
spl_sequence_number,
org_id,
creation_date,
created_by,
last_update_date,
last_updated_by,
last_update_login,
request_id,
program_id,
program_application_id,
program_update_date
) VALUES (
new_references.person_id,
new_references.correspondence_type,
new_references.reference_number,
new_references.issue_dt,
new_references.addr_type,
new_references.tracking_id,
new_references.comments,
new_references.dt_sent,
new_references.unknown_return_dt,
new_references.letter_reference_number,
new_references.spl_sequence_number,
new_references.org_id,
x_last_update_date,
x_last_updated_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login ,
x_request_id,
x_program_id,
x_program_application_id,
x_program_update_date
);
END insert_row;
SELECT
addr_type,
tracking_id,
comments,
dt_sent,
unknown_return_dt,
letter_reference_number,
spl_sequence_number
FROM igs_co_ou_co_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_correspondence_type IN VARCHAR2,
x_reference_number IN NUMBER,
x_issue_dt IN DATE,
x_addr_type IN VARCHAR2,
x_tracking_id IN NUMBER,
x_comments IN VARCHAR2,
x_dt_sent IN DATE,
x_unknown_return_dt IN DATE,
x_letter_reference_number IN NUMBER,
x_spl_sequence_number IN NUMBER,
x_mode IN VARCHAR2 DEFAULT 'R'
) AS
/*
|| Created By : [email protected]
|| Created On : 14-DEC-2000
|| 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_program_update_date DATE;
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_person_id => x_person_id,
x_correspondence_type => x_correspondence_type,
x_reference_number => x_reference_number,
x_issue_dt => NVL (x_issue_dt,sysdate ),
x_addr_type => x_addr_type,
x_tracking_id => x_tracking_id,
x_comments => x_comments,
x_dt_sent => x_dt_sent,
x_unknown_return_dt => x_unknown_return_dt,
x_letter_reference_number => x_letter_reference_number,
x_spl_sequence_number => x_spl_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_program_update_date := old_references.program_update_date;
x_program_update_date := SYSDATE;
UPDATE igs_co_ou_co_all
SET
addr_type = new_references.addr_type,
tracking_id = new_references.tracking_id,
comments = new_references.comments,
dt_sent = new_references.dt_sent,
unknown_return_dt = new_references.unknown_return_dt,
letter_reference_number = new_references.letter_reference_number,
spl_sequence_number = new_references.spl_sequence_number,
last_update_date = x_last_update_date,
last_updated_by = x_last_updated_by,
last_update_login = x_last_update_login ,
request_id = x_request_id,
program_id = x_program_id,
program_application_id = x_program_application_id,
program_update_date = x_program_update_date
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_co_ou_co_all
WHERE person_id = x_person_id
AND correspondence_type = x_correspondence_type
AND reference_number = x_reference_number
AND issue_dt = NVL (x_issue_dt,SYSDATE);
insert_row (
x_rowid,
x_person_id,
x_correspondence_type,
x_reference_number,
x_issue_dt,
x_addr_type,
x_tracking_id,
x_comments,
x_dt_sent,
x_unknown_return_dt,
x_letter_reference_number,
x_spl_sequence_number,
x_org_id,
x_mode
);
update_row (
x_rowid,
x_person_id,
x_correspondence_type,
x_reference_number,
x_issue_dt,
x_addr_type,
x_tracking_id,
x_comments,
x_dt_sent,
x_unknown_return_dt,
x_letter_reference_number,
x_spl_sequence_number,
x_mode
);
SELECT rowid
FROM IGS_CO_OU_CO_ALL
WHERE addr_type = x_addr_type ;
SELECT rowid
FROM IGS_CO_OU_CO_ALL
WHERE correspondence_type = x_correspondence_type
AND reference_number = x_reference_number ;
SELECT rowid
FROM IGS_CO_OU_CO_ALL
WHERE person_id = x_person_id ;
SELECT rowid
FROM IGS_CO_OU_CO_ALL
WHERE tracking_id = x_tracking_id ;
PROCEDURE delete_row (
x_rowid IN VARCHAR2
) AS
/*
|| Created By : [email protected]
|| Created On : 14-DEC-2000
|| 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_co_ou_co_all
WHERE rowid = x_rowid;
END delete_row;