23: WHEN no_data_found THEN
24: -- resource not exist for this user
25: FND_MESSAGE.SET_NAME ('CN','CN_USER_RESOURCE_NF');
26: FND_MSG_PUB.Add;
27: RAISE FND_API.G_EXC_ERROR;
28: END;
29: BEGIN
30: SELECT p.payrun_id,p.pay_period_id INTO x_payrun_id,x_period_id
31: FROM cn_payment_worksheets w,cn_payruns p
40: THEN
41: FND_MESSAGE.SET_NAME ('CN','CN_WKSHT_DOES_NOT_EXIST');
42: FND_MSG_PUB.Add;
43: END IF;
44: RAISE FND_API.G_EXC_ERROR ;
45: END;
46: END Get_Payrun_Info ;
47:
48:
92: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
93: CN_PAYMENT_SECURITY_PVT.g_access_wksht_submit);
94: IF ( l_has_access = FALSE)
95: THEN
96: RAISE FND_API.G_EXC_ERROR ;
97: END IF;
98: --Added for R12 payment security check end.
99:
100: l_approval_status := 'SUBMITTED';
104: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
105: CN_PAYMENT_SECURITY_PVT.g_access_wksht_approve);
106: IF ( l_has_access = FALSE)
107: THEN
108: RAISE FND_API.G_EXC_ERROR ;
109: END IF;
110: --Added for R12 payment security check end.
111:
112: l_approval_status := 'APPROVED';
175:
176:
177: PROCEDURE Submit_Worksheet
178: ( p_api_version IN NUMBER ,
179: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
180: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
181: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
182: x_return_status OUT NOCOPY VARCHAR2 ,
183: x_msg_count OUT NOCOPY NUMBER ,
176:
177: PROCEDURE Submit_Worksheet
178: ( p_api_version IN NUMBER ,
179: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
180: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
181: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
182: x_return_status OUT NOCOPY VARCHAR2 ,
183: x_msg_count OUT NOCOPY NUMBER ,
184: x_msg_data OUT NOCOPY VARCHAR2 ,
177: PROCEDURE Submit_Worksheet
178: ( p_api_version IN NUMBER ,
179: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
180: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
181: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
182: x_return_status OUT NOCOPY VARCHAR2 ,
183: x_msg_count OUT NOCOPY NUMBER ,
184: x_msg_data OUT NOCOPY VARCHAR2 ,
185: p_worksheet_id IN NUMBER
197: BEGIN
198: -- Standard Start of API savepoint
199: SAVEPOINT Submit_Worksheet;
200: -- Standard call to check for call compatibility.
201: IF NOT FND_API.compatible_api_call
202: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
203: THEN
204: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
205: END IF;
200: -- Standard call to check for call compatibility.
201: IF NOT FND_API.compatible_api_call
202: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
203: THEN
204: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
205: END IF;
206: -- Initialize message list if p_init_msg_list is set to TRUE.
207: IF FND_API.to_Boolean( p_init_msg_list ) THEN
208: FND_MSG_PUB.initialize;
203: THEN
204: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
205: END IF;
206: -- Initialize message list if p_init_msg_list is set to TRUE.
207: IF FND_API.to_Boolean( p_init_msg_list ) THEN
208: FND_MSG_PUB.initialize;
209: END IF;
210: -- Initialize API return status to success
211: x_return_status := FND_API.G_RET_STS_SUCCESS;
207: IF FND_API.to_Boolean( p_init_msg_list ) THEN
208: FND_MSG_PUB.initialize;
209: END IF;
210: -- Initialize API return status to success
211: x_return_status := FND_API.G_RET_STS_SUCCESS;
212: -- API body
213:
214: --Added for R12 payment security check begin.
215: l_has_access := CN_PAYMENT_SECURITY_PVT.get_security_access(
216: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
217: CN_PAYMENT_SECURITY_PVT.g_access_wksht_submit);
218: IF ( l_has_access = FALSE)
219: THEN
220: RAISE FND_API.G_EXC_ERROR ;
221: END IF;
222: --Added for R12 payment security check end.
223:
224: -- delete records in CN_PAY_APPROVAL_FLOW
242: p_user_email => l_user_email);
243:
244: -- End of API body.
245: -- Standard check of p_commit.
246: IF FND_API.To_Boolean( p_commit ) THEN
247: COMMIT WORK;
248: END IF;
249: -- Standard call to get message count and if count is 1, get message info.
250: FND_MSG_PUB.Count_And_Get
249: -- Standard call to get message count and if count is 1, get message info.
250: FND_MSG_PUB.Count_And_Get
251: (p_count => x_msg_count ,
252: p_data => x_msg_data ,
253: p_encoded => FND_API.G_FALSE);
254:
255: EXCEPTION
256: WHEN FND_API.G_EXC_ERROR THEN
257: ROLLBACK TO Submit_Worksheet ;
252: p_data => x_msg_data ,
253: p_encoded => FND_API.G_FALSE);
254:
255: EXCEPTION
256: WHEN FND_API.G_EXC_ERROR THEN
257: ROLLBACK TO Submit_Worksheet ;
258: x_return_status := FND_API.G_RET_STS_ERROR ;
259: FND_MSG_PUB.Count_And_Get
260: (p_count => x_msg_count ,
254:
255: EXCEPTION
256: WHEN FND_API.G_EXC_ERROR THEN
257: ROLLBACK TO Submit_Worksheet ;
258: x_return_status := FND_API.G_RET_STS_ERROR ;
259: FND_MSG_PUB.Count_And_Get
260: (p_count => x_msg_count ,
261: p_data => x_msg_data ,
262: p_encoded => FND_API.G_FALSE);
258: x_return_status := FND_API.G_RET_STS_ERROR ;
259: FND_MSG_PUB.Count_And_Get
260: (p_count => x_msg_count ,
261: p_data => x_msg_data ,
262: p_encoded => FND_API.G_FALSE);
263:
264: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
265: ROLLBACK TO Submit_Worksheet ;
266: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
260: (p_count => x_msg_count ,
261: p_data => x_msg_data ,
262: p_encoded => FND_API.G_FALSE);
263:
264: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
265: ROLLBACK TO Submit_Worksheet ;
266: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
267: FND_MSG_PUB.count_and_get
268: (p_count => x_msg_count ,
262: p_encoded => FND_API.G_FALSE);
263:
264: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
265: ROLLBACK TO Submit_Worksheet ;
266: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
267: FND_MSG_PUB.count_and_get
268: (p_count => x_msg_count ,
269: p_data => x_msg_data ,
270: p_encoded => FND_API.G_FALSE);
266: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
267: FND_MSG_PUB.count_and_get
268: (p_count => x_msg_count ,
269: p_data => x_msg_data ,
270: p_encoded => FND_API.G_FALSE);
271:
272: WHEN OTHERS THEN
273: ROLLBACK TO Submit_Worksheet ;
274: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
270: p_encoded => FND_API.G_FALSE);
271:
272: WHEN OTHERS THEN
273: ROLLBACK TO Submit_Worksheet ;
274: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
275: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
276: THEN
277: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
278: END IF;
278: END IF;
279: FND_MSG_PUB.Count_And_Get
280: (p_count => x_msg_count ,
281: p_data => x_msg_data ,
282: p_encoded => FND_API.G_FALSE);
283:
284: END Submit_Worksheet;
285:
286: -- Start of comments
297:
298:
299: PROCEDURE Approve_Worksheet
300: ( p_api_version IN NUMBER ,
301: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
302: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
303: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
304: x_return_status OUT NOCOPY VARCHAR2 ,
305: x_msg_count OUT NOCOPY NUMBER ,
298:
299: PROCEDURE Approve_Worksheet
300: ( p_api_version IN NUMBER ,
301: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
302: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
303: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
304: x_return_status OUT NOCOPY VARCHAR2 ,
305: x_msg_count OUT NOCOPY NUMBER ,
306: x_msg_data OUT NOCOPY VARCHAR2 ,
299: PROCEDURE Approve_Worksheet
300: ( p_api_version IN NUMBER ,
301: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
302: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
303: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
304: x_return_status OUT NOCOPY VARCHAR2 ,
305: x_msg_count OUT NOCOPY NUMBER ,
306: x_msg_data OUT NOCOPY VARCHAR2 ,
307: p_worksheet_id IN NUMBER
319: BEGIN
320: -- Standard Start of API savepoint
321: SAVEPOINT Approve_Worksheet;
322: -- Standard call to check for call compatibility.
323: IF NOT FND_API.compatible_api_call
324: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
325: THEN
326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
327: END IF;
322: -- Standard call to check for call compatibility.
323: IF NOT FND_API.compatible_api_call
324: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
325: THEN
326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
327: END IF;
328: -- Initialize message list if p_init_msg_list is set to TRUE.
329: IF FND_API.to_Boolean( p_init_msg_list ) THEN
330: FND_MSG_PUB.initialize;
325: THEN
326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
327: END IF;
328: -- Initialize message list if p_init_msg_list is set to TRUE.
329: IF FND_API.to_Boolean( p_init_msg_list ) THEN
330: FND_MSG_PUB.initialize;
331: END IF;
332: -- Initialize API return status to success
333: x_return_status := FND_API.G_RET_STS_SUCCESS;
329: IF FND_API.to_Boolean( p_init_msg_list ) THEN
330: FND_MSG_PUB.initialize;
331: END IF;
332: -- Initialize API return status to success
333: x_return_status := FND_API.G_RET_STS_SUCCESS;
334: -- API body
335: --Added for R12 payment security check begin.
336: l_has_access := CN_PAYMENT_SECURITY_PVT.get_security_access(
337: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
337: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
338: CN_PAYMENT_SECURITY_PVT.g_access_wksht_approve);
339: IF ( l_has_access = FALSE)
340: THEN
341: RAISE FND_API.G_EXC_ERROR ;
342: END IF;
343: --Added for R12 payment security check end.
344:
345: -- get_payrun_info
369: p_user_email => l_user_email);
370:
371: -- End of API body.
372: -- Standard check of p_commit.
373: IF FND_API.To_Boolean( p_commit ) THEN
374: COMMIT WORK;
375: END IF;
376: -- Standard call to get message count and if count is 1, get message info.
377: FND_MSG_PUB.Count_And_Get
376: -- Standard call to get message count and if count is 1, get message info.
377: FND_MSG_PUB.Count_And_Get
378: (p_count => x_msg_count ,
379: p_data => x_msg_data ,
380: p_encoded => FND_API.G_FALSE);
381:
382: EXCEPTION
383: WHEN FND_API.G_EXC_ERROR THEN
384: ROLLBACK TO Approve_Worksheet ;
379: p_data => x_msg_data ,
380: p_encoded => FND_API.G_FALSE);
381:
382: EXCEPTION
383: WHEN FND_API.G_EXC_ERROR THEN
384: ROLLBACK TO Approve_Worksheet ;
385: x_return_status := FND_API.G_RET_STS_ERROR ;
386: FND_MSG_PUB.Count_And_Get
387: (p_count => x_msg_count ,
381:
382: EXCEPTION
383: WHEN FND_API.G_EXC_ERROR THEN
384: ROLLBACK TO Approve_Worksheet ;
385: x_return_status := FND_API.G_RET_STS_ERROR ;
386: FND_MSG_PUB.Count_And_Get
387: (p_count => x_msg_count ,
388: p_data => x_msg_data ,
389: p_encoded => FND_API.G_FALSE);
385: x_return_status := FND_API.G_RET_STS_ERROR ;
386: FND_MSG_PUB.Count_And_Get
387: (p_count => x_msg_count ,
388: p_data => x_msg_data ,
389: p_encoded => FND_API.G_FALSE);
390:
391: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
392: ROLLBACK TO Approve_Worksheet ;
393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
387: (p_count => x_msg_count ,
388: p_data => x_msg_data ,
389: p_encoded => FND_API.G_FALSE);
390:
391: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
392: ROLLBACK TO Approve_Worksheet ;
393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
394: FND_MSG_PUB.count_and_get
395: (p_count => x_msg_count ,
389: p_encoded => FND_API.G_FALSE);
390:
391: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
392: ROLLBACK TO Approve_Worksheet ;
393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
394: FND_MSG_PUB.count_and_get
395: (p_count => x_msg_count ,
396: p_data => x_msg_data ,
397: p_encoded => FND_API.G_FALSE);
393: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
394: FND_MSG_PUB.count_and_get
395: (p_count => x_msg_count ,
396: p_data => x_msg_data ,
397: p_encoded => FND_API.G_FALSE);
398:
399: WHEN OTHERS THEN
400: ROLLBACK TO Approve_Worksheet ;
401: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
397: p_encoded => FND_API.G_FALSE);
398:
399: WHEN OTHERS THEN
400: ROLLBACK TO Approve_Worksheet ;
401: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
402: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
403: THEN
404: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
405: END IF;
405: END IF;
406: FND_MSG_PUB.Count_And_Get
407: (p_count => x_msg_count ,
408: p_data => x_msg_data ,
409: p_encoded => FND_API.G_FALSE);
410:
411: END Approve_Worksheet;
412:
413: -- Start of comments
424:
425:
426: PROCEDURE Reject_Worksheet
427: ( p_api_version IN NUMBER ,
428: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
429: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
430: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
431: x_return_status OUT NOCOPY VARCHAR2 ,
432: x_msg_count OUT NOCOPY NUMBER ,
425:
426: PROCEDURE Reject_Worksheet
427: ( p_api_version IN NUMBER ,
428: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
429: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
430: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
431: x_return_status OUT NOCOPY VARCHAR2 ,
432: x_msg_count OUT NOCOPY NUMBER ,
433: x_msg_data OUT NOCOPY VARCHAR2 ,
426: PROCEDURE Reject_Worksheet
427: ( p_api_version IN NUMBER ,
428: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
429: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
430: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
431: x_return_status OUT NOCOPY VARCHAR2 ,
432: x_msg_count OUT NOCOPY NUMBER ,
433: x_msg_data OUT NOCOPY VARCHAR2 ,
434: p_worksheet_id IN NUMBER
446: BEGIN
447: -- Standard Start of API savepoint
448: SAVEPOINT Reject_Worksheet;
449: -- Standard call to check for call compatibility.
450: IF NOT FND_API.compatible_api_call
451: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
452: THEN
453: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
454: END IF;
449: -- Standard call to check for call compatibility.
450: IF NOT FND_API.compatible_api_call
451: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
452: THEN
453: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
454: END IF;
455: -- Initialize message list if p_init_msg_list is set to TRUE.
456: IF FND_API.to_Boolean( p_init_msg_list ) THEN
457: FND_MSG_PUB.initialize;
452: THEN
453: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
454: END IF;
455: -- Initialize message list if p_init_msg_list is set to TRUE.
456: IF FND_API.to_Boolean( p_init_msg_list ) THEN
457: FND_MSG_PUB.initialize;
458: END IF;
459: -- Initialize API return status to success
460: x_return_status := FND_API.G_RET_STS_SUCCESS;
456: IF FND_API.to_Boolean( p_init_msg_list ) THEN
457: FND_MSG_PUB.initialize;
458: END IF;
459: -- Initialize API return status to success
460: x_return_status := FND_API.G_RET_STS_SUCCESS;
461: -- API body
462:
463: --Added for R12 payment security check begin.
464: l_has_access := CN_PAYMENT_SECURITY_PVT.get_security_access(
465: CN_PAYMENT_SECURITY_PVT.g_type_wksht,
466: CN_PAYMENT_SECURITY_PVT.g_access_wksht_reject);
467: IF ( l_has_access = FALSE)
468: THEN
469: RAISE FND_API.G_EXC_ERROR ;
470: END IF;
471: --Added for R12 payment security check end.
472:
473: -- get_payrun_info
488: ;
489:
490: -- End of API body.
491: -- Standard check of p_commit.
492: IF FND_API.To_Boolean( p_commit ) THEN
493: COMMIT WORK;
494: END IF;
495: -- Standard call to get message count and if count is 1, get message info.
496: FND_MSG_PUB.Count_And_Get
495: -- Standard call to get message count and if count is 1, get message info.
496: FND_MSG_PUB.Count_And_Get
497: (p_count => x_msg_count ,
498: p_data => x_msg_data ,
499: p_encoded => FND_API.G_FALSE);
500:
501: EXCEPTION
502: WHEN FND_API.G_EXC_ERROR THEN
503: ROLLBACK TO Reject_Worksheet ;
498: p_data => x_msg_data ,
499: p_encoded => FND_API.G_FALSE);
500:
501: EXCEPTION
502: WHEN FND_API.G_EXC_ERROR THEN
503: ROLLBACK TO Reject_Worksheet ;
504: x_return_status := FND_API.G_RET_STS_ERROR ;
505: FND_MSG_PUB.Count_And_Get
506: (p_count => x_msg_count ,
500:
501: EXCEPTION
502: WHEN FND_API.G_EXC_ERROR THEN
503: ROLLBACK TO Reject_Worksheet ;
504: x_return_status := FND_API.G_RET_STS_ERROR ;
505: FND_MSG_PUB.Count_And_Get
506: (p_count => x_msg_count ,
507: p_data => x_msg_data ,
508: p_encoded => FND_API.G_FALSE);
504: x_return_status := FND_API.G_RET_STS_ERROR ;
505: FND_MSG_PUB.Count_And_Get
506: (p_count => x_msg_count ,
507: p_data => x_msg_data ,
508: p_encoded => FND_API.G_FALSE);
509:
510: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
511: ROLLBACK TO Reject_Worksheet ;
512: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
506: (p_count => x_msg_count ,
507: p_data => x_msg_data ,
508: p_encoded => FND_API.G_FALSE);
509:
510: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
511: ROLLBACK TO Reject_Worksheet ;
512: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
513: FND_MSG_PUB.count_and_get
514: (p_count => x_msg_count ,
508: p_encoded => FND_API.G_FALSE);
509:
510: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
511: ROLLBACK TO Reject_Worksheet ;
512: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
513: FND_MSG_PUB.count_and_get
514: (p_count => x_msg_count ,
515: p_data => x_msg_data ,
516: p_encoded => FND_API.G_FALSE);
512: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
513: FND_MSG_PUB.count_and_get
514: (p_count => x_msg_count ,
515: p_data => x_msg_data ,
516: p_encoded => FND_API.G_FALSE);
517:
518: WHEN OTHERS THEN
519: ROLLBACK TO Reject_Worksheet ;
520: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
516: p_encoded => FND_API.G_FALSE);
517:
518: WHEN OTHERS THEN
519: ROLLBACK TO Reject_Worksheet ;
520: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
521: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
522: THEN
523: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
524: END IF;
524: END IF;
525: FND_MSG_PUB.Count_And_Get
526: (p_count => x_msg_count ,
527: p_data => x_msg_data ,
528: p_encoded => FND_API.G_FALSE);
529:
530: END Reject_Worksheet;
531:
532: -- Start of comments
543:
544:
545: PROCEDURE Pay_Payrun
546: ( p_api_version IN NUMBER ,
547: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
548: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
549: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
550: x_return_status OUT NOCOPY VARCHAR2 ,
551: x_msg_count OUT NOCOPY NUMBER ,
544:
545: PROCEDURE Pay_Payrun
546: ( p_api_version IN NUMBER ,
547: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
548: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
549: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
550: x_return_status OUT NOCOPY VARCHAR2 ,
551: x_msg_count OUT NOCOPY NUMBER ,
552: x_msg_data OUT NOCOPY VARCHAR2 ,
545: PROCEDURE Pay_Payrun
546: ( p_api_version IN NUMBER ,
547: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
548: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
549: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
550: x_return_status OUT NOCOPY VARCHAR2 ,
551: x_msg_count OUT NOCOPY NUMBER ,
552: x_msg_data OUT NOCOPY VARCHAR2 ,
553: p_payrun_id IN NUMBER
560: BEGIN
561: -- Standard Start of API savepoint
562: SAVEPOINT Pay_Payrun_Flow;
563: -- Standard call to check for call compatibility.
564: IF NOT FND_API.compatible_api_call
565: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
566: THEN
567: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
568: END IF;
563: -- Standard call to check for call compatibility.
564: IF NOT FND_API.compatible_api_call
565: ( l_api_version ,p_api_version ,l_api_name ,G_PKG_NAME )
566: THEN
567: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
568: END IF;
569: -- Initialize message list if p_init_msg_list is set to TRUE.
570: IF FND_API.to_Boolean( p_init_msg_list ) THEN
571: FND_MSG_PUB.initialize;
566: THEN
567: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
568: END IF;
569: -- Initialize message list if p_init_msg_list is set to TRUE.
570: IF FND_API.to_Boolean( p_init_msg_list ) THEN
571: FND_MSG_PUB.initialize;
572: END IF;
573: -- Initialize API return status to success
574: x_return_status := FND_API.G_RET_STS_SUCCESS;
570: IF FND_API.to_Boolean( p_init_msg_list ) THEN
571: FND_MSG_PUB.initialize;
572: END IF;
573: -- Initialize API return status to success
574: x_return_status := FND_API.G_RET_STS_SUCCESS;
575: -- API body
576:
577: --Added for R12 payment security check begin.
578: l_has_access := CN_PAYMENT_SECURITY_PVT.get_security_access(
579: CN_PAYMENT_SECURITY_PVT.g_type_payrun,
580: CN_PAYMENT_SECURITY_PVT.g_access_payrun_pay);
581: IF ( l_has_access = FALSE)
582: THEN
583: RAISE FND_API.G_EXC_ERROR ;
584: END IF;
585: --Added for R12 payment security check end.
586:
587: -- delete record
589: WHERE payrun_id = p_payrun_id
590: ;
591: -- End of API body.
592: -- Standard check of p_commit.
593: IF FND_API.To_Boolean( p_commit ) THEN
594: COMMIT WORK;
595: END IF;
596: -- Standard call to get message count and if count is 1, get message info.
597: FND_MSG_PUB.Count_And_Get
596: -- Standard call to get message count and if count is 1, get message info.
597: FND_MSG_PUB.Count_And_Get
598: (p_count => x_msg_count ,
599: p_data => x_msg_data ,
600: p_encoded => FND_API.G_FALSE);
601:
602: EXCEPTION
603: WHEN FND_API.G_EXC_ERROR THEN
604: ROLLBACK TO Pay_Payrun_Flow ;
599: p_data => x_msg_data ,
600: p_encoded => FND_API.G_FALSE);
601:
602: EXCEPTION
603: WHEN FND_API.G_EXC_ERROR THEN
604: ROLLBACK TO Pay_Payrun_Flow ;
605: x_return_status := FND_API.G_RET_STS_ERROR ;
606: FND_MSG_PUB.Count_And_Get
607: (p_count => x_msg_count ,
601:
602: EXCEPTION
603: WHEN FND_API.G_EXC_ERROR THEN
604: ROLLBACK TO Pay_Payrun_Flow ;
605: x_return_status := FND_API.G_RET_STS_ERROR ;
606: FND_MSG_PUB.Count_And_Get
607: (p_count => x_msg_count ,
608: p_data => x_msg_data ,
609: p_encoded => FND_API.G_FALSE);
605: x_return_status := FND_API.G_RET_STS_ERROR ;
606: FND_MSG_PUB.Count_And_Get
607: (p_count => x_msg_count ,
608: p_data => x_msg_data ,
609: p_encoded => FND_API.G_FALSE);
610:
611: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
612: ROLLBACK TO Pay_Payrun_Flow ;
613: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
607: (p_count => x_msg_count ,
608: p_data => x_msg_data ,
609: p_encoded => FND_API.G_FALSE);
610:
611: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
612: ROLLBACK TO Pay_Payrun_Flow ;
613: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
614: FND_MSG_PUB.count_and_get
615: (p_count => x_msg_count ,
609: p_encoded => FND_API.G_FALSE);
610:
611: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
612: ROLLBACK TO Pay_Payrun_Flow ;
613: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
614: FND_MSG_PUB.count_and_get
615: (p_count => x_msg_count ,
616: p_data => x_msg_data ,
617: p_encoded => FND_API.G_FALSE);
613: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
614: FND_MSG_PUB.count_and_get
615: (p_count => x_msg_count ,
616: p_data => x_msg_data ,
617: p_encoded => FND_API.G_FALSE);
618:
619: WHEN OTHERS THEN
620: ROLLBACK TO Pay_Payrun_Flow ;
621: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
617: p_encoded => FND_API.G_FALSE);
618:
619: WHEN OTHERS THEN
620: ROLLBACK TO Pay_Payrun_Flow ;
621: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
622: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
623: THEN
624: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
625: END IF;
625: END IF;
626: FND_MSG_PUB.Count_And_Get
627: (p_count => x_msg_count ,
628: p_data => x_msg_data ,
629: p_encoded => FND_API.G_FALSE);
630:
631: END Pay_Payrun;
632:
633: END CN_PAY_APPROVAL_FLOW_PVT ;