[Home] [Help]
PACKAGE BODY: APPS.CSC_PROFILE_CHECK_PVT
Source
1 PACKAGE BODY CSC_PROFILE_CHECK_PVT as
2 /* $Header: cscvpckb.pls 120.2 2009/05/15 10:29:38 spamujul ship $ */
3 -- Start of Comments
4 -- Package name : CSC_PROFILE_CHECK_PVT
5 -- Purpose :
6 -- History : Sudhakar 08/17/00 modified validate_check_name,
7 -- validate_check_code and validate_select_block_id
8 -- : 11/25/02 JAmose for the G_MISS* and NOCOPY changes
9 -- : for performance reason
10 -- NOTE :
11 -- End of Comments
12
13
14 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSC_PROFILE_CHECK_PVT';
15 G_FILE_NAME CONSTANT VARCHAR2(12) := 'cscvpckb.pls';
16
17 G_UPDATE CONSTANT VARCHAR2(30) := 'UPDATE';
18 G_CREATE CONSTANT VARCHAR2(30) := 'CREATE';
19
20 PROCEDURE Convert_Columns_to_Rec(
21 p_CHECK_ID IN NUMBER DEFAULT NULL,
22 p_CHECK_NAME IN VARCHAR2,
23 p_CHECK_NAME_CODE IN VARCHAR2,
24 p_DESCRIPTION IN VARCHAR2 ,
25 p_START_DATE_ACTIVE IN DATE,
26 p_END_DATE_ACTIVE IN DATE,
27 p_SEEDED_FLAG IN VARCHAR2,
28 p_SELECT_TYPE IN VARCHAR2,
29 p_SELECT_BLOCK_ID IN NUMBER ,
30 p_DATA_TYPE IN VARCHAR2,
31 p_FORMAT_MASK IN VARCHAR2,
32 p_THRESHOLD_GRADE IN VARCHAR2,
33 p_THRESHOLD_RATING_CODE IN VARCHAR2,
34 p_CHECK_UPPER_LOWER_FLAG IN VARCHAR2,
35 p_THRESHOLD_COLOR_CODE IN VARCHAR2,
36 p_CHECK_LEVEL IN VARCHAR2,
37 p_CREATED_BY IN NUMBER ,
38 p_CREATION_DATE IN DATE ,
39 p_LAST_UPDATED_BY IN NUMBER ,
40 p_LAST_UPDATE_DATE IN DATE ,
41 p_LAST_UPDATE_LOGIN IN NUMBER ,
42 p_OBJECT_VERSION_NUMBER IN NUMBER DEFAULT NULL,
43 p_APPLICATION_ID IN NUMBER ,
44 X_Check_Rec OUT NOCOPY Check_Rec_Type
45 )
46 IS
47 BEGIN
48 X_Check_Rec.CHECK_ID := p_CHECK_ID;
49 X_Check_Rec.CHECK_NAME := p_CHECK_NAME;
50 X_Check_Rec.CHECK_NAME_CODE := p_CHECK_NAME_CODE;
51 X_Check_Rec.DESCRIPTION := p_DESCRIPTION;
52 X_Check_Rec.START_DATE_ACTIVE := p_START_DATE_ACTIVE;
53 X_Check_Rec.END_DATE_ACTIVE := p_END_DATE_ACTIVE;
54 X_Check_Rec.SEEDED_FLAG := p_SEEDED_FLAG;
55 X_Check_Rec.SELECT_TYPE := p_SELECT_TYPE;
56 X_Check_Rec.SELECT_BLOCK_ID := p_SELECT_BLOCK_ID;
57 X_Check_Rec.DATA_TYPE := p_DATA_TYPE;
58 X_Check_Rec.FORMAT_MASK := p_FORMAT_MASK;
59 X_Check_Rec.THRESHOLD_GRADE := p_THRESHOLD_GRADE;
60 X_Check_Rec.THRESHOLD_RATING_CODE := p_THRESHOLD_RATING_CODE;
61 X_Check_Rec.CHECK_UPPER_LOWER_FLAG := p_CHECK_UPPER_LOWER_FLAG;
62 X_Check_Rec.THRESHOLD_COLOR_CODE := p_THRESHOLD_COLOR_CODE;
63 X_Check_Rec.CHECK_LEVEL := p_CHECK_LEVEL;
64 X_Check_Rec.CREATED_BY := p_CREATED_BY;
65 X_Check_Rec.CREATION_DATE := p_CREATION_DATE;
66 X_Check_Rec.LAST_UPDATED_BY := p_LAST_UPDATED_BY;
67 X_Check_Rec.LAST_UPDATE_DATE := p_LAST_UPDATE_DATE;
68 X_Check_Rec.LAST_UPDATE_LOGIN := p_LAST_UPDATE_LOGIN;
69 X_Check_Rec.OBJECT_VERSION_NUMBER := p_OBJECT_VERSION_NUMBER;
70 X_Check_Rec.APPLICATION_ID := p_APPLICATION_ID;
71 END Convert_Columns_to_Rec;
72
73
74 PROCEDURE Create_Profile_Check(
75 P_Api_Version_Number IN NUMBER,
76 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
77 P_Commit IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
78 p_validation_level IN NUMBER := CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
79 p_CHECK_NAME IN VARCHAR2 DEFAULT NULL,
80 p_CHECK_NAME_CODE IN VARCHAR2 DEFAULT NULL,
81 p_DESCRIPTION IN VARCHAR2 DEFAULT NULL,
82 p_START_DATE_ACTIVE IN DATE DEFAULT NULL,
83 p_END_DATE_ACTIVE IN DATE DEFAULT NULL,
84 p_SEEDED_FLAG IN VARCHAR2 DEFAULT NULL,
85 p_SELECT_TYPE IN VARCHAR2 DEFAULT NULL,
86 p_SELECT_BLOCK_ID IN NUMBER DEFAULT NULL,
87 p_DATA_TYPE IN VARCHAR2 DEFAULT NULL,
88 p_FORMAT_MASK IN VARCHAR2 DEFAULT NULL,
89 p_THRESHOLD_GRADE IN VARCHAR2 DEFAULT NULL,
90 p_THRESHOLD_RATING_CODE IN VARCHAR2 DEFAULT NULL,
91 p_CHECK_UPPER_LOWER_FLAG IN VARCHAR2 DEFAULT NULL,
92 p_THRESHOLD_COLOR_CODE IN VARCHAR2 DEFAULT NULL,
93 p_CHECK_LEVEL IN VARCHAR2 DEFAULT NULL,
94 p_CREATED_BY IN NUMBER DEFAULT NULL,
95 p_CREATION_DATE IN DATE DEFAULT NULL,
96 p_LAST_UPDATED_BY IN NUMBER DEFAULT NULL,
97 p_LAST_UPDATE_DATE IN DATE DEFAULT NULL,
98 p_LAST_UPDATE_LOGIN IN NUMBER DEFAULT NULL,
99 X_CHECK_ID OUT NOCOPY NUMBER,
100 X_Object_Version_Number OUT NOCOPY NUMBER,
101 p_APPLICATION_ID IN NUMBER DEFAULT NULL,
102 X_Return_Status OUT NOCOPY VARCHAR2,
103 X_Msg_Count OUT NOCOPY NUMBER,
104 X_Msg_Data OUT NOCOPY VARCHAR2
105 )
106 IS
107 l_Check_Rec Check_Rec_Type;
108 BEGIN
109
110 Convert_Columns_to_Rec(
111 p_CHECK_NAME => p_CHECK_NAME,
112 p_CHECK_NAME_CODE => p_CHECK_NAME_CODE,
113 p_DESCRIPTION => p_DESCRIPTION,
114 p_START_DATE_ACTIVE => p_START_DATE_ACTIVE,
115 p_END_DATE_ACTIVE => p_END_DATE_ACTIVE,
116 p_SEEDED_FLAG => p_SEEDED_FLAG,
117 p_SELECT_TYPE => p_SELECT_TYPE,
118 p_SELECT_BLOCK_ID => p_SELECT_BLOCK_ID,
119 p_DATA_TYPE => p_DATA_TYPE,
120 p_FORMAT_MASK => p_FORMAT_MASK,
121 p_THRESHOLD_GRADE => p_THRESHOLD_GRADE,
122 p_THRESHOLD_RATING_CODE => p_THRESHOLD_RATING_CODE,
123 p_CHECK_UPPER_LOWER_FLAG => p_CHECK_UPPER_LOWER_FLAG,
124 p_THRESHOLD_COLOR_CODE => p_THRESHOLD_COLOR_CODE,
125 p_CHECK_LEVEL => p_CHECK_LEVEL,
126 p_CREATED_BY => p_CREATED_BY,
127 p_CREATION_DATE => p_CREATION_DATE,
128 p_LAST_UPDATED_BY => p_LAST_UPDATED_BY,
129 p_LAST_UPDATE_DATE => p_LAST_UPDATE_DATE,
130 p_LAST_UPDATE_LOGIN => p_LAST_UPDATE_LOGIN,
131 p_APPLICATION_ID => p_APPLICATION_ID,
132 X_Check_Rec => l_Check_rec
133 );
134
135
136 Create_Profile_Check(
137 P_Api_Version_Number => P_Api_Version_Number,
138 P_Init_Msg_List => P_Init_Msg_List,
139 P_Commit => P_Commit,
140 p_validation_level => p_validation_level,
141 P_Check_Rec => l_Check_Rec,
142 X_CHECK_ID => X_CHECK_ID,
143 X_OBJECT_VERSION_NUMBER => X_OBJECT_VERSION_NUMBER,
144 X_Return_Status => X_Return_Status,
145 X_Msg_Count => X_Msg_Count,
146 X_Msg_Data => X_Msg_Data
147 );
148
149 END Create_Profile_Check;
150
151 PROCEDURE Create_Profile_Check(
152 P_Api_Version_Number IN NUMBER,
153 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
154 P_Commit IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
155 p_validation_level IN NUMBER := CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
156 P_Check_Rec IN Check_Rec_Type := G_MISS_CHECK_REC,
157 X_CHECK_ID OUT NOCOPY NUMBER,
158 X_OBJECT_VERSION_NUMBER OUT NOCOPY NUMBER,
159 X_Return_Status OUT NOCOPY VARCHAR2,
160 X_Msg_Count OUT NOCOPY NUMBER,
161 X_Msg_Data OUT NOCOPY VARCHAR2
162 )
163
164 IS
165 l_api_name CONSTANT VARCHAR2(30) := 'Create_Profile_Check';
166 l_api_version_number CONSTANT NUMBER := 1.0;
167 l_api_name_full VARCHAR2(61) := G_PKG_NAME || '.' || l_api_name ;
168 BEGIN
169
170 -- Standard Start of API savepoint
171 SAVEPOINT CREATE_PROFILE_CHECK_PVT;
172
173 -- Standard call to check for call compatibility.
174 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
175 p_api_version_number,
176 l_api_name,
177 G_PKG_NAME)
178 THEN
179 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
180 END IF;
181
182
183 -- Initialize message list if p_init_msg_list is set to TRUE.
184 IF FND_API.to_Boolean( p_init_msg_list )
185 THEN
186 FND_MSG_PUB.initialize;
187 END IF;
188
189
190 -- Initialize API return status to SUCCESS
191 x_return_status := FND_API.G_RET_STS_SUCCESS;
192
193
194 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
195 THEN
196
197 -- Invoke validation procedures
198 Validate_check(
199 p_init_msg_list => FND_API.G_FALSE,
200 p_Validation_Level => p_Validation_Level,
201 p_Validation_Mode => CSC_CORE_UTILS_PVT.G_CREATE,
202 p_CHECK_REC => p_CHECK_REC,
203 x_return_status => x_return_status,
204 x_msg_count => x_msg_count,
205 x_msg_data => x_msg_data);
206 END IF;
207 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
208 RAISE FND_API.G_EXC_ERROR;
209 END IF;
210
211
212 -- Invoke table handler(CSC_PROF_CHECKS_PKG.Insert_Row)
213 CSC_PROF_CHECKS_PKG.Insert_Row(
214 px_CHECK_ID => x_CHECK_ID,
215 p_CHECK_NAME => p_Check_rec.CHECK_NAME,
216 p_CHECK_NAME_CODE => p_Check_rec.CHECK_NAME_CODE,
217 p_DESCRIPTION => p_Check_rec.DESCRIPTION,
218 p_START_DATE_ACTIVE => p_Check_rec.START_DATE_ACTIVE,
219 p_END_DATE_ACTIVE => p_Check_rec.END_DATE_ACTIVE,
220 p_SEEDED_FLAG => p_Check_rec.SEEDED_FLAG,
221 p_SELECT_TYPE => p_Check_rec.SELECT_TYPE,
222 p_SELECT_BLOCK_ID => p_Check_rec.SELECT_BLOCK_ID,
223 p_DATA_TYPE => p_Check_rec.DATA_TYPE,
224 p_FORMAT_MASK => p_Check_rec.FORMAT_MASK,
225 p_THRESHOLD_GRADE => p_Check_rec.THRESHOLD_GRADE,
226 p_THRESHOLD_RATING_CODE => p_Check_rec.THRESHOLD_RATING_CODE,
227 p_CHECK_UPPER_LOWER_FLAG => p_Check_rec.CHECK_UPPER_LOWER_FLAG,
228 p_THRESHOLD_COLOR_CODE => p_Check_rec.THRESHOLD_COLOR_CODE,
229 p_CHECK_LEVEL => p_Check_rec.CHECK_LEVEL,
230 p_CREATED_BY => FND_GLOBAL.USER_ID,
231 p_CREATION_DATE => SYSDATE,
232 p_LAST_UPDATED_BY => FND_GLOBAL.USER_ID,
233 p_LAST_UPDATE_DATE => SYSDATE,
234 p_LAST_UPDATE_LOGIN => p_Check_rec.LAST_UPDATE_LOGIN,
235 x_OBJECT_VERSION_NUMBER => X_OBJECT_VERSION_NUMBER,
236 p_APPLICATION_ID => p_Check_rec.APPLICATION_ID);
237
238 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
239 RAISE FND_API.G_EXC_ERROR;
240 END IF;
241
242
243 -- Standard check for p_commit
244 IF FND_API.to_Boolean( p_commit )
245 THEN
246 COMMIT WORK;
247 END IF;
248
249
250 -- Standard call to get message count and if count is 1, get message info.
251 FND_MSG_PUB.Count_And_Get
252 ( p_count => x_msg_count,
253 p_data => x_msg_data
254 );
255
256 EXCEPTION
257 WHEN FND_API.G_EXC_ERROR THEN
258 ROLLBACK TO Create_Profile_Check_PVT;
259 x_return_status := FND_API.G_RET_STS_ERROR;
260 FND_MSG_PUB.Count_And_Get
261 ( p_count => x_msg_count,
262 p_data => x_msg_data
263 );
264 APP_EXCEPTION.RAISE_EXCEPTION;
265 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
266 ROLLBACK TO Create_Profile_Check_PVT;
267 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
268 FND_MSG_PUB.Count_And_Get
269 ( p_count => x_msg_count,
270 p_data => x_msg_data
271 );
272 APP_EXCEPTION.RAISE_EXCEPTION;
273 WHEN OTHERS THEN
274 ROLLBACK TO Create_Profile_Check_PVT;
275 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
276 FND_MSG_PUB.Build_Exc_Msg(G_PKG_NAME, l_api_name);
277 FND_MSG_PUB.Count_And_Get
278 ( p_count => x_msg_count,
279 p_data => x_msg_data
280 );
281 APP_EXCEPTION.RAISE_EXCEPTION;
282 End Create_Profile_Check;
283
284
285 PROCEDURE Update_Profile_Check(
286 P_Api_Version_Number IN NUMBER,
287 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
288 P_Commit IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
289 p_validation_level IN NUMBER := CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
290 p_CHECK_ID IN NUMBER DEFAULT NULL,
291 p_CHECK_NAME IN VARCHAR2 DEFAULT NULL,
292 p_CHECK_NAME_CODE IN VARCHAR2 DEFAULT NULL,
293 p_DESCRIPTION IN VARCHAR2 DEFAULT NULL,
294 p_START_DATE_ACTIVE IN DATE DEFAULT NULL,
295 p_END_DATE_ACTIVE IN DATE DEFAULT NULL,
296 p_SEEDED_FLAG IN VARCHAR2 DEFAULT NULL,
297 p_SELECT_TYPE IN VARCHAR2 DEFAULT NULL,
298 p_SELECT_BLOCK_ID IN NUMBER DEFAULT NULL,
299 p_DATA_TYPE IN VARCHAR2 DEFAULT NULL,
300 p_FORMAT_MASK IN VARCHAR2 DEFAULT NULL,
301 p_THRESHOLD_GRADE IN VARCHAR2 DEFAULT NULL,
302 p_THRESHOLD_RATING_CODE IN VARCHAR2 DEFAULT NULL,
303 p_CHECK_UPPER_LOWER_FLAG IN VARCHAR2 DEFAULT NULL,
304 p_THRESHOLD_COLOR_CODE IN VARCHAR2 DEFAULT NULL,
305 p_CHECK_LEVEL IN VARCHAR2 DEFAULT NULL,
306 p_CREATED_BY IN NUMBER DEFAULT NULL,
307 p_CREATION_DATE IN DATE DEFAULT NULL,
308 p_LAST_UPDATED_BY IN NUMBER DEFAULT NULL,
309 p_LAST_UPDATE_DATE IN DATE DEFAULT NULL,
310 p_LAST_UPDATE_LOGIN IN NUMBER DEFAULT NULL,
311 px_OBJECT_VERSION_NUMBER IN OUT NOCOPY NUMBER,
312 p_APPLICATION_ID IN NUMBER DEFAULT NULL,
313 X_Return_Status OUT NOCOPY VARCHAR2,
314 X_Msg_Count OUT NOCOPY NUMBER,
315 X_Msg_Data OUT NOCOPY VARCHAR2
316 )
317 IS
318 l_Check_Rec Check_Rec_Type;
319 BEGIN
320
321 Convert_Columns_to_Rec(
322 p_CHECK_ID => p_CHECK_ID,
323 p_CHECK_NAME => p_CHECK_NAME,
324 p_CHECK_NAME_CODE => p_CHECK_NAME_CODE,
325 p_DESCRIPTION => p_DESCRIPTION,
326 p_START_DATE_ACTIVE => p_START_DATE_ACTIVE,
327 p_END_DATE_ACTIVE => p_END_DATE_ACTIVE,
328 p_SEEDED_FLAG => p_SEEDED_FLAG,
329 p_SELECT_TYPE => p_SELECT_TYPE,
330 p_SELECT_BLOCK_ID => p_SELECT_BLOCK_ID,
331 p_DATA_TYPE => p_DATA_TYPE,
332 p_FORMAT_MASK => p_FORMAT_MASK,
333 p_THRESHOLD_GRADE => p_THRESHOLD_GRADE,
334 p_THRESHOLD_RATING_CODE => p_THRESHOLD_RATING_CODE,
335 p_CHECK_UPPER_LOWER_FLAG => p_CHECK_UPPER_LOWER_FLAG,
336 p_THRESHOLD_COLOR_CODE => p_THRESHOLD_COLOR_CODE,
337 p_CHECK_LEVEL => p_CHECK_LEVEL,
338 p_CREATED_BY => p_CREATED_BY,
339 p_CREATION_DATE => p_CREATION_DATE,
340 p_LAST_UPDATED_BY => p_LAST_UPDATED_BY,
341 p_LAST_UPDATE_DATE => p_LAST_UPDATE_DATE,
342 p_LAST_UPDATE_LOGIN => p_LAST_UPDATE_LOGIN,
343 p_APPLICATION_ID => p_APPLICATION_ID,
344 X_Check_Rec => l_Check_rec
345 );
346
347
348 Update_Profile_check(
349 P_Api_Version_Number => P_Api_Version_Number,
350 P_Init_Msg_List => P_Init_Msg_List,
351 P_Commit => P_Commit,
352 p_validation_level => p_validation_level,
353 P_CHECK_REC => l_CHECK_REC,
354 PX_OBJECT_VERSION_NUMBER => px_OBJECT_VERSION_NUMBER,
355 X_Return_Status => X_Return_Status,
356 X_Msg_Count => X_Msg_Count,
357 X_Msg_Data => X_Msg_Data
358 );
359
360 END;
361
362
363 PROCEDURE Update_Profile_check(
364 P_Api_Version_Number IN NUMBER,
365 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
366 P_Commit IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
367 p_validation_level IN NUMBER := CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
368 P_Check_Rec IN Check_Rec_Type,
369 PX_Object_Version_Number IN OUT NOCOPY NUMBER,
370 X_Return_Status OUT NOCOPY VARCHAR2,
371 X_Msg_Count OUT NOCOPY NUMBER,
372 X_Msg_Data OUT NOCOPY VARCHAR2
373 )
374
375 IS
376 Cursor C_Get_check(c_CHECK_ID Number,c_object_version_number NUMBER) IS
377 Select rowid,
378 CHECK_ID,
379 CHECK_NAME,
380 CHECK_NAME_CODE,
381 DESCRIPTION,
382 START_DATE_ACTIVE,
383 END_DATE_ACTIVE,
384 SEEDED_FLAG,
385 SELECT_TYPE,
386 SELECT_BLOCK_ID,
387 DATA_TYPE,
388 FORMAT_MASK,
389 THRESHOLD_GRADE,
390 THRESHOLD_RATING_CODE,
391 CHECK_UPPER_LOWER_FLAG,
392 THRESHOLD_COLOR_CODE,
393 CHECK_LEVEL,
394 CREATED_BY,
395 CREATION_DATE,
396 LAST_UPDATED_BY,
397 LAST_UPDATE_DATE,
398 LAST_UPDATE_LOGIN,
399 OBJECT_VERSION_NUMBER,
400 APPLICATION_ID
401 From CSC_PROF_CHECKS_VL
402 where check_id = c_check_id
403 and object_version_number = c_object_version_number
404 For Update NOWAIT;
405 l_api_name CONSTANT VARCHAR2(30) := 'Update_Profile_check';
406 l_api_version_number CONSTANT NUMBER := 1.0;
407 -- Local Variables
408 l_ref_Check_rec CSC_Profile_check_PVT.Check_Rec_Type;
409 l_rowid ROWID;
410 BEGIN
411 -- Standard Start of API savepoint
412 SAVEPOINT UPDATE_PROFILE_CHECK_PVT;
413
414 -- Standard call to check for call compatibility.
415 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
416 p_api_version_number,
417 l_api_name,
418 G_PKG_NAME)
419 THEN
420 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
421 END IF;
422
423 -- Initialize message list if p_init_msg_list is set to TRUE.
424 IF FND_API.to_Boolean( p_init_msg_list )
425 THEN
426 FND_MSG_PUB.initialize;
427 END IF;
428
429 -- Initialize API return status to SUCCESS
430 x_return_status := FND_API.G_RET_STS_SUCCESS;
431
432 --
433 -- Api body
434 --
435
436 Open C_Get_check( p_Check_rec.CHECK_ID, px_object_version_number);
437
438 Fetch C_Get_check into
439 l_rowid,
440 l_ref_Check_rec.CHECK_ID,
441 l_ref_Check_rec.CHECK_NAME,
442 l_ref_Check_rec.CHECK_NAME_CODE,
443 l_ref_Check_rec.DESCRIPTION,
444 l_ref_Check_rec.START_DATE_ACTIVE,
445 l_ref_Check_rec.END_DATE_ACTIVE,
446 l_ref_Check_rec.SEEDED_FLAG,
447 l_ref_Check_rec.SELECT_TYPE,
448 l_ref_Check_rec.SELECT_BLOCK_ID,
449 l_ref_Check_rec.DATA_TYPE,
450 l_ref_Check_rec.FORMAT_MASK,
451 l_ref_Check_rec.THRESHOLD_GRADE,
452 l_ref_Check_rec.THRESHOLD_RATING_CODE,
453 l_ref_Check_rec.CHECK_UPPER_LOWER_FLAG,
454 l_ref_Check_rec.THRESHOLD_COLOR_CODE,
455 l_ref_Check_rec.CHECK_LEVEL,
456 l_ref_Check_rec.CREATED_BY,
457 l_ref_Check_rec.CREATION_DATE,
458 l_ref_Check_rec.LAST_UPDATED_BY,
459 l_ref_Check_rec.LAST_UPDATE_DATE,
460 l_ref_Check_rec.LAST_UPDATE_LOGIN,
461 l_ref_Check_rec.OBJECT_VERSION_NUMBER,
462 l_ref_Check_rec.APPLICATION_ID;
463
464 If ( C_Get_check%NOTFOUND) Then
465 close C_Get_Check;
466 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
467 THEN
468 CSC_CORE_UTILS_PVT.RECORD_IS_LOCKED_MSG(p_Api_Name => l_api_name);
469 --FND_MESSAGE.Set_Name('CSC', 'API_MISSING_UPDATE_TARGET');
470 --FND_MESSAGE.Set_Token ('INFO', 'CHECK', FALSE);
471 --FND_MSG_PUB.Add;
472 END IF;
473 raise FND_API.G_EXC_ERROR;
474 END IF;
475 IF C_Get_Check%ISOPEN THEN
476 CLOSE C_Get_Check;
477 END IF;
478
479 IF ( P_validation_level >= FND_API.G_VALID_LEVEL_FULL)
480 THEN
481
482 -- Invoke validation procedures
483 Validate_check(
484 p_init_msg_list => FND_API.G_FALSE,
485 p_validation_level => p_validation_level,
486 p_validation_mode => CSC_CORE_UTILS_PVT.G_UPDATE,
487 P_Check_Rec => P_Check_Rec,
488 x_return_status => x_return_status,
489 x_msg_count => x_msg_count,
490 x_msg_data => x_msg_data);
491 END IF;
492
493 IF x_return_status<>FND_API.G_RET_STS_SUCCESS THEN
494 RAISE FND_API.G_EXC_ERROR;
495 END IF;
496
497
498 -- Invoke table handler(CS_PROF_CHECKS_PKG.Update_Row)
499 CSC_PROF_CHECKS_PKG.Update_Row(
500 p_CHECK_ID => csc_core_utils_pvt.get_g_miss_num(p_Check_rec.CHECK_ID,l_ref_Check_rec.CHECK_ID),
501 p_CHECK_NAME => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.CHECK_NAME,l_ref_Check_rec.CHECK_NAME),
502 p_CHECK_NAME_CODE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.CHECK_NAME_CODE,l_ref_Check_rec.CHECK_NAME_CODE),
503 p_DESCRIPTION => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.DESCRIPTION,l_ref_Check_rec.DESCRIPTION),
504 p_START_DATE_ACTIVE => csc_core_utils_pvt.get_g_miss_date(p_Check_rec.START_DATE_ACTIVE,l_ref_Check_rec.START_DATE_ACTIVE),
505 p_END_DATE_ACTIVE => csc_core_utils_pvt.get_g_miss_date(p_Check_rec.END_DATE_ACTIVE,l_ref_Check_rec.END_DATE_ACTIVE),
506 p_SEEDED_FLAG => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.SEEDED_FLAG,l_ref_Check_rec.SEEDED_FLAG),
507 p_SELECT_TYPE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.SELECT_TYPE,l_ref_Check_rec.SELECT_TYPE),
508 p_SELECT_BLOCK_ID => csc_core_utils_pvt.get_g_miss_num(p_Check_rec.SELECT_BLOCK_ID,l_ref_Check_rec.SELECT_BLOCK_ID),
509 p_DATA_TYPE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.DATA_TYPE,l_ref_Check_rec.DATA_TYPE),
510 p_FORMAT_MASK => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.FORMAT_MASK,l_ref_Check_rec.FORMAT_MASK),
511 p_THRESHOLD_GRADE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.THRESHOLD_GRADE,l_ref_Check_rec.THRESHOLD_GRADE),
512 p_THRESHOLD_RATING_CODE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.THRESHOLD_RATING_CODE,l_ref_Check_rec.THRESHOLD_RATING_CODE),
513 p_CHECK_UPPER_LOWER_FLAG => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.CHECK_UPPER_LOWER_FLAG,l_ref_Check_rec.CHECK_UPPER_LOWER_FLAG),
514 p_THRESHOLD_COLOR_CODE => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.THRESHOLD_COLOR_CODE,l_ref_Check_rec.THRESHOLD_COLOR_CODE),
515 p_CHECK_LEVEL => csc_core_utils_pvt.get_g_miss_char(p_Check_rec.CHECK_LEVEL,l_ref_Check_rec.CHECK_LEVEL),
516 p_LAST_UPDATED_BY => FND_GLOBAL.USER_ID,
517 p_LAST_UPDATE_DATE => SYSDATE,
518 p_LAST_UPDATE_LOGIN => p_Check_rec.LAST_UPDATE_LOGIN,
519 px_OBJECT_VERSION_NUMBER => px_OBJECT_VERSION_NUMBER,
520 p_APPLICATION_ID => csc_core_utils_pvt.get_g_miss_num(p_Check_rec.APPLICATION_ID,l_ref_Check_rec.APPLICATION_ID));
521
522 --
523 -- End of API body.
524 --
525
526 -- Standard check for p_commit
527 IF FND_API.to_Boolean( p_commit )
528 THEN
529 COMMIT WORK;
530 END IF;
531
532
533 -- Standard call to get message count and if count is 1, get message info.
534 FND_MSG_PUB.Count_And_Get
535 ( p_count => x_msg_count,
536 p_data => x_msg_data
537 );
538
539 EXCEPTION
540 WHEN FND_API.G_EXC_ERROR THEN
541 ROLLBACK TO Update_Profile_check_PVT;
542 x_return_status := FND_API.G_RET_STS_ERROR;
543 FND_MSG_PUB.Count_And_Get
544 ( p_encoded => FND_API.G_FALSE,p_count => x_msg_count,
545 p_data => x_msg_data
546 );
547 APP_EXCEPTION.RAISE_EXCEPTION;
548 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
549 ROLLBACK TO Update_Profile_check_PVT;
550 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
551 FND_MSG_PUB.Count_And_Get
552 ( p_count => x_msg_count,
553 p_data => x_msg_data
554 );
555 APP_EXCEPTION.RAISE_EXCEPTION;
556 WHEN OTHERS THEN
557 ROLLBACK TO Update_Profile_check_PVT;
558 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
559 FND_MSG_PUB.Build_Exc_Msg(G_PKG_NAME, l_api_name);
560 FND_MSG_PUB.Count_And_Get
561 ( p_count => x_msg_count,
562 p_data => x_msg_data
563 );
564 APP_EXCEPTION.RAISE_EXCEPTION;
565 End Update_Profile_check;
566
567 PROCEDURE Delete_profile_check(
568 P_Api_Version_Number IN NUMBER,
569 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
570 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
571 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
572 p_Check_Id IN NUMBER,
573 p_OBJECT_VERSION_NUMBER IN NUMBER,
574 X_Return_Status OUT NOCOPY VARCHAR2,
575 X_Msg_Count OUT NOCOPY NUMBER,
576 X_Msg_Data OUT NOCOPY VARCHAR2
577 )
578
579 IS
580 l_api_name CONSTANT VARCHAR2(30) := 'Delete_profile_check';
581 l_api_version_number CONSTANT NUMBER := 1.0;
582 BEGIN
583 -- Standard Start of API savepoint
584 SAVEPOINT DELETE_Profile_Checks_PVT;
585
586 -- Standard call to check for call compatibility.
587 IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
588 p_api_version_number,
589 l_api_name,
590 G_PKG_NAME)
591 THEN
592 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
593 END IF;
594
595
596 -- Initialize message list if p_init_msg_list is set to TRUE.
597 IF FND_API.to_Boolean( p_init_msg_list )
598 THEN
599 FND_MSG_PUB.initialize;
600 END IF;
601
602
603
604 -- Initialize API return status to SUCCESS
605 x_return_status := FND_API.G_RET_STS_SUCCESS;
606
607 --
608 -- Api body
609 --
610 -- Invoke table handler(CSC_PROF_CHECKS_B_PKG.Delete_Row)
611 CSC_PROF_CHECKS_PKG.Delete_Row(
612 p_CHECK_ID => p_CHECK_ID,
613 p_OBJECT_VERSION_NUMBER => p_OBJECT_VERSION_NUMBER );
614 --
615 -- End of API body
616 --
617
618 -- Standard check for p_commit
619 IF FND_API.to_Boolean( p_commit )
620 THEN
621 COMMIT WORK;
622 END IF;
623
624
625 -- Standard call to get message count and if count is 1, get message info.
626 FND_MSG_PUB.Count_And_Get
627 ( p_count => x_msg_count,
628 p_data => x_msg_data
629 );
630
631 EXCEPTION
632 WHEN FND_API.G_EXC_ERROR THEN
633 ROLLBACK TO DELETE_Profile_Checks_PVT;
634 x_return_status := FND_API.G_RET_STS_ERROR;
635 FND_MSG_PUB.Count_And_Get( p_encoded => FND_API.G_FALSE,p_count => x_msg_count,
636 p_data => x_msg_data
637 );
638 APP_EXCEPTION.RAISE_EXCEPTION;
639 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
640 ROLLBACK TO DELETE_Profile_Checks_PVT;
641 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
642 FND_MSG_PUB.Count_And_Get( p_count => x_msg_count,
643 p_data => x_msg_data
644 );
645 APP_EXCEPTION.RAISE_EXCEPTION;
646 WHEN OTHERS THEN
647 ROLLBACK TO DELETE_Profile_Checks_PVT;
648 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
649 FND_MSG_PUB.Build_Exc_Msg(G_PKG_NAME, l_api_name);
650 FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,
651 p_data => x_msg_data
652 );
653 APP_EXCEPTION.RAISE_EXCEPTION;
654 End Delete_profile_check;
655
656
657
658 PROCEDURE Validate_CHECK_NAME (
659 p_Api_Name IN VARCHAR2,
660 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
661 P_Validation_mode IN VARCHAR2,
662 P_CHECK_NAME IN VARCHAR2,
663 P_check_id IN NUMBER,
664 X_Return_Status OUT NOCOPY VARCHAR2
665 )
666 IS
667 Cursor C2 is
668 Select check_id
669 from csc_prof_checks_tl
670 where check_name = p_check_name
671 and language = userenv('LANG');
672 --local variables
673 l_dummy NUMBER;
674 BEGIN
675
676 -- Initialize API return status to SUCCESS
677 x_return_status := FND_API.G_RET_STS_SUCCESS;
678
679 -- Initialize message list if p_init_msg_list is set to TRUE.
680 IF FND_API.to_Boolean( p_init_msg_list )
681 THEN
682 FND_MSG_PUB.initialize;
683 END IF;
684
685 -- validate NOT NULL column
686 IF (p_CHECK_NAME is NULL)
687 THEN
688 --Mandatory argument error..
689 x_return_status := FND_API.G_RET_STS_ERROR;
690 CSC_CORE_UTILS_PVT.mandatory_arg_error(
691 p_api_name => p_api_name,
692 p_argument => 'p_check_name',
693 p_argument_value => p_check_name);
694 END IF;
695
696 IF(p_validation_mode = G_CREATE)
697 THEN
698 -- IF p_CHECK_NAME is not NULL and p_CHECK_NAME <> G_MISS_CHAR
699 -- verify if data is valid
700 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
701 IF (p_check_name is not NULL and p_CHECK_NAME <> CSC_CORE_UTILS_PVT.G_MISS_CHAR)
702 THEN
703 Open C2;
704 Fetch C2 into l_dummy;
705 IF C2%FOUND THEN
706 x_return_status := FND_API.G_RET_STS_ERROR;
707 CSC_CORE_UTILS_PVT.Add_Duplicate_Value_Msg(
708 p_api_name => p_api_name,
709 p_argument => 'p_check_name' ,
710 p_argument_value => p_check_name);
711 END IF;
712 Close C2;
713 ELSE
714 x_return_status := FND_API.G_RET_STS_ERROR;
715 CSC_CORE_UTILS_PVT.mandatory_arg_error(
716 p_api_name => p_api_name,
717 p_argument => 'p_check_name',
718 p_argument_value => p_check_name);
719
720 END IF;
721 ELSIF(p_validation_mode = G_UPDATE)
722 THEN
723 -- if the check name is passed in and as NULL then
724 -- its a mandatory argument error.
725 if ( p_check_name IS NULL ) then
726 x_return_status := FND_API.G_RET_STS_ERROR;
727 CSC_CORE_UTILS_PVT.mandatory_arg_error(
728 p_api_name => p_api_name,
729 p_argument => 'p_check_name',
730 p_argument_value => p_check_name);
731 -- IF p_CHECK_NAME <> G_MISS_CHAR
732 -- verify if data is valid
733 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
734 ELSIF p_CHECK_NAME <> CSC_CORE_UTILS_PVT.G_MISS_CHAR
735 THEN
736 Open C2;
737 Loop
738 Fetch C2 into l_dummy;
739 IF (l_dummy <> p_Check_id) THEN
740 x_return_status := FND_API.G_RET_STS_ERROR;
741 CSC_CORE_UTILS_PVT.mandatory_arg_error(
742 p_api_name => p_api_name,
743 p_argument => 'p_check_name',
744 p_argument_value => p_check_name);
745 exit;
746 else
747 exit;
748 END IF;
749 End Loop;
750 Close C2;
751 END IF;
752 END IF;
753
754 END Validate_CHECK_NAME;
755
756
757 PROCEDURE Validate_CHECK_NAME_CODE (
758 P_Api_Name IN VARCHAR2,
759 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
760 P_Validation_mode IN VARCHAR2,
761 P_CHECK_NAME_CODE IN VARCHAR2,
762 P_check_id IN NUMBER,
763 X_Return_Status OUT NOCOPY VARCHAR2,
764 X_Msg_Count OUT NOCOPY NUMBER,
765 X_Msg_Data OUT NOCOPY VARCHAR2
766 )
767 IS
768 Cursor C2 is
769 Select check_id
770 from csc_prof_checks_b
771 where check_name_code = p_check_name_code;
772 --local variables
773 l_dummy NUMBER;
774 BEGIN
775
776 -- Initialize message list if p_init_msg_list is set to TRUE.
777 IF FND_API.to_Boolean( p_init_msg_list )
778 THEN
779 FND_MSG_PUB.initialize;
780 END IF;
781
782
783 -- Initialize API return status to SUCCESS
784 x_return_status := FND_API.G_RET_STS_SUCCESS;
785
786
787 -- validate NOT NULL column
788 IF (p_CHECK_NAME_CODE is NULL)
789 THEN
790 --Mandatory argument error..
791 x_return_status := FND_API.G_RET_STS_ERROR;
792 CSC_CORE_UTILS_PVT.mandatory_arg_error(
793 p_api_name => p_api_name,
794 p_argument => 'p_check_name_code',
795 p_argument_value => p_check_name_code);
796 END IF;
797
798 IF(p_validation_mode = G_CREATE)
799 THEN
800 -- Hint: Validate data
801 -- IF p_CHECK_NAME_CODE is not NULL and p_CHECK_NAME_CODE <> G_MISS_CHAR
802 -- verify if data is valid
803 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
804 IF (p_CHECK_NAME_CODE is not NULL and p_CHECK_NAME_CODE <> CSC_CORE_UTILS_PVT.G_MISS_CHAR)
805 THEN
806 Open C2;
807 Fetch C2 into l_dummy;
808 IF C2%FOUND THEN
809 x_return_status := FND_API.G_RET_STS_ERROR;
810 CSC_CORE_UTILS_PVT.Add_Duplicate_Value_Msg(
811 p_api_name => p_api_name,
812 p_argument => 'p_check_name_code' ,
813 p_argument_value => p_check_name_code);
814 END IF;
815 Close C2;
816 ELSE
817 x_return_status := FND_API.G_RET_STS_ERROR;
818 CSC_CORE_UTILS_PVT.mandatory_arg_error(
819 p_api_name => p_api_name,
820 p_argument => 'p_check_name_code',
821 p_argument_value => p_check_name_code);
822
823 END IF;
824 ELSIF(p_validation_mode = G_UPDATE)
825 THEN
826 -- if the check name code is passed in and as NULL then
827 -- its a mandatory argument error.
828 if ( p_check_name_code IS NULL ) then
829 x_return_status := FND_API.G_RET_STS_ERROR;
830 CSC_CORE_UTILS_PVT.mandatory_arg_error(
831 p_api_name => p_api_name,
832 p_argument => 'p_check_name_code',
833 p_argument_value => p_check_name_code);
834 -- Hint: Validate data
835 -- IF p_CHECK_NAME_CODE <> G_MISS_CHAR
836 -- verify if data is valid
837 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
838 ELSIF p_CHECK_NAME_CODE <> CSC_CORE_UTILS_PVT.G_MISS_CHAR
839 THEN
840 Open C2;
841 Loop
842 Fetch C2 into l_dummy;
843 IF (l_dummy <> p_Check_id) THEN
844 x_return_status := FND_API.G_RET_STS_ERROR;
845 CSC_CORE_UTILS_PVT.mandatory_arg_error(
846 p_api_name => p_api_name,
847 p_argument => 'p_check_name_code',
848 p_argument_value => p_check_name_code);
849 exit;
850 else
851 exit;
852 END IF;
853 End Loop;
854 Close C2;
855 END IF;
856 END IF;
857
858 END Validate_CHECK_NAME_CODE;
859
860
861 PROCEDURE Validate_START_END_DATE(
862 P_Api_Name IN VARCHAR2,
863 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
864 P_Validation_mode IN VARCHAR2,
865 P_START_DATE_ACTIVE IN DATE,
866 P_END_DATE IN DATE,
867 X_Return_Status OUT NOCOPY VARCHAR2,
868 X_Msg_Count OUT NOCOPY NUMBER,
869 X_Msg_Data OUT NOCOPY VARCHAR2
870 )
871 IS
872 BEGIN
873
874 -- Initialize message list if p_init_msg_list is set to TRUE.
875 IF FND_API.to_Boolean( p_init_msg_list )
876 THEN
877 FND_MSG_PUB.initialize;
878 END IF;
879
880
881 -- Initialize API return status to SUCCESS
882 x_return_status := FND_API.G_RET_STS_SUCCESS;
883
884 CSC_CORE_UTILS_PVT.Validate_Start_End_Dt
885 ( p_api_name => p_Api_name,
886 p_start_date => p_start_date_active,
887 p_end_date => p_end_date,
888 x_return_status => x_return_status );
889 IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
890 x_return_status := FND_API.G_RET_STS_ERROR;
891 END IF;
892
893 -- Standard call to get message count and if count is 1, get message info.
894 FND_MSG_PUB.Count_And_Get
895 ( p_count => x_msg_count,
896 p_data => x_msg_data
897 );
898
899 END Validate_START_END_DATE;
900
901
902 PROCEDURE Validate_SEEDED_FLAG (
903 P_Api_Name IN VARCHAR2,
904 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
905 P_Validation_mode IN VARCHAR2,
906 P_SEEDED_FLAG IN VARCHAR2,
907 X_Return_Status OUT NOCOPY VARCHAR2,
908 X_Msg_Count OUT NOCOPY NUMBER,
909 X_Msg_Data OUT NOCOPY VARCHAR2
910 )
911 IS
912 BEGIN
913
914 -- Initialize message list if p_init_msg_list is set to TRUE.
915 IF FND_API.to_Boolean( p_init_msg_list )
916 THEN
917 FND_MSG_PUB.initialize;
918 END IF;
919
920
921 -- Initialize API return status to SUCCESS
922 x_return_status := FND_API.G_RET_STS_SUCCESS;
923
924
925
926 -- Check if the seeded flag is passed in and is not null, if passed in
927 -- check if the lookup code exists in fnd lookups for this date, if not
928 -- its an invalid argument.
929 IF (( p_seeded_flag <> CSC_CORE_UTILS_PVT.G_MISS_CHAR ) AND ( p_seeded_flag IS NOT NULL ))
930 THEN
931 IF CSC_CORE_UTILS_PVT.lookup_code_not_exists(
932 p_effective_date => trunc(sysdate),
933 p_lookup_type => 'YES_NO',
934 p_lookup_code => p_seeded_flag ) <> FND_API.G_RET_STS_SUCCESS
935 THEN
936 x_return_status := FND_API.G_RET_STS_ERROR;
937 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
938 p_api_name => p_api_name,
939 p_argument_value => p_seeded_flag,
940 p_argument => 'p_seeded_flag');
941 END IF;
942 END IF;
943
944 -- Standard call to get message count and if count is 1, get message info.
945 FND_MSG_PUB.Count_And_Get
946 ( p_count => x_msg_count,
947 p_data => x_msg_data
948 );
949
950 END Validate_SEEDED_FLAG;
951
952 PROCEDURE Validate_check_level
953 ( p_api_name IN VARCHAR2,
954 p_parameter_name IN VARCHAR2,
955 p_check_level IN VARCHAR2,
956 x_return_status OUT NOCOPY VARCHAR2
957 ) IS
958 --
959 BEGIN
960 --
961 x_return_status := FND_API.G_RET_STS_SUCCESS;
962
963 -- check if the check_level is passed in and is not
964 -- null
965
966 IF (( p_check_level <> CSC_CORE_UTILS_PVT.G_MISS_CHAR ) AND
967 ( p_check_level IS NOT NULL )) THEN
968 -- Commented the Following condition for ER#8473903
969 -- IF (p_check_level <> 'PARTY' AND p_check_level <> 'ACCOUNT'AND p_check_level <> 'CONTACT' AND p_check_level <> 'EMPLOYEE')
970 IF (p_check_level <> 'PARTY' AND p_check_level <> 'ACCOUNT'AND p_check_level <> 'CONTACT' AND p_check_level <> 'EMPLOYEE' AND p_check_level<> 'SITE') -- Included the 'SITE' for NCR ER#8473903
971 THEN
972 x_return_status := FND_API.G_RET_STS_ERROR;
973 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(p_api_name => p_api_name,
974 p_argument_value => p_check_level,
975 p_argument => p_parameter_name);
976 END IF;
977 END IF;
978 END Validate_check_Level;
979
980
981
982 PROCEDURE Validate_SELECT_TYPE (
983 p_Api_Name IN VARCHAR2,
984 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
985 P_Validation_mode IN VARCHAR2,
986 P_SELECT_TYPE IN VARCHAR2,
987 X_Return_Status OUT NOCOPY VARCHAR2,
988 X_Msg_Count OUT NOCOPY NUMBER,
989 X_Msg_Data OUT NOCOPY VARCHAR2
990 )
991 IS
992 BEGIN
993
994 -- Initialize message list if p_init_msg_list is set to TRUE.
995 IF FND_API.to_Boolean( p_init_msg_list )
996 THEN
997 FND_MSG_PUB.initialize;
998 END IF;
999
1000
1001 -- Initialize API return status to SUCCESS
1002 x_return_status := FND_API.G_RET_STS_SUCCESS;
1003
1004
1005 IF NOT p_select_type in ('B','T') THEN
1006 x_return_status := FND_API.G_RET_STS_ERROR;
1007 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1008 p_api_name => p_api_name,
1009 p_argument => 'P_SELECT_TYPE',
1010 p_argument_value => p_select_type);
1011 END IF;
1012
1013
1014 -- Standard call to get message count and if count is 1, get message info.
1015 FND_MSG_PUB.Count_And_Get
1016 ( p_count => x_msg_count,
1017 p_data => x_msg_data
1018 );
1019
1020 END Validate_SELECT_TYPE;
1021
1022
1023 PROCEDURE Validate_SELECT_BLOCK_ID (
1024 P_Api_Name IN VARCHAR2,
1025 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1026 P_Validation_mode IN VARCHAR2,
1027 P_SELECT_BLOCK_ID IN NUMBER,
1028 P_SELECT_TYPE IN VARCHAR2,
1029 X_Return_Status OUT NOCOPY VARCHAR2,
1030 X_Msg_Count OUT NOCOPY NUMBER,
1031 X_Msg_Data OUT NOCOPY VARCHAR2
1032 )
1033 IS
1034 Cursor C2 is
1035 Select NULL
1036 from csc_prof_blocks_b
1037 where block_id = p_select_block_id;
1038
1039 l_dummy number;
1040 BEGIN
1041
1042 -- Initialize message list if p_init_msg_list is set to TRUE.
1043 IF FND_API.to_Boolean( p_init_msg_list )
1044 THEN
1045 FND_MSG_PUB.initialize;
1046 END IF;
1047
1048
1049 -- Initialize API return status to SUCCESS
1050 x_return_status := FND_API.G_RET_STS_SUCCESS;
1051
1052 IF p_SELECT_TYPE = 'B' THEN
1053 -- validate NOT NULL column
1054 IF(p_SELECT_BLOCK_ID is NULL)
1055 THEN
1056 -- Mandatory argument error..
1057 x_return_status := FND_API.G_RET_STS_ERROR;
1058 CSC_CORE_UTILS_PVT.mandatory_arg_error(
1059 p_api_name => p_api_name,
1060 p_argument => 'p_select_block_id',
1061 p_argument_value => p_select_block_id);
1062 END IF;
1063 ELSE
1064 IF (p_SELECT_BLOCK_ID IS NOT NULL) AND (p_SELECT_BLOCK_ID <> CSC_CORE_UTILS_PVT.G_MISS_NUM)
1065 THEN
1066 x_return_status := FND_API.G_RET_STS_ERROR;
1067 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1068 p_api_name => p_api_name,
1069 p_argument_value => p_select_block_id,
1070 p_argument => 'p_select_block_id');
1071 END IF;
1072 END IF;
1073
1074 IF(p_validation_mode = G_CREATE)
1075 THEN
1076 -- Hint: Validate data
1077 -- IF p_SELECT_BLOCK_ID is not NULL and p_SELECT_BLOCK_ID <> G_MISS_CHAR
1078 -- verify if data is valid
1079 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1080 IF p_SELECT_TYPE = 'B' THEN
1081 IF (p_SELECT_BLOCK_ID <> CSC_CORE_UTILS_PVT.G_MISS_NUM)
1082 THEN
1083 Open C2;
1084 Fetch C2 into l_dummy;
1085 IF C2%NOTFOUND THEN
1086 x_return_status := FND_API.G_RET_STS_ERROR;
1087
1088 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1089 p_api_name => p_api_name,
1090 p_argument_value => p_select_block_id,
1091 p_argument => 'p_select_block_id');
1092
1093 END IF;
1094 Close C2;
1095 ELSE
1096 x_return_status := FND_API.G_RET_STS_ERROR;
1097 CSC_CORE_UTILS_PVT.mandatory_arg_error(
1098 p_api_name => p_api_name,
1099 p_argument => 'p_select_block_id',
1100 p_argument_value => p_select_block_id);
1101
1102 END IF;
1103 END IF;
1104 ELSIF(p_validation_mode = G_UPDATE)
1105 THEN
1106 -- if the select block id is passed in and as NULL then
1107 -- its a mandatory argument error.
1108 -- added the outer if condition to fix the bug 1563264
1109 IF(p_SELECT_TYPE = 'B') THEN
1110 if ( p_select_block_id IS NULL ) then
1111 x_return_status := FND_API.G_RET_STS_ERROR;
1112 CSC_CORE_UTILS_PVT.mandatory_arg_error(
1113 p_api_name => p_api_name,
1114 p_argument => 'p_select_block_id',
1115 p_argument_value => p_select_block_id);
1116 -- Hint: Validate data
1117 -- IF p_SELECT_BLOCK_ID <> G_MISS_NUM
1118 -- verify if data is valid
1119 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1120 ELSIF p_SELECT_BLOCK_ID <> CSC_CORE_UTILS_PVT.G_MISS_NUM
1121 THEN
1122 Open C2;
1123 Loop
1124 Fetch C2 into l_dummy;
1125 IF C2%NOTFOUND THEN
1126 x_return_status := FND_API.G_RET_STS_ERROR;
1127 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1128 p_api_name => p_api_name,
1129 p_argument_value => p_select_block_id,
1130 p_argument => 'p_select_block_id');
1131 exit;
1132 else
1133 exit;
1134 END IF;
1135 End Loop;
1136 Close C2;
1137 END IF;
1138 END IF;
1139 END IF;
1140
1141 -- Standard call to get message count and if count is 1, get message info.
1142 FND_MSG_PUB.Count_And_Get
1143 ( p_count => x_msg_count,
1144 p_data => x_msg_data
1145 );
1146
1147 END Validate_SELECT_BLOCK_ID;
1148
1149
1150 PROCEDURE Validate_DATA_TYPE (
1151 p_Api_Name IN VARCHAR2,
1152 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1153 P_Validation_mode IN VARCHAR2,
1154 P_DATA_TYPE IN VARCHAR2,
1155 X_Return_Status OUT NOCOPY VARCHAR2,
1156 X_Msg_Count OUT NOCOPY NUMBER,
1157 X_Msg_Data OUT NOCOPY VARCHAR2
1158 )
1159 IS
1160 BEGIN
1161
1162 -- Initialize message list if p_init_msg_list is set to TRUE.
1163 IF FND_API.to_Boolean( p_init_msg_list )
1164 THEN
1165 FND_MSG_PUB.initialize;
1166 END IF;
1167
1168
1169 -- Initialize API return status to SUCCESS
1170 x_return_status := FND_API.G_RET_STS_SUCCESS;
1171
1172
1173 IF p_DATA_TYPE is not NULL and p_DATA_TYPE <> CSC_CORE_UTILS_PVT.G_MISS_CHAR
1174 THEN
1175 -- Added 'BOOLEAN' in the IN CLAUSE . Bug #1231208
1176 IF NOT p_DATA_TYPE IN ('NUMBER','VARCHAR2','DATE', 'BOOLEAN') THEN
1177 x_return_status := FND_API.G_RET_STS_ERROR;
1178 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1179 p_api_name => p_api_name,
1180 p_argument_value => p_data_type,
1181 p_argument => 'P_DATA_TYPE');
1182
1183 END IF;
1184
1185 END IF;
1186
1187 -- Standard call to get message count and if count is 1, get message info.
1188 FND_MSG_PUB.Count_And_Get
1189 ( p_count => x_msg_count,
1190 p_data => x_msg_data
1191 );
1192
1193 END Validate_DATA_TYPE;
1194
1195 PROCEDURE Validate_THRESHOLD_GRADE (
1196 p_Api_Name IN VARCHAR2,
1197 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1198 P_Validation_mode IN VARCHAR2,
1199 P_THRESHOLD_GRADE IN VARCHAR2,
1200 X_Return_Status OUT NOCOPY VARCHAR2,
1201 X_Msg_Count OUT NOCOPY NUMBER,
1202 X_Msg_Data OUT NOCOPY VARCHAR2
1203 )
1204 IS
1205 BEGIN
1206
1207 -- Initialize message list if p_init_msg_list is set to TRUE.
1208 IF FND_API.to_Boolean( p_init_msg_list )
1209 THEN
1210 FND_MSG_PUB.initialize;
1211 END IF;
1212
1213
1214 -- Initialize API return status to SUCCESS
1215 x_return_status := FND_API.G_RET_STS_SUCCESS;
1216
1217 -- IF p_THRESHOLD_GRADE is not NULL and p_THRESHOLD_GRADE <> G_MISS_CHAR
1218 -- verify if data is valid
1219 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1220
1221
1222 IF(p_validation_mode = CSC_CORE_UTILS_PVT.G_CREATE)
1223 THEN
1224 -- Hint: Validate data
1225 -- IF p_THRESHOLD_GRADE is not NULL and p_THRESHOLD_GRADE <> G_MISS_CHAR
1226 -- verify if data is valid
1227 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1228 NULL;
1229 ELSIF(p_validation_mode = CSC_CORE_UTILS_PVT.G_UPDATE)
1230 THEN
1231 -- Hint: Validate data
1232 -- IF p_THRESHOLD_GRADE <> G_MISS_CHAR
1233 -- verify if data is valid
1234 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1235 NULL;
1236 END IF;
1237
1238 -- Standard call to get message count and if count is 1, get message info.
1239 FND_MSG_PUB.Count_And_Get
1240 ( p_count => x_msg_count,
1241 p_data => x_msg_data
1242 );
1243
1244 END Validate_THRESHOLD_GRADE;
1245
1246
1247 PROCEDURE Validate_THRESHOLD_RATING_CODE (
1248 p_Api_Name IN VARCHAR2,
1249 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1250 P_Validation_mode IN VARCHAR2,
1251 P_THRESHOLD_RATING_CODE IN VARCHAR2,
1252 X_Return_Status OUT NOCOPY VARCHAR2,
1253 X_Msg_Count OUT NOCOPY NUMBER,
1254 X_Msg_Data OUT NOCOPY VARCHAR2
1255 )
1256 IS
1257 BEGIN
1258
1259 -- Initialize message list if p_init_msg_list is set to TRUE.
1260 IF FND_API.to_Boolean( p_init_msg_list )
1261 THEN
1262 FND_MSG_PUB.initialize;
1263 END IF;
1264
1265 -- Initialize API return status to SUCCESS
1266 x_return_status := FND_API.G_RET_STS_SUCCESS;
1267
1268 -- Hint: Validate data
1269 -- IF p_THRESHOLD_RATING_CODE is not NULL and p_THRESHOLD_RATING_CODE <> G_MISS_CHAR
1270 -- verify if data is valid
1271 -- if data is not valid : x_return_status := FND_API.G_RET_STS_ERROR;
1272 IF (p_THRESHOLD_RATING_CODE is NOT NULL) AND (p_THRESHOLD_RATING_CODE <> CSC_CORE_UTILS_PVT.G_MISS_CHAR)
1273 THEN
1274 IF CSC_CORE_UTILS_PVT.csc_lookup_code_not_exists(
1275 p_effective_date => trunc(sysdate),
1276 p_lookup_type => 'CSC_PROF_RATINGS',
1277 p_lookup_Code => p_threshold_rating_code ) <> FND_API.G_RET_STS_SUCCESS
1278 THEN
1279 x_return_status := FND_API.G_RET_STS_ERROR;
1280 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1281 p_api_name=> p_api_name,
1282 p_argument_value => p_threshold_rating_code,
1283 p_argument=>'P_RATING_CODE' );
1284 END IF;
1285 END IF;
1286
1287 -- Standard call to get message count and if count is 1, get message info.
1288 FND_MSG_PUB.Count_And_Get
1289 ( p_count => x_msg_count,
1290 p_data => x_msg_data
1291 );
1292
1293 END Validate_THRESHOLD_RATING_CODE;
1294
1295
1296 PROCEDURE Validate_UPPER_LOWER_FLAG (
1297 p_Api_Name IN VARCHAR2,
1298 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1299 P_Validation_mode IN VARCHAR2,
1300 P_CHECK_UPPER_LOWER_FLAG IN VARCHAR2,
1301 X_Return_Status OUT NOCOPY VARCHAR2,
1302 X_Msg_Count OUT NOCOPY NUMBER,
1303 X_Msg_Data OUT NOCOPY VARCHAR2
1304 )
1305 IS
1306 BEGIN
1307
1308 -- Initialize message list if p_init_msg_list is set to TRUE.
1309 IF FND_API.to_Boolean( p_init_msg_list )
1310 THEN
1311 FND_MSG_PUB.initialize;
1312 END IF;
1313
1314
1315 -- Initialize API return status to SUCCESS
1316 x_return_status := FND_API.G_RET_STS_SUCCESS;
1317
1318 IF p_CHECK_UPPER_LOWER_FLAG NOT IN ('U','L') THEN
1319 x_return_status := FND_API.G_RET_STS_ERROR;
1320 CSC_CORE_UTILS_PVT.Add_Invalid_Argument_Msg(
1321 p_api_name => p_api_name,
1322 p_argument_value => p_check_upper_lower_flag,
1323 p_argument => 'P_CHECK_UPPER_LOWER_FLAG');
1324 END IF;
1325 -- Standard call to get message count and if count is 1, get message info.
1326 FND_MSG_PUB.Count_And_Get
1327 ( p_count => x_msg_count,
1328 p_data => x_msg_data
1329 );
1330
1331 END Validate_UPPER_LOWER_FLAG;
1332
1333
1334 PROCEDURE Validate_THRESHOLD_COLOR_CODE (
1335 p_Api_Name IN VARCHAR2,
1336 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1337 P_Validation_mode IN VARCHAR2,
1338 P_THRESHOLD_COLOR_CODE IN VARCHAR2,
1339 X_Return_Status OUT NOCOPY VARCHAR2,
1340 X_Msg_Count OUT NOCOPY NUMBER,
1341 X_Msg_Data OUT NOCOPY VARCHAR2
1342 )
1343 IS
1344 BEGIN
1345
1346 -- Initialize message list if p_init_msg_list is set to TRUE.
1347 IF FND_API.to_Boolean( p_init_msg_list )
1348 THEN
1349 FND_MSG_PUB.initialize;
1350 END IF;
1351
1352
1353 -- Initialize API return status to SUCCESS
1354 x_return_status := FND_API.G_RET_STS_SUCCESS;
1355
1356 NULL;
1357
1358 -- Standard call to get message count and if count is 1, get message info.
1359 FND_MSG_PUB.Count_And_Get
1360 ( p_count => x_msg_count,
1361 p_data => x_msg_data
1362 );
1363
1364 END Validate_THRESHOLD_COLOR_CODE;
1365
1366 /*
1367 PROCEDURE Validate_CATEGORY_CODE (
1368 p_Api_Name IN VARCHAR2,
1369 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1370 P_Validation_mode IN VARCHAR2,
1371 P_CATEGORY_CODE IN VARCHAR2,
1372 X_Return_Status OUT VARCHAR2,
1373 X_Msg_Count OUT NUMBER,
1374 X_Msg_Data OUT VARCHAR2
1375 )
1376 IS
1377 BEGIN
1378
1379 -- Initialize message list if p_init_msg_list is set to TRUE.
1380 IF FND_API.to_Boolean( p_init_msg_list )
1381 THEN
1382 FND_MSG_PUB.initialize;
1383 END IF;
1384
1385
1386 -- Initialize API return status to SUCCESS
1387 x_return_status := FND_API.G_RET_STS_SUCCESS;
1388
1389 NULL;
1390
1391 -- Standard call to get message count and if count is 1, get message info.
1392 FND_MSG_PUB.Count_And_Get
1393 ( p_count => x_msg_count,
1394 p_data => x_msg_data
1395 );
1396
1397 END Validate_CATEGORY_CODE;
1398 */
1399
1400
1401 PROCEDURE Validate_check(
1402 P_Init_Msg_List IN VARCHAR2 := CSC_CORE_UTILS_PVT.G_FALSE,
1403 P_Validation_level IN NUMBER := CSC_CORE_UTILS_PVT.G_VALID_LEVEL_FULL,
1404 P_Validation_mode IN VARCHAR2,
1405 P_Check_Rec IN Check_Rec_Type,
1406 X_Return_Status OUT NOCOPY VARCHAR2,
1407 X_Msg_Count OUT NOCOPY NUMBER,
1408 X_Msg_Data OUT NOCOPY VARCHAR2
1409 )
1410 IS
1411 p_api_name CONSTANT VARCHAR2(30) := 'Validate_check';
1412 BEGIN
1413
1414
1415 -- Initialize API return status to SUCCESS
1416 x_return_status := FND_API.G_RET_STS_SUCCESS;
1417
1418
1419 Validate_CHECK_NAME(
1420 p_Api_Name => p_Api_Name,
1421 p_init_msg_list => FND_API.G_FALSE,
1422 p_validation_mode => p_validation_mode,
1423 p_CHECK_NAME => P_Check_Rec.CHECK_NAME,
1424 p_CHECK_ID => P_CHECK_REC.CHECK_ID,
1425 x_return_status => x_return_status );
1426 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1427 raise FND_API.G_EXC_ERROR;
1428 END IF;
1429
1430 Validate_CHECK_NAME_CODE(
1431 p_Api_Name => p_Api_Name,
1432 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1433 p_validation_mode => p_validation_mode,
1434 p_CHECK_NAME_CODE => P_Check_Rec.CHECK_NAME_CODE,
1435 p_CHECK_ID => p_CHECK_Rec.CHECK_ID,
1436 x_return_status => x_return_status,
1437 x_msg_count => x_msg_count,
1438 x_msg_data => x_msg_data);
1439 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1440 raise FND_API.G_EXC_ERROR;
1441 END IF;
1442 -- validate start and end date
1443 CSC_CORE_UTILS_PVT.Validate_Start_End_Dt(
1444 p_api_name => p_Api_name,
1445 p_start_date => p_check_rec.start_date_active,
1446 p_end_date => p_check_rec.end_date_active,
1447 x_return_status => x_return_status );
1448
1449 IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1450 RAISE FND_API.G_EXC_ERROR;
1451 END IF;
1452
1453 Validate_SEEDED_FLAG(
1454 p_APi_Name => p_Api_Name,
1455 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1456 p_validation_mode => p_validation_mode,
1457 p_SEEDED_FLAG => P_Check_Rec.SEEDED_FLAG,
1458 x_return_status => x_return_status,
1459 x_msg_count => x_msg_count,
1460 x_msg_data => x_msg_data);
1461 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1462 raise FND_API.G_EXC_ERROR;
1463 END IF;
1464
1465 Validate_SELECT_TYPE(
1466 p_Api_Name => p_Api_Name,
1467 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1468 p_validation_mode => p_validation_mode,
1469 p_SELECT_TYPE => P_Check_Rec.SELECT_TYPE,
1470 x_return_status => x_return_status,
1471 x_msg_count => x_msg_count,
1472 x_msg_data => x_msg_data);
1473 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1474 raise FND_API.G_EXC_ERROR;
1475 END IF;
1476
1477
1478 Validate_SELECT_BLOCK_ID(
1479 p_Api_Name => p_Api_Name,
1480 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1481 p_validation_mode => p_validation_mode,
1482 p_SELECT_BLOCK_ID => P_Check_Rec.SELECT_BLOCK_ID,
1483 p_SELECT_TYPE => P_Check_Rec.SELECT_TYPE,
1484 x_return_status => x_return_status,
1485 x_msg_count => x_msg_count,
1486 x_msg_data => x_msg_data);
1487 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1488 raise FND_API.G_EXC_ERROR;
1489 END IF;
1490
1491
1492 Validate_DATA_TYPE(
1493 p_Api_Name => p_Api_Name,
1494 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1495 p_validation_mode => p_validation_mode,
1496 p_DATA_TYPE => P_Check_Rec.DATA_TYPE,
1497 x_return_status => x_return_status,
1498 x_msg_count => x_msg_count,
1499 x_msg_data => x_msg_data);
1500 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1501 raise FND_API.G_EXC_ERROR;
1502 END IF;
1503
1504
1505 Validate_THRESHOLD_GRADE(
1506 p_Api_Name => p_Api_Name,
1507 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1508 p_validation_mode => p_validation_mode,
1509 p_THRESHOLD_GRADE => P_Check_Rec.THRESHOLD_GRADE,
1510 x_return_status => x_return_status,
1511 x_msg_count => x_msg_count,
1512 x_msg_data => x_msg_data);
1513 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1514 raise FND_API.G_EXC_ERROR;
1515 END IF;
1516
1517 Validate_THRESHOLD_RATING_CODE(
1518 p_Api_Name => p_Api_Name,
1519 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1520 p_validation_mode => p_validation_mode,
1521 p_THRESHOLD_RATING_CODE => P_Check_Rec.THRESHOLD_RATING_CODE,
1522 x_return_status => x_return_status,
1523 x_msg_count => x_msg_count,
1524 x_msg_data => x_msg_data);
1525 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1526 raise FND_API.G_EXC_ERROR;
1527 END IF;
1528
1529 Validate_UPPER_LOWER_FLAG(
1530 p_Api_Name => p_Api_Name,
1531 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1532 p_validation_mode => p_validation_mode,
1533 p_CHECK_UPPER_LOWER_FLAG => P_Check_Rec.CHECK_UPPER_LOWER_FLAG,
1534 x_return_status => x_return_status,
1535 x_msg_count => x_msg_count,
1536 x_msg_data => x_msg_data);
1537 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1538 raise FND_API.G_EXC_ERROR;
1539 END IF;
1540
1541 Validate_THRESHOLD_COLOR_CODE(
1542 p_Api_Name => p_Api_Name,
1543 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1544 p_validation_mode => p_validation_mode,
1545 p_THRESHOLD_COLOR_CODE => P_Check_Rec.THRESHOLD_COLOR_CODE,
1546 x_return_status => x_return_status,
1547 x_msg_count => x_msg_count,
1548 x_msg_data => x_msg_data);
1549 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1550 raise FND_API.G_EXC_ERROR;
1551 END IF;
1552
1553 CSC_CORE_UTILS_PVT.Validate_APPLICATION_ID (
1554 P_Init_Msg_List => CSC_CORE_UTILS_PVT.G_FALSE,
1555 P_Application_ID => P_Check_Rec.application_id,
1556 p_effective_date => SYSDATE,
1557 X_Return_Status => x_return_status,
1558 X_Msg_Count => x_msg_count,
1559 X_Msg_Data => x_msg_data );
1560
1561 IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1562 RAISE FND_API.G_EXC_ERROR;
1563 END IF;
1564
1565 --Validate Check_level
1566 Validate_Check_Level(
1567 p_api_name => p_api_name,
1568 p_parameter_name => 'p_Check_Level',
1569 p_check_level => P_Check_Rec.check_level,
1570 x_return_status => x_return_status );
1571
1572 IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1573 RAISE FND_API.G_EXC_ERROR;
1574 END IF;
1575
1576 /*
1577 Validate_CATEGORY_CODE(
1578 p_Api_Name => p_Api_Name,
1579 p_init_msg_list => CSC_CORE_UTILS_PVT.G_FALSE,
1580 p_validation_mode => p_validation_mode,
1581 p_CATEGORY_CODE => P_Check_Rec.CATEGORY_CODE,
1582 x_return_status => x_return_status,
1583 x_msg_count => x_msg_count,
1584 x_msg_data => x_msg_data);
1585 IF x_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1586 raise FND_API.G_EXC_ERROR;
1587 END IF;
1588 */
1589 END Validate_check;
1590
1591 End CSC_PROFILE_CHECK_PVT;