[Home] [Help]
PACKAGE: APPS.ARP_PROCESS_DET_PKG
Source
1 PACKAGE arp_process_det_pkg AUTHID CURRENT_USER AS
2 /* $Header: ARDLAPPS.pls 120.8 2011/08/15 09:25:56 chuansha ship $ */
3
4
5 /*-----------------------------------------------------------------------------+
6 | Procedure initialization |
7 +-----------------------------------------------------------------------------+
8 | Parameter : |
9 | p_customer_trx_id invoice ID |
10 | p_cash_receipt_id receipt ID |
11 +-----------------------------------------------------------------------------+
12 | Action : |
13 | 1) Call arp_det_dist_pkg to copy trx line into ra_customer_trx_lines_gt |
14 | 2) Call get_inv_ps to cache the invoice payment schedule |
15 +-----------------------------------------------------------------------------*/
16 PROCEDURE initialization
17 (p_customer_trx_id IN NUMBER,
18 p_cash_receipt_id IN NUMBER,
19 x_return_status OUT NOCOPY VARCHAR2,
20 x_msg_data OUT NOCOPY VARCHAR2,
21 x_msg_count OUT NOCOPY NUMBER);
22
23
24 /*-----------------------------------------------------------------------------+
25 | Procedure application_execute |
26 +-----------------------------------------------------------------------------+
27 | Parameter : |
28 | p_app_level Application Level (TRANSACTION/GROUP/LINE) |
29 | p_group_id Group_id req when Application level is GROUP |
30 | p_ctl_id customer_trx_line_id required when the application level |
31 | is LINE |
32 | p_line_applied Line amount applied |
33 | p_tax_applied Tax amount applied |
34 | p_freight_applied Freight amount applied |
35 | p_charges_applied Charge amount applied |
36 | -- |
37 | p_line_ediscounted Earned Discount on Revenue |
38 | p_tax_ediscounted Earned Discount on Tax |
39 | p_freight_ediscounted Earned Discount on Freight |
40 | p_charges_ediscounted Earned Discount on charge |
41 | -- |
42 | p_line_uediscounted Unearned Discount on Revenue |
43 | p_tax_uediscounted Unearned Discount on Tax |
44 | p_freight_uediscounted Unearned Discount on Freight |
45 | p_charges_uediscounted Unearned Discount on charge |
46 | p_customer_trx Invoice record |
47 | p_ae_sys_rec Receivable system parameters |
48 +-----------------------------------------------------------------------------+
49 | Action : |
50 | 1) Call cur_app_gt_id to looking for current apps |
51 | 2) If found then call delete_application |
52 | 3) Call apply to do the application |
53 +-----------------------------------------------------------------------------*/
54 PROCEDURE application_execute
55 ( p_app_level IN VARCHAR2,
56 --
57 p_source_data_key1 IN VARCHAR2,
58 p_source_data_key2 IN VARCHAR2,
59 p_source_data_key3 IN VARCHAR2,
60 p_source_data_key4 IN VARCHAR2,
61 p_source_data_key5 IN VARCHAR2,
62 --
63 p_ctl_id IN NUMBER,
64 --
65 p_line_applied IN NUMBER,
66 p_tax_applied IN NUMBER,
67 p_freight_applied IN NUMBER,
68 p_charges_applied IN NUMBER,
69 --
70 p_line_ediscounted IN NUMBER,
71 p_tax_ediscounted IN NUMBER,
72 p_freight_ediscounted IN NUMBER,
73 p_charges_ediscounted IN NUMBER,
74 --
75 p_line_uediscounted IN NUMBER,
76 p_tax_uediscounted IN NUMBER,
77 p_freight_uediscounted IN NUMBER,
78 p_charges_uediscounted IN NUMBER,
79 --
80 x_return_status OUT NOCOPY VARCHAR2,
81 x_msg_count OUT NOCOPY NUMBER,
82 x_msg_data OUT NOCOPY VARCHAR2);
83
84 /*-----------------------------------------------------------------------------+
85 | Procedure final_commit |
86 +-----------------------------------------------------------------------------+
87 | Parameter : |
88 | p_customer_trx Invoice record |
89 | Out |
90 | x_ra_id receivable_application_id |
91 | x_amount_applied the amount applied |
92 | x_amount_applied_from the amount applied from |
93 | x_earned_discount_taken the amount earned discounted |
94 | x_unearned_discount_taken the amount unearned discounted |
95 +-----------------------------------------------------------------------------+
96 | Action : |
97 | Return the information amount to be used by receipt_application |
98 | Note arp_process_application.receipt_application will be modified to have|
99 | the receivable_application_id for the APP record as a input param |
100 | Call arp_det_dist_pkg.final_update_inv_ctl_rem_orig to update line balance |
101 | Call arp_det_dist_pkg.create_final_split to create detail application dist |
102 +-----------------------------------------------------------------------------*/
103 PROCEDURE final_commit
104 (p_gl_date IN DATE,
105 p_apply_date IN DATE,
106 p_attribute_category IN VARCHAR2 DEFAULT NULL,
107 p_attribute1 IN VARCHAR2 DEFAULT NULL,
108 p_attribute2 IN VARCHAR2 DEFAULT NULL,
109 p_attribute3 IN VARCHAR2 DEFAULT NULL,
110 p_attribute4 IN VARCHAR2 DEFAULT NULL,
111 p_attribute5 IN VARCHAR2 DEFAULT NULL,
112 p_attribute6 IN VARCHAR2 DEFAULT NULL,
113 p_attribute7 IN VARCHAR2 DEFAULT NULL,
114 p_attribute8 IN VARCHAR2 DEFAULT NULL,
115 p_attribute9 IN VARCHAR2 DEFAULT NULL,
116 p_attribute10 IN VARCHAR2 DEFAULT NULL,
117 p_attribute11 IN VARCHAR2 DEFAULT NULL,
118 p_attribute12 IN VARCHAR2 DEFAULT NULL,
119 p_attribute13 IN VARCHAR2 DEFAULT NULL,
120 p_attribute14 IN VARCHAR2 DEFAULT NULL,
121 p_attribute15 IN VARCHAR2 DEFAULT NULL,
122 p_global_attribute_category IN VARCHAR2 DEFAULT NULL,
123 p_global_attribute1 IN VARCHAR2 DEFAULT NULL,
124 p_global_attribute2 IN VARCHAR2 DEFAULT NULL,
125 p_global_attribute3 IN VARCHAR2 DEFAULT NULL,
126 p_global_attribute4 IN VARCHAR2 DEFAULT NULL,
127 p_global_attribute5 IN VARCHAR2 DEFAULT NULL,
128 p_global_attribute6 IN VARCHAR2 DEFAULT NULL,
129 p_global_attribute7 IN VARCHAR2 DEFAULT NULL,
130 p_global_attribute8 IN VARCHAR2 DEFAULT NULL,
131 p_global_attribute9 IN VARCHAR2 DEFAULT NULL,
132 p_global_attribute10 IN VARCHAR2 DEFAULT NULL,
133 p_global_attribute11 IN VARCHAR2 DEFAULT NULL,
134 p_global_attribute12 IN VARCHAR2 DEFAULT NULL,
135 p_global_attribute13 IN VARCHAR2 DEFAULT NULL,
136 p_global_attribute14 IN VARCHAR2 DEFAULT NULL,
137 p_global_attribute15 IN VARCHAR2 DEFAULT NULL,
138 p_global_attribute16 IN VARCHAR2 DEFAULT NULL,
139 p_global_attribute17 IN VARCHAR2 DEFAULT NULL,
140 p_global_attribute18 IN VARCHAR2 DEFAULT NULL,
141 p_global_attribute19 IN VARCHAR2 DEFAULT NULL,
142 p_global_attribute20 IN VARCHAR2 DEFAULT NULL,
143 p_comments IN VARCHAR2 DEFAULT NULL,
144 p_customer_reference IN VARCHAR2 DEFAULT NULL,
145 --{Cross Currency
146 p_amount_applied_from IN NUMBER DEFAULT NULL,
147 p_trans_to_receipt_rate IN NUMBER DEFAULT NULL,
148 --}
149 x_ra_rec OUT NOCOPY ar_receivable_applications%ROWTYPE,
150 x_return_status OUT NOCOPY VARCHAR2,
151 x_msg_count OUT NOCOPY NUMBER,
152 x_msg_data OUT NOCOPY VARCHAR2);
153
154 /*-----------------------------------------------------------------------------+
155 | Procedure get_latest_amount_remaining |
156 +-----------------------------------------------------------------------------+
157 | Parameter : |
158 | p_customer_trx_id The invoice ID |
159 | p_app_level Application Level (TRANSACTION/GROUP/LINE) |
160 | p_group_id Group_id req when Application level is GROUP |
161 | p_ctl_id customer_trx_line_id required when the application level |
162 | is LINE |
163 | OUT |
164 | x_line_rem The remaining revenue amount for the level |
165 | x_tax_rem The remaining tax amount for the level |
166 | x_freight_rem The remaining freight amount for the level TRANSACTION only|
167 | x_charges_rem The remaining charges amount for the level TRANSACTION only|
168 +-----------------------------------------------------------------------------+
169 | Action : |
170 | Read the remaining amount on ra_customer_trx_lines_gt |
171 +-----------------------------------------------------------------------------*/
172 PROCEDURE get_latest_amount_remaining
173 (p_app_level IN VARCHAR2 DEFAULT 'TRANSACTION',
174 --
175 p_source_data_key1 IN VARCHAR2 DEFAULT NULL,
176 p_source_data_key2 IN VARCHAR2 DEFAULT NULL,
177 p_source_data_key3 IN VARCHAR2 DEFAULT NULL,
178 p_source_data_key4 IN VARCHAR2 DEFAULT NULL,
179 p_source_data_key5 IN VARCHAR2 DEFAULT NULL,
180 --
181 p_ctl_id IN NUMBER DEFAULT NULL,
182 x_line_rem OUT NOCOPY NUMBER,
183 x_tax_rem OUT NOCOPY NUMBER,
184 x_freight_rem OUT NOCOPY NUMBER,
185 x_charges_rem OUT NOCOPY NUMBER,
186 x_return_status OUT NOCOPY VARCHAR2,
187 x_msg_data OUT NOCOPY VARCHAR2,
188 x_msg_count OUT NOCOPY NUMBER);
189
190 /*-----------------------------------------------------------------------------+
191 | Procedure get_latest_amount_applied |
192 +-----------------------------------------------------------------------------+
193 | Parameter : |
194 | p_customer_trx_id The invoice ID |
195 | p_app_level Application Level (TRANSACTION/GROUP/LINE) |
196 | p_group_id Group_id req when Application level is GROUP |
197 | p_ctl_id customer_trx_line_id required when the application level |
198 | is LINE |
199 | OUT |
200 | x_line_app The applied revenue amount for the level |
201 | x_tax_app The applied tax amount for the level |
202 | x_freight_app The applied freight amount for the level TRANSACTION only |
203 | x_charges_app The applied charges amount for the level TRANSACTION only |
204 +-----------------------------------------------------------------------------+
205 | Action : |
206 | Read the applied amount on ar_line_aplication_detail_gt |
207 +-----------------------------------------------------------------------------*/
208 PROCEDURE get_latest_amount_applied
209 (p_app_level IN VARCHAR2 DEFAULT 'TRANSACTION',
210 --
211 p_source_data_key1 IN VARCHAR2 DEFAULT NULL,
212 p_source_data_key2 IN VARCHAR2 DEFAULT NULL,
213 p_source_data_key3 IN VARCHAR2 DEFAULT NULL,
214 p_source_data_key4 IN VARCHAR2 DEFAULT NULL,
215 p_source_data_key5 IN VARCHAR2 DEFAULT NULL,
216 p_ctl_id IN NUMBER DEFAULT NULL,
217 p_log_inv_line IN VARCHAR2 DEFAULT 'Y',
218 --
219 x_line_app OUT NOCOPY NUMBER,
220 x_tax_app OUT NOCOPY NUMBER,
221 x_freight_app OUT NOCOPY NUMBER,
222 x_charges_app OUT NOCOPY NUMBER,
223 --
224 x_line_ed OUT NOCOPY NUMBER,
225 x_tax_ed OUT NOCOPY NUMBER,
226 x_freight_ed OUT NOCOPY NUMBER,
227 x_charges_ed OUT NOCOPY NUMBER,
228 --
229 x_line_uned OUT NOCOPY NUMBER,
230 x_tax_uned OUT NOCOPY NUMBER,
231 x_freight_uned OUT NOCOPY NUMBER,
232 x_charges_uned OUT NOCOPY NUMBER,
233 --
234 x_return_status OUT NOCOPY VARCHAR2,
235 x_msg_data OUT NOCOPY VARCHAR2,
236 x_msg_count OUT NOCOPY NUMBER);
237
238 PROCEDURE get_app_ra_amounts
239 (p_gt_id IN NUMBER,
240 x_ra_rec IN OUT NOCOPY ar_receivable_applications%ROWTYPE);
241
242
243 -- Common interface for detail distributions
244 FUNCTION base_for_proration
245 (p_customer_trx_id IN NUMBER,
246 p_gt_id IN NUMBER,
247 p_line_type IN VARCHAR2,
248 p_activity IN VARCHAR2)
249 RETURN NUMBER;
250
251 FUNCTION element_for_proration
252 (p_customer_trx_id IN NUMBER,
253 p_customer_trx_line_id IN NUMBER,
254 p_gt_id IN NUMBER,
255 p_line_type IN VARCHAR2,
256 p_activity IN VARCHAR2)
257 RETURN NUMBER;
258
259 PROCEDURE verif_int_adj_line_tax
260 (p_customer_trx IN ra_customer_trx%ROWTYPE,
261 p_adj_rec IN ar_adjustments%ROWTYPE,
262 p_ae_sys_rec IN arp_acct_main.ae_sys_rec_type,
263 p_gt_id IN NUMBER,
264 p_line_flag IN VARCHAR2 DEFAULT 'INTERFACE',
265 p_tax_flag IN VARCHAR2 DEFAULT 'INTERFACE',
266 x_return_status IN OUT NOCOPY VARCHAR2);
267
268
269 PROCEDURE verif_int_app_line_tax
270 (p_customer_trx IN ra_customer_trx%ROWTYPE,
271 p_app_rec IN ar_receivable_applications%ROWTYPE,
272 p_ae_sys_rec IN arp_acct_main.ae_sys_rec_type,
273 p_gt_id IN NUMBER,
274 p_line_flag IN VARCHAR2 DEFAULT 'INTERFACE',
275 p_tax_flag IN VARCHAR2 DEFAULT 'INTERFACE',
276 p_ed_line_flag IN VARCHAR2 DEFAULT 'NORMAL',
277 p_ed_tax_flag IN VARCHAR2 DEFAULT 'NORMAL',
278 p_uned_line_flag IN VARCHAR2 DEFAULT 'NORMAL',
279 p_uned_tax_flag IN VARCHAR2 DEFAULT 'NORMAL',
280 x_return_status IN OUT NOCOPY VARCHAR2);
281
282
283 PROCEDURE breakup_discounts (
284 lin_discount_in in NUMBER,
285 tax_discount_in in NUMBER,
286 frt_discount_in in NUMBER,
287 tot_earned_discount_in in NUMBER,
288 tot_unearned_discount_in in NUMBER,
289 ed_lin_out out nocopy number,
290 ued_lin_out out nocopy number,
291 ed_tax_out out nocopy number,
292 ued_tax_out out nocopy number,
293 ed_frt_out out nocopy number,
294 ued_frt_out out nocopy number
295 );
296
297
298
299
300 END arp_process_det_pkg;