The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT 'Duplicate'
FROM gl_ledger_set_norm_assign la
WHERE la.ledger_set_id = X_ledger_set_id
AND la.ledger_id = X_ledger_id
AND nvl(la.status_code, 'X') <> 'D'
AND ( X_rowid is NULL
OR
la.rowid <> X_rowid );
PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
X_Ledger_Set_Id NUMBER,
X_Ledger_Id NUMBER,
X_Object_Type_Code VARCHAR2,
X_Last_Update_Date DATE,
X_Last_Updated_By NUMBER,
X_Creation_Date DATE,
X_Created_By NUMBER,
X_Last_Update_Login NUMBER,
X_Start_Date DATE,
X_End_Date DATE,
X_Context VARCHAR2,
X_Attribute1 VARCHAR2,
X_Attribute2 VARCHAR2,
X_Attribute3 VARCHAR2,
X_Attribute4 VARCHAR2,
X_Attribute5 VARCHAR2,
X_Attribute6 VARCHAR2,
X_Attribute7 VARCHAR2,
X_Attribute8 VARCHAR2,
X_Attribute9 VARCHAR2,
X_Attribute10 VARCHAR2,
X_Attribute11 VARCHAR2,
X_Attribute12 VARCHAR2,
X_Attribute13 VARCHAR2,
X_Attribute14 VARCHAR2,
X_Attribute15 VARCHAR2,
X_Request_Id NUMBER
) IS
L_Ledger_Id NUMBER;
CURSOR C IS SELECT rowid FROM gl_ledger_set_norm_assign
WHERE ledger_set_id = X_Ledger_Set_Id
AND ledger_id = X_Ledger_Id;
SELECT ledger_set_id
INTO L_Ledger_Id
FROM gl_ledger_set_norm_assign
WHERE ledger_id = L_Ledger_Id
AND nvl(status_code, 'X') <> 'D';
INSERT INTO gl_ledger_set_norm_assign(
ledger_set_id,
ledger_id,
status_code,
last_update_date,
last_updated_by,
creation_date,
created_by,
last_update_login,
start_date,
end_date,
context,
attribute1,
attribute2,
attribute3,
attribute4,
attribute5,
attribute6,
attribute7,
attribute8,
attribute9,
attribute10,
attribute11,
attribute12,
attribute13,
attribute14,
attribute15,
request_id
) VALUES (
X_Ledger_Set_Id,
X_Ledger_Id,
'I',
X_Last_Update_Date,
X_Last_Updated_By,
X_Creation_Date,
X_Created_By,
X_Last_Update_Login,
X_Start_Date,
X_End_Date,
X_Context,
X_Attribute1,
X_Attribute2,
X_Attribute3,
X_Attribute4,
X_Attribute5,
X_Attribute6,
X_Attribute7,
X_Attribute8,
X_Attribute9,
X_Attribute10,
X_Attribute11,
X_Attribute12,
X_Attribute13,
X_Attribute14,
X_Attribute15,
X_Request_Id
);
'GL_LEDGER_SET_NORM_ASSIGN_PKG.insert_row');
END Insert_Row;
SELECT *
FROM gl_ledger_set_norm_assign
WHERE rowid = X_Rowid
FOR UPDATE of Ledger_Id NOWAIT;
/* This routine should be deleted if it is not required. The Ledger Sets
form does not use this routine. */
PROCEDURE Update_Row(X_Rowid VARCHAR2,
X_Ledger_Set_Id NUMBER,
X_Ledger_Id NUMBER,
X_Last_Update_Date DATE,
X_Last_Updated_By NUMBER,
X_Last_Update_Login NUMBER,
X_Start_Date DATE,
X_End_Date DATE,
X_Context VARCHAR2,
X_Attribute1 VARCHAR2,
X_Attribute2 VARCHAR2,
X_Attribute3 VARCHAR2,
X_Attribute4 VARCHAR2,
X_Attribute5 VARCHAR2,
X_Attribute6 VARCHAR2,
X_Attribute7 VARCHAR2,
X_Attribute8 VARCHAR2,
X_Attribute9 VARCHAR2,
X_Attribute10 VARCHAR2,
X_Attribute11 VARCHAR2,
X_Attribute12 VARCHAR2,
X_Attribute13 VARCHAR2,
X_Attribute14 VARCHAR2,
X_Attribute15 VARCHAR2,
X_Request_Id NUMBER
) IS
BEGIN
-- If a row has a status_code of 'I', the Flattening Program has not yet
-- been run. In this case, the status_code should remain 'I', else
-- status_code should be 'U'.
UPDATE gl_ledger_set_norm_assign
SET
ledger_set_id = X_Ledger_Set_Id,
ledger_id = X_Ledger_Id,
status_code = decode(nvl(status_code, 'I'),
'I', status_code, 'U'),
last_update_date = X_Last_Update_Date,
last_updated_by = X_Last_Updated_By,
last_update_login = X_Last_Update_Login,
start_date = X_Start_Date,
end_date = X_End_Date,
context = X_Context,
attribute1 = X_Attribute1,
attribute2 = X_Attribute2,
attribute3 = X_Attribute3,
attribute4 = X_Attribute4,
attribute5 = X_Attribute5,
attribute6 = X_Attribute6,
attribute7 = X_Attribute7,
attribute8 = X_Attribute8,
attribute9 = X_Attribute9,
attribute10 = X_Attribute10,
attribute11 = X_Attribute11,
attribute12 = X_Attribute12,
attribute13 = X_Attribute13,
attribute14 = X_Attribute14,
attribute15 = X_Attribute15,
request_id = X_Request_Id
WHERE rowid = X_Rowid;
END Update_Row;
PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
BEGIN
-- This is a norm table. We do not actually delete the row since the
-- Flattening program will take care of this.
-- Instead, set the status code to 'Delete'.
UPDATE GL_LEDGER_SET_NORM_ASSIGN
SET status_code = 'D'
WHERE rowid = X_Rowid;
'GL_LEDGER_SET_NORM_ASSIGN_PKG.delete_row');
END Delete_Row;
SELECT 1
FROM dual
WHERE EXISTS (SELECT 1
FROM GL_LEDGER_SET_NORM_ASSIGN
WHERE ledger_set_id = X_Ledger_Set_Id
AND (status_code <> 'D' OR status_code IS NULL));
SELECT chart_of_accounts_id, period_set_name, accounted_period_type
INTO l_ledger_coa_id, l_ledger_period_set_name, l_ledger_period_type
FROM GL_LEDGERS
WHERE ledger_id = X_Ledger_Id;