[Home] [Help]
PACKAGE BODY: APPS.JTM_FND_DESC_FLEXS_ACC_PKG
Source
1 PACKAGE BODY JTM_FND_DESC_FLEXS_ACC_PKG AS
2 /* $Header: jtmvflxb.pls 120.1 2005/08/24 02:18:32 saradhak noship $ */
3 -- Start of Comments
4 --
5 -- NAME
6 -- JTM_FND_DESC_FLEXS_ACC_PKG
7 --
8 -- PURPOSE
9 -- TABLE-LEVEL PACKAGE for JTM_FND_DESC_FLEXS_ACC.
10 --
11 -- PROCEDURES:
12 --
13 --
14 -- NOTES
15 --
16 --
17 -- HISTORY
18 -- 04-09-2002 YOHUANG Created.
19 --
20 -- End of Comments
21 --
22 --
23 --
24 G_PKG_NAME CONSTANT VARCHAR2(30) := 'JTM_FND_DESC_FLEXS_ACC_PKG';
25 G_FILE_NAME CONSTANT VARCHAR2(12) := 'jtmvflxb.pls';
26 --
27 --
28 -- ACCESS_ID is generated from SEQUENCE. Later ACCESS_ID will be removed.
29 -- It handles the DUPLICATE_VALUE on INDEX Exception.
30 -- For Application Specific ACC tables, the counter is always 1.
31 PROCEDURE INSERT_ROW (
32 X_BASE_APPLICATION_ID IN NUMBER ,
33 X_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2 ,
34 X_MOBILE_TABLE_NAME IN VARCHAR2 ,
35 X_APPLICATION_ID IN NUMBER ,
36 X_ACCESS_ID OUT NOCOPY NUMBER
37 ) IS
38
39 BEGIN
40
41 SELECT JTM_FND_DESC_FLEXS_ACC_S.NEXTVAL
42 INTO X_ACCESS_ID FROM DUAL;
43
44 INSERT INTO JTM_FND_DESCR_FLEXS_ACC (
45 ACCESS_ID ,
46 LAST_UPDATE_DATE ,
47 LAST_UPDATED_BY ,
48 CREATION_DATE ,
49 CREATED_BY ,
50 BASE_APPLICATION_ID ,
51 DESCRIPTIVE_FLEXFIELD_NAME ,
52 MOBILE_TABLE_NAME,
53 APPLICATION_ID ,
54 COUNTER
55 )
56 VALUES (
57 X_ACCESS_ID ,
58 SYSDATE,
59 1,
60 SYSDATE,
61 1,
62 X_BASE_APPLICATION_ID,
63 X_DESCRIPTIVE_FLEXFIELD_NAME,
64 X_MOBILE_TABLE_NAME,
65 X_APPLICATION_ID,
66 1
67 );
68
69 EXCEPTION
70 WHEN DUP_VAL_ON_INDEX THEN
71 FND_MESSAGE.set_name('JTM', 'JTM_UNIQUE_INDEX_VIOLATION');
72 FND_MSG_PUB.add;
73 APP_EXCEPTION.raise_exception;
74 WHEN OTHERS THEN
75 RAISE;
76 END INSERT_ROW;
77
78 -- For Application Specific ACC table, there won't be any update allowed.
79 PROCEDURE UPDATE_ROW (
80 X_BASE_APPLICATION_ID IN NUMBER ,
81 X_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2 ,
82 X_MOBILE_TABLE_NAME IN VARCHAR2 ,
83 X_APPLICATION_ID IN NUMBER
84 ) IS
85
86 BEGIN
87 UPDATE JTM_FND_DESCR_FLEXS_ACC
88 SET LAST_UPDATE_DATE = SYSDATE,
89 LAST_UPDATED_BY = 1,
90 CREATED_BY = 1,
91 CREATION_DATE = CREATION_DATE,
92 BASE_APPLICATION_ID = X_BASE_APPLICATION_ID ,
93 DESCRIPTIVE_FLEXFIELD_NAME = X_DESCRIPTIVE_FLEXFIELD_NAME,
94 MOBILE_TABLE_NAME = X_MOBILE_TABLE_NAME,
95 APPLICATION_ID = X_APPLICATION_ID
96 WHERE BASE_APPLICATION_ID = X_BASE_APPLICATION_ID
97 AND DESCRIPTIVE_FLEXFIELD_NAME = X_DESCRIPTIVE_FLEXFIELD_NAME
98 AND MOBILE_TABLE_NAME = X_MOBILE_TABLE_NAME
99 AND APPLICATION_ID = X_APPLICATION_ID;
100
101 IF ( SQL%NOTFOUND ) THEN
102 RAISE NO_DATA_FOUND;
103 END IF;
104
105 END UPDATE_ROW;
106
107 -- For Deletion, later on we might need to add an "EXPRIATION_DATE" Column to support deletion
108 -- Through FNDLOADER
109 PROCEDURE DELETE_ROW (
110 X_BASE_APPLICATION_ID IN NUMBER ,
111 X_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2 ,
112 X_MOBILE_TABLE_NAME IN VARCHAR2 ,
113 X_APPLICATION_ID IN NUMBER
114 ) IS
115
116 BEGIN
117 DELETE FROM JTM_FND_DESCR_FLEXS_ACC
118 WHERE BASE_APPLICATION_ID = X_BASE_APPLICATION_ID
119 AND DESCRIPTIVE_FLEXFIELD_NAME = X_DESCRIPTIVE_FLEXFIELD_NAME
120 AND MOBILE_TABLE_NAME = X_MOBILE_TABLE_NAME
121 AND APPLICATION_ID = X_APPLICATION_ID;
122
123 IF ( SQL%NOTFOUND ) THEN
124 RAISE NO_DATA_FOUND;
125 END IF;
126
127 END DELETE_ROW;
128
129 END JTM_FND_DESC_FLEXS_ACC_PKG;