1 PACKAGE OKL_LOSS_PROV_PVT AS
2 /* $Header: OKLRLPVS.pls 120.7 2006/07/11 09:50:42 dkagrawa noship $ */
3
4 -- Bug 4110239. sty_id is not supported from 11.5.10+ version
5 -- Removing sty_id parameter as API is not published
6 TYPE glpv_rec_type IS RECORD (
7 product_id OKL_TRX_CONTRACTS.PDT_ID%TYPE,
8 --sty_id OKL_STRM_TYPE_V.ID%TYPE,
9 bucket_id OKX_AGING_BUCKETS_V.AGING_BUCKET_ID%TYPE,
10 entry_date DATE,
11 tax_deductible_local OKL_TRX_CONTRACTS.TAX_DEDUCTIBLE_LOCAL%TYPE,
12 tax_deductible_corporate OKL_TRX_CONTRACTS.TAX_DEDUCTIBLE_CORPORATE%TYPE,
13 description OKL_TRX_CONTRACTS.DESCRIPTION%TYPE);
14
15
16 TYPE slpv_rec_type IS RECORD (
17 khr_id OKL_K_HEADERS.ID%TYPE,
18 sty_id OKL_STRM_TYPE_V.ID%TYPE,
19 amount OKL_TRX_CONTRACTS.AMOUNT%TYPE,
20 description OKL_TRX_CONTRACTS.DESCRIPTION%TYPE,
21 reverse_flag VARCHAR2(1),
22 tax_deductible_local OKL_TRX_CONTRACTS.TAX_DEDUCTIBLE_LOCAL%TYPE,
23 tax_deductible_corporate OKL_TRX_CONTRACTS.TAX_DEDUCTIBLE_CORPORATE%TYPE,
24 provision_date OKL_TRX_CONTRACTS.DATE_TRANSACTION_OCCURRED%TYPE);
25
26
27 TYPE bktv_rec_type IS RECORD (
28 aging_bucket_line_id OKX_AGING_BUCKETS_V.aging_bucket_line_id%TYPE
29 ,bkt_id OKL_BUCKETS_V.ID%TYPE
30 ,loss_rate OKL_BUCKETS_V.LOSS_RATE%TYPE
31 ,bucket_name OKX_AGING_BUCKETS_V.bucket_name%TYPE
32 ,days_start OKX_AGING_BUCKETS_V.days_start%TYPE
33 ,days_to OKX_AGING_BUCKETS_V.days_to%TYPE
34 ,loss_amount OKL_TXL_CNTRCT_LNS.amount%TYPE);
35
36 TYPE bucket_tbl_type IS TABLE OF bktv_rec_type INDEX BY BINARY_INTEGER;
37 TYPE slpv_tbl_type IS TABLE OF slpv_rec_type INDEX BY BINARY_INTEGER;
38
39
40 ------------------------------------------------------------------------------
41 -- Global Variables
42 G_PKG_NAME CONSTANT VARCHAR2(2000) := 'OKL_LOSS_PROV_PVT';
43 G_APP_NAME CONSTANT VARCHAR2(3) := OKL_API.G_APP_NAME;
44 G_NO_DATA_FOUND CONSTANT VARCHAR2(2000) := 'OKL_NOT_FOUND';
45 G_COL_NAME_TOKEN CONSTANT VARCHAR2(2000) := OKL_API.G_COL_NAME_TOKEN;
46 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(2000) := 'OKL_UNEXPECTED_ERROR';
47 G_SQLERRM_TOKEN CONSTANT VARCHAR2(2000) := 'SQLerrm';
48 G_SQLCODE_TOKEN CONSTANT VARCHAR2(2000) := 'SQLcode';
49 G_REQUIRED_VALUE CONSTANT VARCHAR2(2000) := 'OKL_REQUIRED_VALUE';
50 G_NO_MATCHING_RECORD CONSTANT VARCHAR2(2000) := 'OKL_LLA_NO_MATCHING_RECORD';
51 G_CONTRACT_NUMBER_TOKEN CONSTANT VARCHAR2(2000) := 'CONTRACT_NUMBER';
52 G_INVALID_VALUE CONSTANT VARCHAR2(2000) := 'OKL_CONTRACTS_INVALID_VALUE';
53 G_STREAM_NAME_TOKEN CONSTANT VARCHAR2(2000) := 'STREAM_NAME';
54 ------------------------------------------------------------------------------
55
56 ------------------------------------------------------------------------------
57 -- Global Exception
58 G_EXCEPTION_HALT_VALIDATION EXCEPTION;
59
60 -- this function is used to calculate total reserve amt for a contract
61 FUNCTION calculate_cntrct_rsrv_amt (
62 p_cntrct_id IN NUMBER) RETURN NUMBER;
63
64 -- this function is used to calculate capital balance for a contract and deal type
65 FUNCTION calculate_capital_balance(p_cntrct_id IN NUMBER
66 ,p_deal_type IN VARCHAR2) RETURN NUMBER;
67
68 -- this function submits the general loss concurrent program
69 FUNCTION SUBMIT_GENERAL_LOSS(
70 x_return_status OUT NOCOPY VARCHAR2,
71 x_msg_count OUT NOCOPY NUMBER,
72 x_msg_data OUT NOCOPY VARCHAR2,
73 p_api_version IN NUMBER,
74 p_init_msg_list IN VARCHAR2,
75 p_glpv_rec IN glpv_rec_type
76 ) RETURN NUMBER;
77
78
79 -- this procedure is used create a transaction for specific loss provision
80 PROCEDURE SPECIFIC_LOSS_PROVISION (
81 p_api_version IN NUMBER
82 ,p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE
83 ,x_msg_count OUT NOCOPY NUMBER
84 ,x_msg_data OUT NOCOPY VARCHAR2
85 ,x_return_status OUT NOCOPY VARCHAR2
86 ,p_slpv_rec IN slpv_rec_type);
87
88 -- this program is used create a transaction for general loss provision
89 -- Bug 4110239. p_sty_id is not supported from 11.5.10+ version
90 -- Removing p_sty_id parameter as API is not published.
91 PROCEDURE GENERAL_LOSS_PROVISION ( errbuf OUT NOCOPY VARCHAR2
92 ,retcode OUT NOCOPY NUMBER
93 ,p_product_id IN VARCHAR2
94 --,p_sty_id IN VARCHAR2
95 ,p_bucket_id IN VARCHAR2
96 ,p_entry_date IN VARCHAR2
97 ,p_tax_deductible_local IN VARCHAR2
98 ,p_tax_deductible_corporate IN VARCHAR2
99 ,p_description IN VARCHAR2);
100
101 End OKL_LOSS_PROV_PVT;