258:
259: BEGIN
260:
261:
262: x_return_status := OKL_API.G_RET_STS_SUCCESS;
263:
264: -- Validate Source id and Source Table
265:
266:
263:
264: -- Validate Source id and Source Table
265:
266:
267: IF (p_source_table IS NULL OR p_source_table = OKL_API.G_MISS_CHAR) THEN
268: OKL_API.SET_MESSAGE(p_app_name => g_app_name
269: ,p_msg_name => g_required_value
270: ,p_token1 => g_col_name_token
271: ,p_token1_value => 'source_table');
264: -- Validate Source id and Source Table
265:
266:
267: IF (p_source_table IS NULL OR p_source_table = OKL_API.G_MISS_CHAR) THEN
268: OKL_API.SET_MESSAGE(p_app_name => g_app_name
269: ,p_msg_name => g_required_value
270: ,p_token1 => g_col_name_token
271: ,p_token1_value => 'source_table');
272: x_return_status := OKL_API.G_RET_STS_ERROR;
268: OKL_API.SET_MESSAGE(p_app_name => g_app_name
269: ,p_msg_name => g_required_value
270: ,p_token1 => g_col_name_token
271: ,p_token1_value => 'source_table');
272: x_return_status := OKL_API.G_RET_STS_ERROR;
273: RAISE OKL_API.G_EXCEPTION_ERROR;
274: END IF;
275:
276: IF (p_source_id IS NULL OR p_source_id = OKL_API.G_MISS_NUM) THEN
269: ,p_msg_name => g_required_value
270: ,p_token1 => g_col_name_token
271: ,p_token1_value => 'source_table');
272: x_return_status := OKL_API.G_RET_STS_ERROR;
273: RAISE OKL_API.G_EXCEPTION_ERROR;
274: END IF;
275:
276: IF (p_source_id IS NULL OR p_source_id = OKL_API.G_MISS_NUM) THEN
277: OKL_API.SET_MESSAGE(p_app_name => g_app_name
272: x_return_status := OKL_API.G_RET_STS_ERROR;
273: RAISE OKL_API.G_EXCEPTION_ERROR;
274: END IF;
275:
276: IF (p_source_id IS NULL OR p_source_id = OKL_API.G_MISS_NUM) THEN
277: OKL_API.SET_MESSAGE(p_app_name => g_app_name
278: ,p_msg_name => g_required_value
279: ,p_token1 => g_col_name_token
280: ,p_token1_value => 'source_id');
273: RAISE OKL_API.G_EXCEPTION_ERROR;
274: END IF;
275:
276: IF (p_source_id IS NULL OR p_source_id = OKL_API.G_MISS_NUM) THEN
277: OKL_API.SET_MESSAGE(p_app_name => g_app_name
278: ,p_msg_name => g_required_value
279: ,p_token1 => g_col_name_token
280: ,p_token1_value => 'source_id');
281: x_return_status := OKL_API.G_RET_STS_ERROR;
277: OKL_API.SET_MESSAGE(p_app_name => g_app_name
278: ,p_msg_name => g_required_value
279: ,p_token1 => g_col_name_token
280: ,p_token1_value => 'source_id');
281: x_return_status := OKL_API.G_RET_STS_ERROR;
282: RAISE OKL_API.G_EXCEPTION_ERROR;
283: END IF;
284:
285: IF (p_acct_date IS NULL OR p_acct_date = OKL_API.G_MISS_DATE) THEN
278: ,p_msg_name => g_required_value
279: ,p_token1 => g_col_name_token
280: ,p_token1_value => 'source_id');
281: x_return_status := OKL_API.G_RET_STS_ERROR;
282: RAISE OKL_API.G_EXCEPTION_ERROR;
283: END IF;
284:
285: IF (p_acct_date IS NULL OR p_acct_date = OKL_API.G_MISS_DATE) THEN
286: OKL_API.SET_MESSAGE(p_app_name => g_app_name
281: x_return_status := OKL_API.G_RET_STS_ERROR;
282: RAISE OKL_API.G_EXCEPTION_ERROR;
283: END IF;
284:
285: IF (p_acct_date IS NULL OR p_acct_date = OKL_API.G_MISS_DATE) THEN
286: OKL_API.SET_MESSAGE(p_app_name => g_app_name
287: ,p_msg_name => g_required_value
288: ,p_token1 => g_col_name_token
289: ,p_token1_value => 'acct_date');
282: RAISE OKL_API.G_EXCEPTION_ERROR;
283: END IF;
284:
285: IF (p_acct_date IS NULL OR p_acct_date = OKL_API.G_MISS_DATE) THEN
286: OKL_API.SET_MESSAGE(p_app_name => g_app_name
287: ,p_msg_name => g_required_value
288: ,p_token1 => g_col_name_token
289: ,p_token1_value => 'acct_date');
290: x_return_status := OKL_API.G_RET_STS_ERROR;
286: OKL_API.SET_MESSAGE(p_app_name => g_app_name
287: ,p_msg_name => g_required_value
288: ,p_token1 => g_col_name_token
289: ,p_token1_value => 'acct_date');
290: x_return_status := OKL_API.G_RET_STS_ERROR;
291: RAISE OKL_API.G_EXCEPTION_ERROR;
292: END IF;
293:
294: l_validate_flag :=
287: ,p_msg_name => g_required_value
288: ,p_token1 => g_col_name_token
289: ,p_token1_value => 'acct_date');
290: x_return_status := OKL_API.G_RET_STS_ERROR;
291: RAISE OKL_API.G_EXCEPTION_ERROR;
292: END IF;
293:
294: l_validate_flag :=
295: OKL_ACCOUNTING_UTIL.VALIDATE_SOURCE_ID_TABLE(p_source_id => p_source_Id,
294: l_validate_flag :=
295: OKL_ACCOUNTING_UTIL.VALIDATE_SOURCE_ID_TABLE(p_source_id => p_source_Id,
296: p_source_table => p_source_table);
297:
298: IF (l_validate_flag = OKL_API.G_FALSE) THEN
299: OKL_API.set_message(p_app_name => G_APP_NAME,
300: p_msg_name => 'OKL_INVALID_SOURCE_TBL_ID');
301:
302: RAISE OKL_API.G_EXCEPTION_ERROR;
295: OKL_ACCOUNTING_UTIL.VALIDATE_SOURCE_ID_TABLE(p_source_id => p_source_Id,
296: p_source_table => p_source_table);
297:
298: IF (l_validate_flag = OKL_API.G_FALSE) THEN
299: OKL_API.set_message(p_app_name => G_APP_NAME,
300: p_msg_name => 'OKL_INVALID_SOURCE_TBL_ID');
301:
302: RAISE OKL_API.G_EXCEPTION_ERROR;
303:
298: IF (l_validate_flag = OKL_API.G_FALSE) THEN
299: OKL_API.set_message(p_app_name => G_APP_NAME,
300: p_msg_name => 'OKL_INVALID_SOURCE_TBL_ID');
301:
302: RAISE OKL_API.G_EXCEPTION_ERROR;
303:
304: END IF;
305:
306:
309: p_start_date => l_start_date,
310: p_end_date => l_end_date);
311:
312: IF (l_period_name IS NULL) THEN
313: OKL_API.set_message(p_app_name => G_APP_NAME,
314: p_msg_name => 'OKL_ACCT_PERD_NOT_FOUND',
315: p_token1 => 'ACCT_DATE',
316: p_token1_value => p_acct_date);
317: RAISE OKL_API.G_EXCEPTION_ERROR;
313: OKL_API.set_message(p_app_name => G_APP_NAME,
314: p_msg_name => 'OKL_ACCT_PERD_NOT_FOUND',
315: p_token1 => 'ACCT_DATE',
316: p_token1_value => p_acct_date);
317: RAISE OKL_API.G_EXCEPTION_ERROR;
318: END IF;
319:
320: l_period_status := OKL_ACCOUNTING_UTIL.get_okl_period_status(l_period_name);
321:
319:
320: l_period_status := OKL_ACCOUNTING_UTIL.get_okl_period_status(l_period_name);
321:
322: IF (l_period_status NOT IN ('O','F')) THEN
323: OKL_API.set_message(p_app_name => G_APP_NAME,
324: p_msg_name => 'OKL_PERD_INVALID_STATUS',
325: p_token1 => 'PERIOD',
326: p_token1_value => l_period_name);
327:
324: p_msg_name => 'OKL_PERD_INVALID_STATUS',
325: p_token1 => 'PERIOD',
326: p_token1_value => l_period_name);
327:
328: RAISE OKL_API.G_EXCEPTION_ERROR;
329: END IF;
330:
331: -- If the selected event is already reversed earlier then Abort the processing
332:
332:
333: OPEN check_dist_csr;
334: FETCH check_dist_csr INTO l_dummy_var;
335: IF (check_dist_csr%FOUND) THEN
336: OKL_API.set_message(p_app_name => G_APP_NAME,
337: p_msg_name => 'OKL_TXN_ALREADY_REVERSED');
338:
339: CLOSE check_dist_csr;
340: RAISE OKL_API.G_EXCEPTION_ERROR;
336: OKL_API.set_message(p_app_name => G_APP_NAME,
337: p_msg_name => 'OKL_TXN_ALREADY_REVERSED');
338:
339: CLOSE check_dist_csr;
340: RAISE OKL_API.G_EXCEPTION_ERROR;
341: END IF;
342: CLOSE check_dist_csr;
343:
344:
356: return;
357: end if;
358: -- bug 15881611 .. end
359: -- Santonyr on 14-Feb-2003 Fixed bug 2804913
360: OKL_API.set_message(p_app_name => G_APP_NAME,
361: p_msg_name => 'OKL_DIST_NOT_FOUND');
362: CLOSE dist_csr;
363: RAISE OKL_API.G_EXCEPTION_ERROR;
364: END IF;
359: -- Santonyr on 14-Feb-2003 Fixed bug 2804913
360: OKL_API.set_message(p_app_name => G_APP_NAME,
361: p_msg_name => 'OKL_DIST_NOT_FOUND');
362: CLOSE dist_csr;
363: RAISE OKL_API.G_EXCEPTION_ERROR;
364: END IF;
365:
366: -- SLA uptake changes .. start
367: l_event_id := NULL;
404: ,p_action_type => 'REVERSE'
405: ,x_event_id => l_exist_event_id
406: ,x_event_date => l_exist_event_date);
407:
408: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
409: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
410: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
411: RAISE OKL_API.G_EXCEPTION_ERROR;
412: END IF;
405: ,x_event_id => l_exist_event_id
406: ,x_event_date => l_exist_event_date);
407:
408: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
409: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
410: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
411: RAISE OKL_API.G_EXCEPTION_ERROR;
412: END IF;
413:
406: ,x_event_date => l_exist_event_date);
407:
408: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
409: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
410: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
411: RAISE OKL_API.G_EXCEPTION_ERROR;
412: END IF;
413:
414: l_accounting_event_id := l_exist_event_id;
407:
408: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
409: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
410: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
411: RAISE OKL_API.G_EXCEPTION_ERROR;
412: END IF;
413:
414: l_accounting_event_id := l_exist_event_id;
415:
428: ,p_action_type => 'REVERSE'
429: ,p_representation_code => l_gl_short_name
430: );
431:
432: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
433: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
434: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
435: RAISE OKL_API.G_EXCEPTION_ERROR;
436: END IF;
429: ,p_representation_code => l_gl_short_name
430: );
431:
432: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
433: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
434: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
435: RAISE OKL_API.G_EXCEPTION_ERROR;
436: END IF;
437:
430: );
431:
432: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
433: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
434: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
435: RAISE OKL_API.G_EXCEPTION_ERROR;
436: END IF;
437:
438: l_accounting_event_id := l_event_id;
431:
432: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
433: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
434: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
435: RAISE OKL_API.G_EXCEPTION_ERROR;
436: END IF;
437:
438: l_accounting_event_id := l_event_id;
439:
538: x_return_status := l_return_status;
539:
540: EXCEPTION
541:
542: WHEN OKL_API.G_EXCEPTION_ERROR THEN
543:
544: x_return_status := OKL_API.G_RET_STS_ERROR;
545:
546: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
540: EXCEPTION
541:
542: WHEN OKL_API.G_EXCEPTION_ERROR THEN
543:
544: x_return_status := OKL_API.G_RET_STS_ERROR;
545:
546: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
547:
548: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
542: WHEN OKL_API.G_EXCEPTION_ERROR THEN
543:
544: x_return_status := OKL_API.G_RET_STS_ERROR;
545:
546: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
547:
548: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
549:
550: WHEN OTHERS THEN
544: x_return_status := OKL_API.G_RET_STS_ERROR;
545:
546: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
547:
548: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
549:
550: WHEN OTHERS THEN
551:
552: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
548: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
549:
550: WHEN OTHERS THEN
551:
552: x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
553:
554:
555: END REVERSE_ENTRIES;
556:
567: IS
568:
569: l_api_version CONSTANT NUMBER := 1;
570: l_api_name CONSTANT VARCHAR2(30) := 'REVERSE_ENTRIES';
571: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
572: l_overall_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
573: i NUMBER := 0;
574: l_msg_count NUMBER := 0;
575: l_msg_data VARCHAR2(2000);
568:
569: l_api_version CONSTANT NUMBER := 1;
570: l_api_name CONSTANT VARCHAR2(30) := 'REVERSE_ENTRIES';
571: l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
572: l_overall_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
573: i NUMBER := 0;
574: l_msg_count NUMBER := 0;
575: l_msg_data VARCHAR2(2000);
576:
583:
584: LOOP
585:
586: REVERSE_ENTRIES(p_api_version => 1.0,
587: p_init_msg_list => OKL_API.G_FALSE,
588: x_return_status => l_return_status,
589: x_msg_count => l_msg_count,
590: x_msg_data => l_msg_data,
591: p_source_id => p_source_id_tbl(i),
591: p_source_id => p_source_id_tbl(i),
592: p_source_table => p_source_table,
593: p_acct_date => p_acct_date);
594:
595: IF (l_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
596: IF (l_overall_status <> OKL_API.G_RET_STS_UNEXP_ERROR) THEN
597: l_overall_status := l_return_status;
598: END IF;
599: END IF;
592: p_source_table => p_source_table,
593: p_acct_date => p_acct_date);
594:
595: IF (l_return_status <> OKL_API.G_RET_STS_SUCCESS) THEN
596: IF (l_overall_status <> OKL_API.G_RET_STS_UNEXP_ERROR) THEN
597: l_overall_status := l_return_status;
598: END IF;
599: END IF;
600:
627: IS
628:
629: l_api_version CONSTANT NUMBER := 1.0;
630: l_api_name CONSTANT VARCHAR2(30) := 'SUBMIT_PERIOD_REVERSAL';
631: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
632: l_init_msg_list VARCHAR2(20) DEFAULT Okl_Api.G_FALSE;
633: l_msg_count NUMBER;
634: l_msg_data VARCHAR2(2000);
635:
628:
629: l_api_version CONSTANT NUMBER := 1.0;
630: l_api_name CONSTANT VARCHAR2(30) := 'SUBMIT_PERIOD_REVERSAL';
631: l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
632: l_init_msg_list VARCHAR2(20) DEFAULT Okl_Api.G_FALSE;
633: l_msg_count NUMBER;
634: l_msg_data VARCHAR2(2000);
635:
636: BEGIN
634: l_msg_data VARCHAR2(2000);
635:
636: BEGIN
637:
638: x_return_status := OKL_API.G_RET_STS_SUCCESS;
639:
640: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
641: G_PKG_NAME,
642: p_init_msg_list,
636: BEGIN
637:
638: x_return_status := OKL_API.G_RET_STS_SUCCESS;
639:
640: l_return_status := OKL_API.START_ACTIVITY(l_api_name,
641: G_PKG_NAME,
642: p_init_msg_list,
643: l_api_version,
644: p_api_version,
643: l_api_version,
644: p_api_version,
645: '_PVT',
646: x_return_status);
647: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
648: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
649: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
650: RAISE OKL_API.G_EXCEPTION_ERROR;
651: END IF;
644: p_api_version,
645: '_PVT',
646: x_return_status);
647: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
648: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
649: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
650: RAISE OKL_API.G_EXCEPTION_ERROR;
651: END IF;
652:
645: '_PVT',
646: x_return_status);
647: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
648: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
649: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
650: RAISE OKL_API.G_EXCEPTION_ERROR;
651: END IF;
652:
653: -- check for period name before submitting the request.
646: x_return_status);
647: IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
648: RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
649: ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
650: RAISE OKL_API.G_EXCEPTION_ERROR;
651: END IF;
652:
653: -- check for period name before submitting the request.
654: IF (p_period IS NULL) OR (p_period = Okl_Api.G_MISS_CHAR) THEN
650: RAISE OKL_API.G_EXCEPTION_ERROR;
651: END IF;
652:
653: -- check for period name before submitting the request.
654: IF (p_period IS NULL) OR (p_period = Okl_Api.G_MISS_CHAR) THEN
655: Okc_Api.set_message('OKC', G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'Period Name');
656: RAISE Okl_Api.G_EXCEPTION_ERROR;
657: END IF;
658:
652:
653: -- check for period name before submitting the request.
654: IF (p_period IS NULL) OR (p_period = Okl_Api.G_MISS_CHAR) THEN
655: Okc_Api.set_message('OKC', G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'Period Name');
656: RAISE Okl_Api.G_EXCEPTION_ERROR;
657: END IF;
658:
659: -- Submit Concurrent Program Request for interest calculation
660:
669: Okc_Api.set_message(p_app_name => 'OFA',
670: p_msg_name => 'FA_DEPRN_TAX_ERROR',
671: p_token1 => 'REQUEST_ID',
672: p_token1_value => x_request_id);
673: RAISE okl_api.g_exception_error;
674:
675: END IF;
676:
677: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
673: RAISE okl_api.g_exception_error;
674:
675: END IF;
676:
677: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
678:
679: EXCEPTION
680:
681: WHEN OKL_API.G_EXCEPTION_ERROR THEN
677: OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
678:
679: EXCEPTION
680:
681: WHEN OKL_API.G_EXCEPTION_ERROR THEN
682: x_return_status := OKL_API.HANDLE_EXCEPTIONS
683: (
684: l_api_name,
685: G_PKG_NAME,
678:
679: EXCEPTION
680:
681: WHEN OKL_API.G_EXCEPTION_ERROR THEN
682: x_return_status := OKL_API.HANDLE_EXCEPTIONS
683: (
684: l_api_name,
685: G_PKG_NAME,
686: 'OKL_API.G_RET_STS_ERROR',
682: x_return_status := OKL_API.HANDLE_EXCEPTIONS
683: (
684: l_api_name,
685: G_PKG_NAME,
686: 'OKL_API.G_RET_STS_ERROR',
687: x_msg_count,
688: x_msg_data,
689: '_PVT'
690: );
687: x_msg_count,
688: x_msg_data,
689: '_PVT'
690: );
691: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
692: x_return_status := OKL_API.HANDLE_EXCEPTIONS
693: (
694: l_api_name,
695: G_PKG_NAME,
688: x_msg_data,
689: '_PVT'
690: );
691: WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
692: x_return_status := OKL_API.HANDLE_EXCEPTIONS
693: (
694: l_api_name,
695: G_PKG_NAME,
696: 'OKL_API.G_RET_STS_UNEXP_ERROR',
692: x_return_status := OKL_API.HANDLE_EXCEPTIONS
693: (
694: l_api_name,
695: G_PKG_NAME,
696: 'OKL_API.G_RET_STS_UNEXP_ERROR',
697: x_msg_count,
698: x_msg_data,
699: '_PVT'
700: );
698: x_msg_data,
699: '_PVT'
700: );
701: WHEN OTHERS THEN
702: x_return_status := OKL_API.HANDLE_EXCEPTIONS
703: (
704: l_api_name,
705: G_PKG_NAME,
706: 'OTHERS',