[Home] [Help]
PACKAGE BODY: APPS.CN_ROLE_MODELS_PKG
Source
1 PACKAGE BODY cn_role_models_pkg AS
2 /*$Header: cntrlmlb.pls 115.3 2002/01/28 20:05:31 pkm ship $*/
3
4 PROCEDURE insert_row
5 (P_ROLE_MODEL_ID IN NUMBER := FND_API.G_MISS_NUM,
6 P_ROLE_ID IN NUMBER,
7 P_NAME IN VARCHAR2,
8 P_DESCRIPTION IN VARCHAR2 := FND_API.G_MISS_CHAR,
9 P_SEQ IN NUMBER := FND_API.G_MISS_NUM,
10 P_STATUS IN VARCHAR2,
11 P_ACTIVATE_STATUS IN VARCHAR2,
12 P_CLUB_ELIGIBLE_FLAG IN VARCHAR2 := FND_API.G_MISS_CHAR,
13 P_OTE IN NUMBER := FND_API.G_MISS_NUM,
14 P_ROUNDING_FACTOR IN NUMBER := FND_API.G_MISS_NUM,
15 P_ATTAIN_SCHEDULE_ID IN NUMBER := FND_API.G_MISS_NUM,
16 P_PLAN_LEVEL IN NUMBER := FND_API.G_MISS_NUM,
17 P_QUOTA_MIN IN NUMBER := FND_API.G_MISS_NUM,
18 P_QUOTA_MAX IN NUMBER := FND_API.G_MISS_NUM,
19 P_ESTIMATED_PAYOUT IN NUMBER := FND_API.G_MISS_NUM,
20 P_SRP_ROLE_ID IN NUMBER := FND_API.G_MISS_NUM,
21 P_START_DATE IN DATE,
22 P_END_DATE IN DATE := FND_API.G_MISS_DATE,
23 P_SCENARIO_STATUS IN VARCHAR2 := FND_API.G_MISS_CHAR,
24 P_SRP_ID IN NUMBER := FND_API.G_MISS_NUM,
25 P_ATTRIBUTE_CATEGORY IN VARCHAR2 := FND_API.G_MISS_CHAR,
26 P_ATTRIBUTE1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
27 P_ATTRIBUTE2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
28 P_ATTRIBUTE3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
29 P_ATTRIBUTE4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
30 P_ATTRIBUTE5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
31 P_ATTRIBUTE6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
32 P_ATTRIBUTE7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
33 P_ATTRIBUTE8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
34 P_ATTRIBUTE9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
35 P_ATTRIBUTE10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
36 P_ATTRIBUTE11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
37 P_ATTRIBUTE12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
38 P_ATTRIBUTE13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
39 P_ATTRIBUTE14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
40 P_ATTRIBUTE15 IN VARCHAR2 := FND_API.G_MISS_CHAR)
41 IS
42 MN NUMBER := FND_API.G_MISS_NUM;
43 MC VARCHAR2(150) := FND_API.G_MISS_CHAR;
44 MD DATE := FND_API.G_MISS_DATE;
45
46 BEGIN
47
48 INSERT INTO cn_role_models(
49 role_model_id,
50 role_id,
51 name,
52 description,
53 seq,
54 status,
55 activate_status,
56 club_eligible_flag,
57 ote,
58 rounding_factor,
59 attain_schedule_id,
60 plan_level,
61 quota_min,
62 quota_max,
63 estimated_payout,
64 srp_role_id,
65 start_date,
66 end_date,
67 scenario_status,
68 srp_id,
69 attribute_category,
70 attribute1,
71 attribute2,
72 attribute3,
73 attribute4,
74 attribute5,
75 attribute6,
76 attribute7,
77 attribute8,
78 attribute9,
79 attribute10,
80 attribute11,
81 attribute12,
82 attribute13,
83 attribute14,
84 attribute15,
85 object_version_number,
86 LAST_UPDATE_DATE,
87 LAST_UPDATED_BY,
88 LAST_UPDATE_LOGIN,
89 CREATION_DATE,
90 CREATED_BY
91 )
92 SELECT
93 decode(p_role_model_id, mn, cn_role_models_s.nextval,
94 p_role_model_id),
95 p_role_id,
96 p_name,
97 decode(p_description, mc, null, p_description),
98 decode(p_seq, mn, null, p_seq),
99 decode(p_status, mc, null, p_status),
100 decode(p_activate_status, mc, null, p_activate_status),
101 decode(p_club_eligible_flag, mc, 'N', p_club_eligible_flag),
102 decode(p_ote, mn, null, p_ote),
103 decode(p_rounding_factor, mn, null, p_rounding_factor),
104 decode(p_attain_schedule_id, mn, null, p_attain_schedule_id),
105 decode(p_plan_level, mn, null, p_plan_level),
106 decode(p_quota_min, mn, null, p_quota_min),
107 decode(p_quota_max, mn, null, p_quota_max),
108 decode(p_estimated_payout, mn, null, p_estimated_payout),
109 decode(p_srp_role_id, mn, null, p_srp_role_id),
110 trunc(p_start_date),
111 decode(p_end_date, md, null, trunc(p_end_date)),
112 decode(p_scenario_status, mc, null, p_scenario_status),
113 decode(p_srp_id, mn, null, p_srp_id),
114 decode(p_attribute_category, mc, null, p_attribute_category),
115 decode(p_attribute1, mc, null, p_attribute1),
116 decode(p_attribute2, mc, null, p_attribute2),
117 decode(p_attribute3, mc, null, p_attribute3),
118 decode(p_attribute4, mc, null, p_attribute4),
119 decode(p_attribute5, mc, null, p_attribute5),
120 decode(p_attribute6, mc, null, p_attribute6),
121 decode(p_attribute7, mc, null, p_attribute7),
122 decode(p_attribute8, mc, null, p_attribute8),
123 decode(p_attribute9, mc, null, p_attribute9),
124 decode(p_attribute10, mc, null, p_attribute10),
125 decode(p_attribute11, mc, null, p_attribute11),
126 decode(p_attribute12, mc, null, p_attribute12),
127 decode(p_attribute13, mc, null, p_attribute13),
128 decode(p_attribute14, mc, null, p_attribute14),
129 decode(p_attribute15, mc, null, p_attribute15),
130 1,
131 sysdate,
132 fnd_global.user_id,
133 fnd_global.login_id,
134 sysdate,
135 fnd_global.user_id
136 FROM dual
137 ;
138
139 END Insert_Row;
140
141
142 PROCEDURE Update_Row
143 (P_ROLE_MODEL_ID IN NUMBER,
144 P_ROLE_ID IN NUMBER := FND_API.G_MISS_NUM,
145 P_NAME IN VARCHAR2 := FND_API.G_MISS_CHAR,
146 P_DESCRIPTION IN VARCHAR2 := FND_API.G_MISS_CHAR,
147 P_SEQ IN NUMBER := FND_API.G_MISS_NUM,
148 P_STATUS IN VARCHAR2 := FND_API.G_MISS_CHAR,
149 P_ACTIVATE_STATUS IN VARCHAR2 := FND_API.G_MISS_CHAR,
150 P_CLUB_ELIGIBLE_FLAG IN VARCHAR2 := FND_API.G_MISS_CHAR,
151 P_OTE IN NUMBER := FND_API.G_MISS_NUM,
152 P_ROUNDING_FACTOR IN NUMBER := FND_API.G_MISS_NUM,
153 P_ATTAIN_SCHEDULE_ID IN NUMBER := FND_API.G_MISS_NUM,
154 P_PLAN_LEVEL IN NUMBER := FND_API.G_MISS_NUM,
155 P_QUOTA_MIN IN NUMBER := FND_API.G_MISS_NUM,
156 P_QUOTA_MAX IN NUMBER := FND_API.G_MISS_NUM,
157 P_ESTIMATED_PAYOUT IN NUMBER := FND_API.G_MISS_NUM,
158 P_SRP_ROLE_ID IN NUMBER := FND_API.G_MISS_NUM,
159 P_START_DATE IN DATE := FND_API.G_MISS_DATE,
160 P_END_DATE IN DATE := FND_API.G_MISS_DATE,
161 P_SCENARIO_STATUS IN VARCHAR2 := FND_API.G_MISS_CHAR,
162 P_SRP_ID IN NUMBER := FND_API.G_MISS_NUM,
163 P_ATTRIBUTE_CATEGORY IN VARCHAR2 := FND_API.G_MISS_CHAR,
164 P_ATTRIBUTE1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
165 P_ATTRIBUTE2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
166 P_ATTRIBUTE3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
167 P_ATTRIBUTE4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
168 P_ATTRIBUTE5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
169 P_ATTRIBUTE6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
170 P_ATTRIBUTE7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
171 P_ATTRIBUTE8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
172 P_ATTRIBUTE9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
173 P_ATTRIBUTE10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
174 P_ATTRIBUTE11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
175 P_ATTRIBUTE12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
176 P_ATTRIBUTE13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
177 P_ATTRIBUTE14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
178 P_ATTRIBUTE15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
179 P_OBJECT_VERSION_NUMBER IN NUMBER := FND_API.G_MISS_NUM )
180 IS
181
182 CURSOR l_old_csr IS
183 SELECT *
184 FROM cn_role_models
185 WHERE role_model_id = p_role_model_id;
186
187 l_old_rec l_old_csr%ROWTYPE;
188
189 MN NUMBER := FND_API.G_MISS_NUM;
190 MC VARCHAR2(150) := FND_API.G_MISS_CHAR;
191 MD DATE := FND_API.G_MISS_DATE;
192
193 l_object_version_number NUMBER;
194
195 BEGIN
196 OPEN l_old_csr;
197 FETCH l_old_csr INTO l_old_rec;
198 CLOSE l_old_csr;
199
200 SELECT decode(p_object_version_number, mn,
201 l_old_rec.object_version_number, p_object_version_number)
202 INTO l_object_version_number
203 FROM dual
204 ;
205
206 -- check object version number
207 IF l_object_version_number <> l_old_rec.object_version_number THEN
208 fnd_message.set_name('CN', 'CN_RECORD_CHANGED');
209 fnd_msg_pub.add;
210 raise fnd_api.g_exc_error;
211 END IF;
212
213 UPDATE cn_role_models SET
214 (role_id,
215 name,
216 description,
217 seq,
218 status,
219 activate_status,
220 club_eligible_flag,
221 ote,
222 rounding_factor,
223 attain_schedule_id,
224 plan_level,
225 quota_min,
226 quota_max,
227 estimated_payout,
228 srp_role_id,
229 start_date,
230 end_date,
231 scenario_status,
232 srp_id,
233 attribute_category,
234 attribute1,
235 attribute2,
236 attribute3,
237 attribute4,
238 attribute5,
239 attribute6,
240 attribute7,
241 attribute8,
242 attribute9,
243 attribute10,
244 attribute11,
245 attribute12,
246 attribute13,
247 attribute14,
248 attribute15,
249 object_version_number,
250 LAST_UPDATE_DATE,
251 LAST_UPDATED_BY,
252 LAST_UPDATE_LOGIN
253 ) =
254 (
255 SELECT
256 decode(p_role_id, mn, l_old_rec.role_id, p_role_id),
257 decode(p_name, mc, l_old_rec.name, p_name),
258 decode(p_description, mc, l_old_rec.description, p_description),
259 decode(p_seq, mn, l_old_rec.seq, p_seq),
260 decode(p_status, mc, l_old_rec.status, p_status),
261 decode(p_activate_status, mc, l_old_rec.activate_status,
262 p_activate_status),
263 decode(p_club_eligible_flag, mc, l_old_rec.club_eligible_flag,
264 p_club_eligible_flag),
265 decode(p_ote, mn, l_old_rec.ote, p_ote),
266 decode(p_rounding_factor, mn, l_old_rec.rounding_factor,
267 p_rounding_factor),
268 decode(p_attain_schedule_id, mn, l_old_rec.attain_schedule_id,
269 p_attain_schedule_id),
270 decode(p_plan_level, mn, l_old_rec.plan_level, p_plan_level),
271 decode(p_quota_min, mn, l_old_rec.quota_min, p_quota_min),
272 decode(p_quota_max, mn, l_old_rec.quota_max, p_quota_max),
273 decode(p_estimated_payout, mn, l_old_rec.estimated_payout,
274 p_estimated_payout),
275 decode(p_srp_role_id, mn, l_old_rec.srp_role_id, p_srp_role_id),
276 decode(p_start_date, md, trunc(l_old_rec.start_date),
277 trunc(p_start_date)),
278 decode(p_end_date, md, trunc(l_old_rec.end_date), trunc(p_end_date)),
279 decode(p_scenario_status, mc, l_old_rec.scenario_status,
280 p_scenario_status),
281 decode(p_srp_id, mn, l_old_rec.srp_id, p_srp_id),
282 decode(p_attribute_category, mc, l_old_rec.attribute_category,
283 p_attribute_category),
287 decode(p_attribute4, mc, l_old_rec.attribute4, p_attribute4),
284 decode(p_attribute1, mc, l_old_rec.attribute1, p_attribute1),
285 decode(p_attribute2, mc, l_old_rec.attribute2, p_attribute2),
286 decode(p_attribute3, mc, l_old_rec.attribute3, p_attribute3),
288 decode(p_attribute5, mc, l_old_rec.attribute5, p_attribute5),
289 decode(p_attribute6, mc, l_old_rec.attribute6, p_attribute6),
290 decode(p_attribute7, mc, l_old_rec.attribute7, p_attribute7),
291 decode(p_attribute8, mc, l_old_rec.attribute8, p_attribute8),
292 decode(p_attribute9, mc, l_old_rec.attribute9, p_attribute9),
293 decode(p_attribute10, mc, l_old_rec.attribute10, p_attribute10),
294 decode(p_attribute11, mc, l_old_rec.attribute11, p_attribute11),
295 decode(p_attribute12, mc, l_old_rec.attribute12, p_attribute12),
296 decode(p_attribute13, mc, l_old_rec.attribute13, p_attribute13),
297 decode(p_attribute14, mc, l_old_rec.attribute14, p_attribute14),
298 decode(p_attribute15, mc, l_old_rec.attribute15, p_attribute15),
299 decode(p_object_version_number, mn,
300 l_old_rec.object_version_number, p_object_version_number+1),
301 sysdate,
302 fnd_global.user_id,
303 fnd_global.login_id
304 FROM dual)
305 WHERE role_model_id = p_role_model_id;
306
307 END Update_Row;
308
309
310 PROCEDURE Delete_Row
311 (P_ROLE_MODEL_ID IN NUMBER) IS
312 BEGIN
313 DELETE FROM cn_role_models
314 WHERE role_model_id = p_role_model_id;
315
316 END Delete_Row;
317
318 END cn_role_models_pkg;