[Home] [Help]
PACKAGE BODY: APPS.ASO_DEPENDENCY_MAPPINGS_PKG
Source
1 PACKAGE BODY ASO_DEPENDENCY_MAPPINGS_PKG as
2 /* $Header: asotdepb.pls 120.2 2005/12/06 09:48:56 hagrawal noship $ */
3 -- Start of Comments
4 -- Package name : ASO_DEPENDENCY_MAPPINGS_PKG
5 -- Purpose :
6 -- History :
7 -- 01-28-2005 hyang - created
8 -- NOTE :
9 -- End of Comments
10
11
12 G_PKG_NAME CONSTANT VARCHAR2(30):= 'ASO_DEPENDENCY_MAPPINGS_PKG';
13 G_FILE_NAME CONSTANT VARCHAR2(12) := 'asotdepb.pls';
14
15 PROCEDURE Insert_Row(
16 PX_DEPENDENCY_ID IN OUT NOCOPY /* file.sql.39 change */ NUMBER
17 , P_TRIGGER_ATTRIBUTE_ID IN NUMBER
18 , P_DEPENDENT_ATTRIBUTE_ID IN NUMBER
19 , P_ENABLED_FLAG IN VARCHAR2
20 , P_DATABASE_OBJECT_NAME IN VARCHAR2
21 , P_APPLICATION_ID IN NUMBER
22 , P_SEED_TAG IN VARCHAR2
23 , P_CREATION_DATE IN DATE
24 , P_CREATED_BY IN NUMBER
25 , P_LAST_UPDATE_DATE IN DATE
26 , P_LAST_UPDATE_LOGIN IN NUMBER
27 , P_LAST_UPDATED_BY IN NUMBER
28 , P_REQUEST_ID IN NUMBER
29 , P_PROGRAM_APPLICATION_ID IN NUMBER
30 , P_PROGRAM_ID IN NUMBER
31 , P_PROGRAM_UPDATE_DATE IN DATE
32 )
33 IS
34 CURSOR C IS SELECT ASO_DEPENDENCY_MAPPINGS_S.nextval FROM sys.dual;
35 BEGIN
36 If (PX_DEPENDENCY_ID IS NULL) OR (PX_DEPENDENCY_ID = FND_API.G_MISS_NUM) then
37 OPEN C;
38 FETCH C INTO PX_DEPENDENCY_ID;
39 CLOSE C;
40 End If;
41 INSERT INTO ASO_DEPENDENCY_MAPPINGS(
42 DEPENDENCY_ID,
43 TRIGGER_ATTRIBUTE_ID,
44 DEPENDENT_ATTRIBUTE_ID,
45 ENABLED_FLAG,
46 DATABASE_OBJECT_NAME,
47 APPLICATION_ID,
48 SEED_TAG,
49 CREATION_DATE,
50 CREATED_BY,
51 LAST_UPDATED_BY,
52 LAST_UPDATE_DATE,
53 LAST_UPDATE_LOGIN,
54 REQUEST_ID,
55 PROGRAM_APPLICATION_ID,
56 PROGRAM_ID,
57 PROGRAM_UPDATE_DATE
58 ) VALUES (
59 PX_DEPENDENCY_ID,
60 decode( P_TRIGGER_ATTRIBUTE_ID, FND_API.G_MISS_NUM, NULL, P_TRIGGER_ATTRIBUTE_ID),
61 decode( P_DEPENDENT_ATTRIBUTE_ID, FND_API.G_MISS_NUM, NULL, P_DEPENDENT_ATTRIBUTE_ID),
62 decode( P_ENABLED_FLAG, FND_API.G_MISS_CHAR, NULL, P_ENABLED_FLAG),
63 decode( P_DATABASE_OBJECT_NAME, FND_API.G_MISS_CHAR, NULL, P_DATABASE_OBJECT_NAME),
64 decode( P_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, P_APPLICATION_ID),
65 decode( P_SEED_TAG, FND_API.G_MISS_CHAR, NULL, P_SEED_TAG),
66 ASO_UTILITY_PVT.decode( p_CREATION_DATE, FND_API.G_MISS_DATE, NULL, p_CREATION_DATE),
67 decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
68 decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
69 ASO_UTILITY_PVT.decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, NULL, p_LAST_UPDATE_DATE),
70 decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN),
71 decode( p_REQUEST_ID, FND_API.G_MISS_NUM, NULL, p_REQUEST_ID),
72 decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_APPLICATION_ID),
73 decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_ID),
74 ASO_UTILITY_PVT.decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, NULL, p_PROGRAM_UPDATE_DATE)
75 );
76
77 END Insert_Row;
78
79 PROCEDURE Update_Row(
80 P_DEPENDENCY_ID IN NUMBER
81 , P_TRIGGER_ATTRIBUTE_ID IN NUMBER
82 , P_DEPENDENT_ATTRIBUTE_ID IN NUMBER
83 , P_ENABLED_FLAG IN VARCHAR2
84 , P_DATABASE_OBJECT_NAME IN VARCHAR2
85 , P_APPLICATION_ID IN NUMBER
86 , P_SEED_TAG IN VARCHAR2
87 , P_CREATION_DATE IN DATE
88 , P_CREATED_BY IN NUMBER
89 , P_LAST_UPDATE_DATE IN DATE
90 , P_LAST_UPDATE_LOGIN IN NUMBER
91 , P_LAST_UPDATED_BY IN NUMBER
92 , P_REQUEST_ID IN NUMBER
93 , P_PROGRAM_APPLICATION_ID IN NUMBER
94 , P_PROGRAM_ID IN NUMBER
95 , P_PROGRAM_UPDATE_DATE IN DATE
96 )
97 IS
98 BEGIN
99 Update ASO_DEPENDENCY_MAPPINGS
100 SET
101 TRIGGER_ATTRIBUTE_ID = decode( P_TRIGGER_ATTRIBUTE_ID, FND_API.G_MISS_NUM, TRIGGER_ATTRIBUTE_ID, P_TRIGGER_ATTRIBUTE_ID),
102 DEPENDENT_ATTRIBUTE_ID = decode( P_DEPENDENT_ATTRIBUTE_ID, FND_API.G_MISS_NUM, DEPENDENT_ATTRIBUTE_ID, P_DEPENDENT_ATTRIBUTE_ID),
103 ENABLED_FLAG = decode( P_ENABLED_FLAG, FND_API.G_MISS_CHAR, ENABLED_FLAG, P_ENABLED_FLAG),
104 DATABASE_OBJECT_NAME = decode( P_DATABASE_OBJECT_NAME, FND_API.G_MISS_CHAR, DATABASE_OBJECT_NAME, P_DATABASE_OBJECT_NAME),
105 APPLICATION_ID = decode( P_APPLICATION_ID, FND_API.G_MISS_NUM, APPLICATION_ID, P_APPLICATION_ID),
106 SEED_TAG = decode( P_SEED_TAG, FND_API.G_MISS_CHAR, SEED_TAG, P_SEED_TAG),
107 CREATION_DATE = ASO_UTILITY_PVT.decode( p_CREATION_DATE, FND_API.G_MISS_DATE, CREATION_DATE, p_CREATION_DATE),
108 CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY),
109 LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, LAST_UPDATED_BY, p_LAST_UPDATED_BY),
110 LAST_UPDATE_DATE = ASO_UTILITY_PVT.decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, LAST_UPDATE_DATE, p_LAST_UPDATE_DATE),
111 LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN),
112 REQUEST_ID = decode( p_REQUEST_ID, FND_API.G_MISS_NUM, REQUEST_ID, p_REQUEST_ID),
113 PROGRAM_APPLICATION_ID = decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, PROGRAM_APPLICATION_ID, p_PROGRAM_APPLICATION_ID),
114 PROGRAM_ID = decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, PROGRAM_ID, p_PROGRAM_ID),
115 PROGRAM_UPDATE_DATE = ASO_UTILITY_PVT.decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, PROGRAM_UPDATE_DATE, p_PROGRAM_UPDATE_DATE)
116 where DEPENDENCY_ID = P_DEPENDENCY_ID;
117
118 If (SQL%NOTFOUND) then
119 RAISE NO_DATA_FOUND;
120 End If;
121
122 END Update_Row;
123
124 PROCEDURE Delete_Row(
125 P_DEPENDENCY_ID NUMBER)
126 IS
127 BEGIN
128 DELETE FROM ASO_DEPENDENCY_MAPPINGS
129 WHERE DEPENDENCY_ID = P_DEPENDENCY_ID;
130 If (SQL%NOTFOUND) then
131 RAISE NO_DATA_FOUND;
132 End If;
133
134 END Delete_Row;
135
136 PROCEDURE Lock_Row(
137 P_DEPENDENCY_ID IN NUMBER
138 , P_TRIGGER_ATTRIBUTE_ID IN NUMBER
139 , P_DEPENDENT_ATTRIBUTE_ID IN NUMBER
140 , P_ENABLED_FLAG IN VARCHAR2
141 , P_DATABASE_OBJECT_NAME IN VARCHAR2
142 , P_APPLICATION_ID IN NUMBER
143 , P_SEED_TAG IN VARCHAR2
144 , P_CREATION_DATE IN DATE
145 , P_CREATED_BY IN NUMBER
146 , P_LAST_UPDATE_DATE IN DATE
147 , P_LAST_UPDATE_LOGIN IN NUMBER
148 , P_LAST_UPDATED_BY IN NUMBER
149 , P_REQUEST_ID IN NUMBER
150 , P_PROGRAM_APPLICATION_ID IN NUMBER
151 , P_PROGRAM_ID IN NUMBER
152 , P_PROGRAM_UPDATE_DATE IN DATE
153 )
154 IS
155 CURSOR C IS
156 SELECT *
157 FROM ASO_DEPENDENCY_MAPPINGS
158 WHERE DEPENDENCY_ID = P_DEPENDENCY_ID
159 FOR UPDATE of DEPENDENCY_ID NOWAIT;
160 Recinfo C%ROWTYPE;
161
162 BEGIN
163 OPEN C;
164 FETCH C INTO Recinfo;
165 If (C%NOTFOUND) then
166 CLOSE C;
167 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
168 APP_EXCEPTION.RAISE_EXCEPTION;
169 End If;
170 CLOSE C;
171
172 IF( ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
173 OR ( ( Recinfo.LAST_UPDATE_DATE IS NULL )
174 AND ( p_LAST_UPDATE_DATE IS NULL )))
175 THEN
176 RETURN;
177 ELSE
178 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
179 APP_EXCEPTION.RAISE_EXCEPTION;
180 END IF;
181
182 END Lock_Row;
183
184 PROCEDURE Load_Row (
185 X_DEPENDENCY_ID IN NUMBER
186 , X_TRIGGER_ATTRIBUTE_ID IN NUMBER
187 , X_DEPENDENT_ATTRIBUTE_ID IN NUMBER
188 , X_ENABLED_FLAG IN VARCHAR2
189 , X_DATABASE_OBJECT_NAME IN VARCHAR2
190 , X_APPLICATION_ID IN NUMBER
191 , X_SEED_TAG IN VARCHAR2
192 , X_OWNER IN VARCHAR2
193 ) IS
194 l_user_id NUMBER := 0;
195 l_dependency_id NUMBER;
196
197 CURSOR C IS
198 SELECT DEPENDENCY_ID FROM ASO_DEPENDENCY_MAPPINGS
199 WHERE DEPENDENCY_ID = X_DEPENDENCY_ID;
200
201 BEGIN
202
203 if (X_OWNER = 'SEED') then
204 l_user_id := 1;
205 end if;
206
207 OPEN C;
208 FETCH C INTO l_dependency_id;
209 If (C%NOTFOUND)
210 THEN
211 INSERT_ROW (
212 PX_DEPENDENCY_ID => l_dependency_id
213 , P_TRIGGER_ATTRIBUTE_ID => X_TRIGGER_ATTRIBUTE_ID
214 , P_DEPENDENT_ATTRIBUTE_ID => X_DEPENDENT_ATTRIBUTE_ID
215 , P_ENABLED_FLAG => X_ENABLED_FLAG
216 , P_DATABASE_OBJECT_NAME => X_DATABASE_OBJECT_NAME
217 , P_APPLICATION_ID => X_APPLICATION_ID
218 , P_SEED_TAG => X_SEED_TAG
219 , P_CREATION_DATE => sysdate
220 , P_CREATED_BY => l_user_id
221 , P_LAST_UPDATED_BY => l_user_id
222 , P_LAST_UPDATE_DATE => sysdate
223 , P_LAST_UPDATE_LOGIN => 0
224 , P_REQUEST_ID => FND_API.G_MISS_NUM
225 , P_PROGRAM_APPLICATION_ID => FND_API.G_MISS_NUM
226 , P_PROGRAM_ID => FND_API.G_MISS_NUM
227 , P_PROGRAM_UPDATE_DATE => FND_API.G_MISS_DATE
228 );
229 ELSE
230 UPDATE_ROW (
231 P_DEPENDENCY_ID => l_dependency_id
232 , P_TRIGGER_ATTRIBUTE_ID => X_TRIGGER_ATTRIBUTE_ID
233 , P_DEPENDENT_ATTRIBUTE_ID => X_DEPENDENT_ATTRIBUTE_ID
234 , P_ENABLED_FLAG => X_ENABLED_FLAG
235 , P_DATABASE_OBJECT_NAME => X_DATABASE_OBJECT_NAME
236 , P_APPLICATION_ID => X_APPLICATION_ID
237 , P_SEED_TAG => X_SEED_TAG
238 , P_CREATION_DATE => sysdate
239 , P_CREATED_BY => l_user_id
240 , P_LAST_UPDATED_BY => l_user_id
241 , P_LAST_UPDATE_DATE => sysdate
242 , P_LAST_UPDATE_LOGIN => 0
243 , P_REQUEST_ID => FND_API.G_MISS_NUM
244 , P_PROGRAM_APPLICATION_ID => FND_API.G_MISS_NUM
245 , P_PROGRAM_ID => FND_API.G_MISS_NUM
246 , P_PROGRAM_UPDATE_DATE => FND_API.G_MISS_DATE
247 );
248 END IF;
249
250 CLOSE C;
251
252 END LOAD_ROW;
253
254
255 End ASO_DEPENDENCY_MAPPINGS_PKG;
256