1 PACKAGE LNS_PAYOFF_PUB AUTHID CURRENT_USER AS
2 /* $Header: LNS_PAYOFF_S.pls 120.3.12020000.2 2012/07/19 20:59:14 scherkas ship $ */
3
4 /*========================================================================+
5 | Declare PUBLIC Data Types and Variables
6 +========================================================================*/
7
8 /*========================================================================+
9 | special rec_type for payoff
10 | billed flag ='Y' for existing invoices;
11 | billed flag = 'N' for invoices to be created
12 +========================================================================*/
13 TYPE INVOICE_DETAILS_REC IS RECORD(CUST_TRX_ID NUMBER
14 ,PAYMENT_SCHEDULE_ID NUMBER
15 ,INVOICE_NUMBER VARCHAR2(60)
16 ,INSTALLMENT_NUMBER NUMBER
17 ,TRANSACTION_TYPE VARCHAR2(100) --change this to translated type
18 ,REMAINING_AMOUNT NUMBER
19 ,TRX_DATE DATE
20 ,DUE_DATE DATE
21 ,GL_DATE DATE
22 ,PURPOSE VARCHAR2(80)
23 ,BILLED_FLAG VARCHAR2(1)
24 );
25
26 TYPE INVOICE_DETAILS_TBL IS TABLE OF INVOICE_DETAILS_REC INDEX BY BINARY_INTEGER;
27
28 /*========================================================================+
29 | special rec_types for processPayoff
30 +========================================================================*/
31 TYPE CASH_RECEIPT_REC IS RECORD(CASH_RECEIPT_ID NUMBER
32 ,RECEIPT_AMOUNT NUMBER
33 ,RECEIPT_CURRENCY VARCHAR2(10)
34 ,EXCHANGE_RATE NUMBER
35 ,EXCHANGE_DATE DATE
36 ,EXCHANGE_RATE_TYPE VARCHAR2(30)
37 ,ORIGINAL_CURRENCY VARCHAR2(10)
38 ,RECEIPT_NUMBER VARCHAR2(30));
39
40 TYPE CASH_RECEIPT_TBL IS TABLE OF CASH_RECEIPT_REC INDEX BY BINARY_INTEGER;
41
42 TYPE LOAN_CANCEL_DETAILS_REC IS RECORD(LOAN_CANCEL_DETAIL_ID NUMBER
43 ,REMAINING_AMOUNT NUMBER
44 ,DUE_DATE DATE
45 ,TRX_DATE DATE
46 ,GL_DATE DATE
47 ,PURPOSE VARCHAR2(80)
48 ,PURPOSE_CODE VARCHAR2(30)
49 ,BILLED_FLAG VARCHAR2(1)
50 ,PERCENT_TO_PROCESS NUMBER
51 ,AMOUNT_TO_PROCESS NUMBER
52 ,INVOICE_NUMBER VARCHAR2(60)
53 ,INSTALLMENT_NUMBER NUMBER
54 ,TRANSACTION_TYPE VARCHAR2(100)
55 ,ACTION VARCHAR2(10) -- for invoices only; values: ADJUST, CREDIT
56 ,LOAN_LINE_ID NUMBER
57 ,PAYMENT_SCHEDULE_ID NUMBER
58 ,CUST_TRX_ID NUMBER
59 );
60
61 TYPE LOAN_CANCEL_DETAILS_TBL IS TABLE OF LOAN_CANCEL_DETAILS_REC INDEX BY BINARY_INTEGER;
62
63 -- new payoffAPI
64 procedure processPayoff(p_api_version IN NUMBER
65 ,p_init_msg_list IN VARCHAR2
66 ,p_loan_id in number
67 ,p_payoff_date in date
68 ,p_cash_receipt_ids in LNS_PAYOFF_PUB.CASH_RECEIPT_TBL
69 ,x_return_status OUT NOCOPY VARCHAR2
70 ,x_msg_count OUT NOCOPY NUMBER
71 ,x_msg_data OUT NOCOPY VARCHAR2);
72
73 procedure getLoanInvoices(p_api_version IN NUMBER
74 ,p_init_msg_list IN VARCHAR2
75 ,p_loan_id in number
76 ,p_payoff_date in date
77 ,x_invoices_tbl OUT NOCOPY LNS_PAYOFF_PUB.INVOICE_DETAILS_TBL
78 ,x_return_status OUT NOCOPY VARCHAR2
79 ,x_msg_count OUT NOCOPY NUMBER
80 ,x_msg_data OUT NOCOPY VARCHAR2);
81
82 PROCEDURE APPLY_RECEIPT(P_CASH_RECEIPT_ID IN NUMBER
83 ,P_PAYMENT_SCHEDULE_ID IN NUMBER
84 ,P_APPLY_AMOUNT IN NUMBER
85 ,p_apply_date in DATE
86 ,p_apply_amount_from IN NUMBER
87 ,p_trans_to_receipt_rate IN NUMBER
88 ,x_return_status OUT NOCOPY VARCHAR2
89 ,x_msg_count OUT NOCOPY NUMBER
90 ,x_msg_data OUT NOCOPY VARCHAR2);
91
92
93 -- This function returns the receipt balance amount in loan currency
94 FUNCTION getConvertedReceiptAmount(p_receipt_id in number, p_loan_id in number) return NUMBER;
95
96
97 procedure getInvoicesForLoanCancellation(p_api_version IN NUMBER
98 ,p_init_msg_list IN VARCHAR2
99 ,p_loan_id IN NUMBER
100 ,p_cancellation_date IN DATE
101 ,x_invoices_tbl OUT NOCOPY LNS_PAYOFF_PUB.LOAN_CANCEL_DETAILS_TBL
102 ,x_return_status OUT NOCOPY VARCHAR2
103 ,x_msg_count OUT NOCOPY NUMBER
104 ,x_msg_data OUT NOCOPY VARCHAR2);
105
106
107 procedure saveLoanCancelRequest(p_api_version IN NUMBER
108 ,p_init_msg_list IN VARCHAR2
109 ,P_COMMIT IN VARCHAR2
110 ,P_VALIDATION_LEVEL IN NUMBER
111 ,p_loan_id IN NUMBER
112 ,p_description IN VARCHAR2
113 ,p_cancellation_date IN DATE
114 ,p_disable_billing IN VARCHAR2
115 ,p_action IN VARCHAR2
116 ,p_LOAN_CANCELLATION_ID IN OUT NOCOPY NUMBER
117 ,p_cancel_details_tbl IN OUT NOCOPY LNS_PAYOFF_PUB.LOAN_CANCEL_DETAILS_TBL
118 ,x_return_status OUT NOCOPY VARCHAR2
119 ,x_msg_count OUT NOCOPY NUMBER
120 ,x_msg_data OUT NOCOPY VARCHAR2);
121
122
123 procedure approveLoanCancelRequest(p_api_version IN NUMBER
124 ,p_init_msg_list IN VARCHAR2
125 ,P_COMMIT IN VARCHAR2
126 ,P_VALIDATION_LEVEL IN NUMBER
127 ,p_LOAN_CANCELLATION_ID IN NUMBER
128 ,x_return_status OUT NOCOPY VARCHAR2
129 ,x_msg_count OUT NOCOPY NUMBER
130 ,x_msg_data OUT NOCOPY VARCHAR2);
131
132
133 procedure rejectLoanCancelRequest(p_api_version IN NUMBER
134 ,p_init_msg_list IN VARCHAR2
135 ,P_COMMIT IN VARCHAR2
136 ,P_VALIDATION_LEVEL IN NUMBER
137 ,p_LOAN_CANCELLATION_ID IN NUMBER
138 ,x_return_status OUT NOCOPY VARCHAR2
139 ,x_msg_count OUT NOCOPY NUMBER
140 ,x_msg_data OUT NOCOPY VARCHAR2);
141
142 procedure approveLoanSplitRequest(p_api_version IN NUMBER
143 ,p_init_msg_list IN VARCHAR2
144 ,P_COMMIT IN VARCHAR2
145 ,P_VALIDATION_LEVEL IN NUMBER
146 ,p_LOAN_SPLIT_ID IN NUMBER
147 ,x_return_status OUT NOCOPY VARCHAR2
148 ,x_msg_count OUT NOCOPY NUMBER
149 ,x_msg_data OUT NOCOPY VARCHAR2);
150
151 procedure rejectLoanSplitRequest(p_api_version IN NUMBER
152 ,p_init_msg_list IN VARCHAR2
153 ,P_COMMIT IN VARCHAR2
154 ,P_VALIDATION_LEVEL IN NUMBER
155 ,p_LOAN_SPLIT_ID IN NUMBER
156 ,x_return_status OUT NOCOPY VARCHAR2
157 ,x_msg_count OUT NOCOPY NUMBER
158 ,x_msg_data OUT NOCOPY VARCHAR2);
159
160 END LNS_PAYOFF_PUB;