DBA Data[Home] [Help]

PACKAGE BODY: APPS.AP_WEB_DB_PAGE_SETTING_PKG

Source


1 PACKAGE BODY AP_WEB_DB_PAGE_SETTING_PKG AS
2 /* $Header: apwcpgsb.pls 120.0 2006/09/06 16:37:45 qle noship $ */
3 
4 --
5 --
6 -- Author: quan le
7 -- Purpose: To save the specified setting.
8 --
9 -- Input: p_userId IN NUMBER,
10 --        p_pageName IN VARCHAR2,
11 --        p_objectName IN VARCHAR2,
12 --        p_objectType IN VARCHAR2,
13 --        p_hideFlag IN VARCHAR2,
14 --        p_selectedTab IN VARCHAR2,
15 --        p_sortedColumn IN VARCHAR2,
16 --        p_sortOrderCode IN VARCHAR2
17 --
18 -- Output: N/A
19 --
20 PROCEDURE saveSetting(p_userId IN NUMBER,
21                       p_pageName IN VARCHAR2,
22                       p_objectName IN VARCHAR2,
23                       p_objectTypeCode IN VARCHAR2,
24                       p_hideFlag IN VARCHAR2,
25                       p_selectedTab IN VARCHAR2,
26                       p_sortedColumn IN VARCHAR2,
27                       p_sortOrderCode IN VARCHAR2
28 ) IS
29 PRAGMA AUTONOMOUS_TRANSACTION;
30 
31 CURSOR settingCursor IS
32   SELECT *
33   FROM   OIE_CURRENT_PAGE_SETTING
34   WHERE  user_id = p_userId
35      AND page_Name = p_pageName
36      AND object_Name = p_objectName
37      AND object_Type_code = p_objectTypeCode
38   FOR UPDATE OF USER_ID NOWAIT;
39 
40   settingRec   settingCursor%rowtype;
41 
42 BEGIN
43   -- Update the setting if exists; otherwise, create a new record
44 
45   OPEN settingCursor;
46   FETCH settingCursor INTO settingRec;
47 
48   IF settingCursor%NOTFOUND THEN
49     -- create new record
50       INSERT INTO OIE_CURRENT_PAGE_SETTING(
51         USER_ID,
52         PAGE_NAME,
53         OBJECT_NAME,
54         OBJECT_TYPE_CODE,
55         HIDE_FLAG,
56         SELECTED_TAB,
57         SORTED_COLUMN,
58         SORT_ORDER_CODE,
59         CREATION_DATE,
60         CREATED_BY,
61         LAST_UPDATE_LOGIN,
62         LAST_UPDATE_DATE,
63         LAST_UPDATED_BY)
64       VALUES (
65         p_userId,
66         p_pageName,
67         p_objectName,
68         p_objectTypeCode,
69         p_hideFlag,
70         p_selectedTab,
71         p_sortedColumn,
72         p_sortOrderCode,
73         SYSDATE,
74         nvl(fnd_global.user_id, -1),
75         fnd_global.conc_login_id,
76         SYSDATE,
77         nvl(fnd_global.user_id, -1));
78 
79   ELSE
80     -- update the current record
81     UPDATE OIE_CURRENT_PAGE_SETTING
82     SET hide_flag = p_hideFlag,
83         selected_tab = p_selectedTab,
84         sorted_column = p_sortedColumn,
85         sort_order_code = p_sortOrderCode
86     WHERE CURRENT OF settingCursor;
87 
88   END IF;
89 
90   CLOSE settingCursor;
91 
92   commit;
93 
94 END saveSetting;
95 
96 END AP_WEB_DB_PAGE_SETTING_PKG;