DBA Data[Home] [Help]

PACKAGE: APPS.ARP_PROCESS_DET_PKG

Source


1 PACKAGE arp_process_det_pkg AS
2 /* $Header: ARDLAPPS.pls 120.7.12010000.1 2008/07/24 16:25:14 appldev 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  --{Cross Currency
145  p_amount_applied_from         IN NUMBER    DEFAULT NULL,
146  p_trans_to_receipt_rate       IN NUMBER    DEFAULT NULL,
147  --}
148  x_ra_rec                  OUT NOCOPY ar_receivable_applications%ROWTYPE,
149  x_return_status           OUT NOCOPY VARCHAR2,
150  x_msg_count               OUT NOCOPY NUMBER,
151  x_msg_data                OUT NOCOPY VARCHAR2);
152 
153 /*-----------------------------------------------------------------------------+
154  | Procedure   get_latest_amount_remaining                                     |
155  +-----------------------------------------------------------------------------+
156  | Parameter :                                                                 |
157  |   p_customer_trx_id The invoice ID                                          |
158  |   p_app_level      Application Level (TRANSACTION/GROUP/LINE)               |
159  |   p_group_id       Group_id req when Application level is GROUP             |
160  |   p_ctl_id         customer_trx_line_id required when the application level |
161  |                    is LINE                                                  |
162  |   OUT                                                                       |
163  |  x_line_rem      The remaining revenue amount for the level                 |
164  |  x_tax_rem       The remaining tax amount for the level                     |
165  |  x_freight_rem   The remaining freight amount for the level TRANSACTION only|
166  |  x_charges_rem   The remaining charges amount for the level TRANSACTION only|
167  +-----------------------------------------------------------------------------+
168  | Action    :                                                                 |
169  |  Read the remaining amount on ra_customer_trx_lines_gt                      |
170  +-----------------------------------------------------------------------------*/
171 PROCEDURE get_latest_amount_remaining
172 (p_app_level         IN VARCHAR2 DEFAULT 'TRANSACTION',
173  --
174  p_source_data_key1  IN VARCHAR2 DEFAULT NULL,
175  p_source_data_key2  IN VARCHAR2 DEFAULT NULL,
176  p_source_data_key3  IN VARCHAR2 DEFAULT NULL,
177  p_source_data_key4  IN VARCHAR2 DEFAULT NULL,
178  p_source_data_key5  IN VARCHAR2 DEFAULT NULL,
179  --
180  p_ctl_id            IN NUMBER   DEFAULT NULL,
181  x_line_rem          OUT NOCOPY  NUMBER,
182  x_tax_rem           OUT NOCOPY  NUMBER,
183  x_freight_rem       OUT NOCOPY  NUMBER,
184  x_charges_rem       OUT NOCOPY  NUMBER,
185  x_return_status     OUT NOCOPY  VARCHAR2,
186  x_msg_data          OUT NOCOPY  VARCHAR2,
187  x_msg_count         OUT NOCOPY  NUMBER);
188 
189 /*-----------------------------------------------------------------------------+
190  | Procedure   get_latest_amount_applied                                       |
191  +-----------------------------------------------------------------------------+
192  | Parameter :                                                                 |
193  |   p_customer_trx_id The invoice ID                                          |
194  |   p_app_level      Application Level (TRANSACTION/GROUP/LINE)               |
195  |   p_group_id       Group_id req when Application level is GROUP             |
196  |   p_ctl_id         customer_trx_line_id required when the application level |
197  |                    is LINE                                                  |
198  |   OUT                                                                       |
199  |  x_line_app      The applied revenue amount for the level                   |
200  |  x_tax_app       The applied tax amount for the level                       |
201  |  x_freight_app   The applied freight amount for the level TRANSACTION only  |
202  |  x_charges_app   The applied charges amount for the level TRANSACTION only  |
206  +-----------------------------------------------------------------------------*/
203  +-----------------------------------------------------------------------------+
204  | Action    :                                                                 |
205  |  Read the applied amount on ar_line_aplication_detail_gt                    |
207 PROCEDURE get_latest_amount_applied
208 (p_app_level          IN VARCHAR2 DEFAULT 'TRANSACTION',
209  --
210  p_source_data_key1   IN VARCHAR2 DEFAULT NULL,
211  p_source_data_key2   IN VARCHAR2 DEFAULT NULL,
212  p_source_data_key3   IN VARCHAR2 DEFAULT NULL,
213  p_source_data_key4   IN VARCHAR2 DEFAULT NULL,
214  p_source_data_key5   IN VARCHAR2 DEFAULT NULL,
215  p_ctl_id             IN NUMBER   DEFAULT NULL,
216  p_log_inv_line       IN VARCHAR2 DEFAULT 'Y',
217  --
218  x_line_app           OUT NOCOPY  NUMBER,
219  x_tax_app            OUT NOCOPY  NUMBER,
220  x_freight_app        OUT NOCOPY  NUMBER,
221  x_charges_app        OUT NOCOPY  NUMBER,
222  --
223  x_line_ed            OUT NOCOPY  NUMBER,
224  x_tax_ed             OUT NOCOPY  NUMBER,
225  x_freight_ed         OUT NOCOPY  NUMBER,
226  x_charges_ed         OUT NOCOPY  NUMBER,
227  --
228  x_line_uned          OUT NOCOPY  NUMBER,
229  x_tax_uned           OUT NOCOPY  NUMBER,
230  x_freight_uned       OUT NOCOPY  NUMBER,
231  x_charges_uned       OUT NOCOPY  NUMBER,
232  --
233  x_return_status      OUT NOCOPY  VARCHAR2,
234  x_msg_data           OUT NOCOPY  VARCHAR2,
235  x_msg_count          OUT NOCOPY  NUMBER);
236 
237 PROCEDURE get_app_ra_amounts
238 (p_gt_id                       IN NUMBER,
239  x_ra_rec                      IN OUT NOCOPY ar_receivable_applications%ROWTYPE);
240 
241 
242 -- Common interface for detail distributions
243 FUNCTION base_for_proration
244 (p_customer_trx_id   IN NUMBER,
245  p_gt_id             IN NUMBER,
246  p_line_type         IN VARCHAR2,
247  p_activity          IN VARCHAR2)
248 RETURN  NUMBER;
249 
250 FUNCTION element_for_proration
251 (p_customer_trx_id        IN NUMBER,
252  p_customer_trx_line_id   IN NUMBER,
253  p_gt_id                  IN NUMBER,
254  p_line_type              IN VARCHAR2,
255  p_activity               IN VARCHAR2)
256 RETURN  NUMBER;
257 
258 PROCEDURE verif_int_adj_line_tax
259 (p_customer_trx     IN ra_customer_trx%ROWTYPE,
260  p_adj_rec          IN ar_adjustments%ROWTYPE,
261  p_ae_sys_rec       IN arp_acct_main.ae_sys_rec_type,
262  p_gt_id            IN NUMBER,
263  p_line_flag        IN VARCHAR2 DEFAULT 'INTERFACE',
264  p_tax_flag         IN VARCHAR2 DEFAULT 'INTERFACE',
265  x_return_status    IN OUT NOCOPY VARCHAR2);
266 
267 
268 PROCEDURE verif_int_app_line_tax
269 (p_customer_trx     IN ra_customer_trx%ROWTYPE,
270  p_app_rec          IN ar_receivable_applications%ROWTYPE,
271  p_ae_sys_rec       IN arp_acct_main.ae_sys_rec_type,
272  p_gt_id            IN NUMBER,
273  p_line_flag        IN VARCHAR2 DEFAULT 'INTERFACE',
274  p_tax_flag         IN VARCHAR2 DEFAULT 'INTERFACE',
275  p_ed_line_flag     IN VARCHAR2 DEFAULT 'NORMAL',
276  p_ed_tax_flag      IN VARCHAR2 DEFAULT 'NORMAL',
277  p_uned_line_flag   IN VARCHAR2 DEFAULT 'NORMAL',
278  p_uned_tax_flag    IN VARCHAR2 DEFAULT 'NORMAL',
279  x_return_status    IN OUT NOCOPY VARCHAR2);
280 
281 
282 PROCEDURE breakup_discounts (
283   lin_discount_in in  		 NUMBER,
284   tax_discount_in in 		 NUMBER,
285   frt_discount_in in 		 NUMBER,
286   tot_earned_discount_in in 		 NUMBER,
287   tot_unearned_discount_in in 		 NUMBER,
288   ed_lin_out out nocopy number,
289   ued_lin_out out nocopy number,
290   ed_tax_out out nocopy number,
291   ued_tax_out out nocopy number,
292   ed_frt_out out nocopy number,
293   ued_frt_out out nocopy number
294 );
295 
296 
297 
298 
299 END arp_process_det_pkg;