DBA Data[Home] [Help]

PACKAGE: APPS.AR_REVENUE_MANAGEMENT_PVT

Source


4 /*=======================================================================+
1 PACKAGE ar_revenue_management_pvt AUTHID CURRENT_USER AS
2 /* $Header: ARXRVMGS.pls 120.23.12010000.3 2010/02/09 14:35:50 mraymond ship $ */
3 
5  |  Declare PUBLIC Data Types and Variables
6  +=======================================================================*/
7 
8   TYPE binary_int_table IS TABLE OF BINARY_INTEGER
9     INDEX BY BINARY_INTEGER;
10 
11   TYPE number_table IS TABLE OF NUMBER
12     INDEX BY BINARY_INTEGER;
13 
14  TYPE long_number_table IS TABLE OF NUMBER
15     INDEX BY VARCHAR2(100);
16 
17   TYPE varchar_table IS TABLE OF VARCHAR2(240)
18     INDEX BY BINARY_INTEGER;
19 
20   TYPE date_table IS TABLE OF DATE
21     INDEX BY BINARY_INTEGER;
22 
23   TYPE desc_flexfield IS RECORD (
24     attribute1  VARCHAR2(150) DEFAULT NULL,
25     attribute2  VARCHAR2(150) DEFAULT NULL,
26     attribute3  VARCHAR2(150) DEFAULT NULL,
27     attribute4  VARCHAR2(150) DEFAULT NULL,
28     attribute5  VARCHAR2(150) DEFAULT NULL,
29     attribute6  VARCHAR2(150) DEFAULT NULL,
30     attribute7  VARCHAR2(150) DEFAULT NULL,
31     attribute8  VARCHAR2(150) DEFAULT NULL,
32     attribute9  VARCHAR2(150) DEFAULT NULL,
33     attribute10 VARCHAR2(150) DEFAULT NULL,
34     attribute11 VARCHAR2(150) DEFAULT NULL,
35     attribute12 VARCHAR2(150) DEFAULT NULL,
36     attribute13 VARCHAR2(150) DEFAULT NULL,
37     attribute14 VARCHAR2(150) DEFAULT NULL,
38     attribute15 VARCHAR2(150) DEFAULT NULL,
39     attribute_category VARCHAR2(30) DEFAULT NULL);
40   --
41   -- Constants
42   --
43 
44   c_max_bulk_fetch_size       CONSTANT NUMBER := 1000;
45 
46   c_revenue_deferral_event    CONSTANT wf_events.name%TYPE :=
47     'oracle.apps.ar.transaction.Invoice.noncollectible';
48 
49   c_rule_object_name          CONSTANT VARCHAR2(30) :=
50     'AR_REVENUE_DEFERRAL_REASONS';
51 
52   c_receipt_application_mode  CONSTANT NUMBER := 1;
53   c_receipt_reversal_mode     CONSTANT NUMBER := 2;
54 
55   c_manual_override_mode      CONSTANT NUMBER := 1;
56   c_acceptance_obtained_mode  CONSTANT NUMBER := 2;
57   c_update_reason_mode        CONSTANT NUMBER := 3;
58 
59   c_earn_revenue	      CONSTANT VARCHAR2(30) := 'EARN';
60   c_unearn_revenue	      CONSTANT VARCHAR2(30) := 'UNEARN';
61 
62   not_analyzed	              CONSTANT NUMBER := 2;
63   collect   		      CONSTANT NUMBER := 1;
64   defer     		      CONSTANT NUMBER := 0;
65 
66   credit    	              CONSTANT NUMBER := 1;
67   payment_term 	              CONSTANT NUMBER := 2;
68 
69   c_recognizable  	      CONSTANT NUMBER := 0;
70   c_cash_based    	      CONSTANT NUMBER := 1;
71   c_contingency_based	      CONSTANT NUMBER := 2;
72   c_combination               CONSTANT NUMBER := 3;
73   c_fully_credited            CONSTANT NUMBER := 9; -- 9320279
74 
75   c_not_recognized	      CONSTANT NUMBER := 0;
76   c_partially_recognized      CONSTANT NUMBER := 1;
77   c_fully_recognized	      CONSTANT NUMBER := 2;
78 
79   c_acceptance_allowed	      CONSTANT NUMBER := 1;
80   c_transaction_not_monitored CONSTANT NUMBER := 2;
81   c_acceptance_not_required   CONSTANT NUMBER := 3;
82 
83   c_revenue_management_source CONSTANT NUMBER := 1;
84 
85   c_yes 		      CONSTANT NUMBER := 0;
86   c_no 		      	      CONSTANT NUMBER := 1;
87 
88   -- seeded contingencies
89   c_pre_billing_acceptance  CONSTANT NUMBER := 1;
90   c_explicit_acceptance     CONSTANT NUMBER := 2;
91   c_customer_credit         CONSTANT NUMBER := 3;
92   c_doubtful_collectibility CONSTANT NUMBER := 4;
93   c_extended_payment_term   CONSTANT NUMBER := 5;
94   c_delivery                CONSTANT NUMBER := 6;
95   c_cancellation            CONSTANT NUMBER := 7;
96   c_fiscal_funcing          CONSTANT NUMBER := 8;
97   c_refund                  CONSTANT NUMBER := 9;
98   c_forfeiture              CONSTANT NUMBER := 10;
99   c_installation            CONSTANT NUMBER := 11;
100   c_okl_collectibility      CONSTANT NUMBER := 12;
101   c_impaird_loans           CONSTANT NUMBER := 13;
102 
103 FUNCTION revenue_management_enabled
104   RETURN BOOLEAN;
105 
106 FUNCTION cash_based (p_customer_trx_id IN NUMBER)
107   RETURN NUMBER;
108 
109 FUNCTION acceptance_allowed (
110   p_customer_trx_id 	 IN NUMBER,
111   p_customer_trx_line_id IN NUMBER)
112   RETURN NUMBER;
113 
114 FUNCTION creditworthy (
115   p_customer_account_id IN NUMBER,
116   p_customer_site_use_id IN NUMBER)
117   RETURN NUMBER;
118 
119 FUNCTION line_collectible (
120   p_customer_trx_id      NUMBER,
121   p_customer_trx_line_id NUMBER DEFAULT NULL)
122   RETURN NUMBER;
123 
124 FUNCTION txn_collectible (p_customer_trx_id IN NUMBER)
125   RETURN BOOLEAN;
126 
127 FUNCTION line_collectibility (
128   p_request_id  NUMBER,
129   p_source      VARCHAR2 DEFAULT NULL,
130   x_error_count OUT NOCOPY NUMBER,
131   p_customer_trx_line_id ra_customer_trx_lines.customer_trx_line_id%TYPE DEFAULT NULL)
132   RETURN long_number_table;
133 
134 FUNCTION line_collectibility(
135   p_customer_trx_id 		NUMBER,
136   p_customer_trx_line_id 	NUMBER)
137   RETURN NUMBER;
138 
139 PROCEDURE delete_failed_rows (p_request_id IN NUMBER);
140 
141 PROCEDURE delete_rejected_rows (p_request_id IN NUMBER);
142 
143 PROCEDURE periodic_sweeper (
144   errbuf   OUT NOCOPY VARCHAR2,
145   retcode  OUT NOCOPY VARCHAR2,
146   p_org_id IN NUMBER);
147 
148 PROCEDURE receipt_analyzer (
149   p_mode 			IN  VARCHAR2 DEFAULT NULL,
150   p_customer_trx_id 		IN  NUMBER   DEFAULT NULL,
151   p_acctd_amount_applied        IN  NUMBER   DEFAULT NULL,
152   p_exchange_rate		IN  NUMBER   DEFAULT NULL,
153   p_invoice_currency_code       IN  VARCHAR2 DEFAULT NULL,
154   p_tax_applied			IN  NUMBER   DEFAULT NULL,
155   p_charges_applied		IN  NUMBER   DEFAULT NULL,
156   p_freight_applied		IN  NUMBER   DEFAULT NULL,
157   p_line_applied 		IN  NUMBER   DEFAULT NULL,
158   p_receivable_application_id   IN  NUMBER   DEFAULT NULL,
159   p_gl_date                     IN  DATE     DEFAULT NULL);
160 
161 PROCEDURE receipt_analyzer (p_request_id IN NUMBER);
162 
163 PROCEDURE revenue_synchronizer (
164   p_mode 			IN  NUMBER    DEFAULT c_manual_override_mode,
165   p_customer_trx_id 		IN  NUMBER,
166   p_customer_trx_line_id 	IN  NUMBER,
167   p_gl_date			IN  DATE      DEFAULT NULL,
168   p_comments			IN  VARCHAR2  DEFAULT NULL,
169   p_ram_desc_flexfield          IN  desc_flexfield,
170   x_scenario 			OUT NOCOPY NUMBER,
171   x_first_adjustment_number 	OUT NOCOPY NUMBER,
172   x_last_adjustment_number 	OUT NOCOPY NUMBER,
173   x_return_status               OUT NOCOPY VARCHAR2,
174   x_msg_count                   OUT NOCOPY NUMBER,
175   x_msg_data                    OUT NOCOPY VARCHAR2);
176 
177 PROCEDURE process_event (
178   p_cust_trx_line_id    IN  NUMBER,
179   p_event_date		IN  DATE,
180   p_event_code          IN  VARCHAR2);
181 
182 PROCEDURE update_line_conts (
183   p_customer_trx_line_id   NUMBER,
184   p_contingency_id         NUMBER,
185   p_expiration_date        DATE      DEFAULT NULL,
186   p_expiration_event_date  DATE      DEFAULT NULL,
187   p_expiration_days        NUMBER    DEFAULT NULL,
188   p_completed_flag         VARCHAR2  DEFAULT NULL,
189   p_reason_removal_date    DATE      DEFAULT NULL);
190 
191 
192 PROCEDURE delete_line_conts (
193   p_customer_trx_line_id   NUMBER,
194   p_contingency_id         NUMBER);
195 
196 /* 5142216 - This function was defined as public so it could be used
197    in sql within the package.  It is not intended for public use...
198    although it technically poses no risk by its exposure */
199 
200 FUNCTION get_line_id (p_so_line_id IN NUMBER) RETURN number;
201 
202 END ar_revenue_management_pvt;