[Home] [Help]
Skip to content
PACKAGE: APPS.AR_CREDIT_MEMO_API_PUB
Source
1 Package AR_CREDIT_MEMO_API_PUB AUTHID CURRENT_USER AS
2 /* $Header: ARWCMAPS.pls 120.10 2011/02/06 09:34:03 manishri ship $ */
3 /*#
4 * Credit Memo Approval and Creation API lets you initiate the creation
5 * of a credit memo against a specified transaction either with or
6 * without an approval process.
7 * @rep:scope public
8 * @rep:metalink 236938.1 See OracleMetaLink note 236938.1
9 * @rep:product AR
10 * @rep:lifecycle active
11 * @rep:displayname Credit Memo Approval and Creation
12 * @rep:category BUSINESS_ENTITY AR_CREDIT_MEMO
13 */
14
15 --Start of comments
16 --API name : ReceiptsAPI
17 --Type : Public.
18 --Function : Create_request, Request_status
19 --Pre-reqs :
20 --
21
22 /*4556000-4606558*/
23 attribute_rec_const arw_cmreq_cover.pq_attribute_rec_type;
24 interface_rec_const arw_cmreq_cover.pq_interface_rec_type;
25 global_attribute_rec_const arw_cmreq_cover.pq_global_attribute_rec_type;
26
27 TYPE interface_line_rec_type IS RECORD(
28 interface_line_context VARCHAR2(30) DEFAULT NULL,
29 interface_line_attribute1 VARCHAR2(30) DEFAULT NULL,
30 interface_line_attribute2 VARCHAR2(30) DEFAULT NULL,
31 interface_line_attribute3 VARCHAR2(30) DEFAULT NULL,
32 interface_line_attribute4 VARCHAR2(30) DEFAULT NULL,
33 interface_line_attribute5 VARCHAR2(30) DEFAULT NULL,
34 interface_line_attribute6 VARCHAR2(30) DEFAULT NULL,
35 interface_line_attribute7 VARCHAR2(30) DEFAULT NULL,
36 interface_line_attribute8 VARCHAR2(30) DEFAULT NULL,
37 interface_line_attribute9 VARCHAR2(30) DEFAULT NULL,
38 interface_line_attribute10 VARCHAR2(30) DEFAULT NULL,
39 interface_line_attribute11 VARCHAR2(30) DEFAULT NULL,
40 interface_line_attribute12 VARCHAR2(30) DEFAULT NULL,
41 interface_line_attribute13 VARCHAR2(30) DEFAULT NULL,
42 interface_line_attribute14 VARCHAR2(30) DEFAULT NULL,
43 interface_line_attribute15 VARCHAR2(30) DEFAULT NULL);
44
45 cm_line_tbl_type_cover arw_cmreq_cover.Cm_Line_Tbl_Type_Cover;
46
47
48 TYPE cm_notes_rec_type_cover IS RECORD
49 (notes ar_notes.text%type);
50
51
52 TYPE cm_notes_tbl_type_cover IS TABLE of cm_notes_rec_type_cover
53 INDEX BY BINARY_INTEGER;
54
55
56 x_cm_notes_tbl cm_notes_tbl_type_cover;
57
58
59 TYPE CM_ACTIVITY_REC_TYPE_COVER is RECORD
60 (begin_date DATE,
61 activity_name VARCHAR2(80),
62 status wf_item_activity_statuses.activity_status%type,
63 result_code wf_item_activity_statuses.activity_result_code%type,
64 user wf_item_activity_statuses.assigned_user%type);
65
66
67 TYPE CM_ACTIVITY_TBL_TYPE_COVER
68 IS TABLE OF
69 CM_ACTIVITY_REC_TYPE_COVER
70 INDEX BY BINARY_INTEGER;
71
72
73 x_cm_activity_tbl CM_ACTIVITY_TBL_TYPE_COVER;
74
75 /*#
76 * Creates the Credit Memo Request workflow process
77 * request.
78 * @rep:scope public
79 * @rep:lifecycle active
80 * @rep:displayname Create Request
81 */
82
83 PROCEDURE create_request (
84 -- standard API parameters
85 p_api_version IN NUMBER,
86 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
87 p_commit IN VARCHAR2 := FND_API.G_FALSE,
88 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
89 x_return_status OUT NOCOPY VARCHAR2,
90 x_msg_count OUT NOCOPY NUMBER,
91 x_msg_data OUT NOCOPY VARCHAR2,
92 -- CREDIT MEMO REQUEST PARAMETERS
93 p_customer_trx_id IN ra_customer_trx.customer_trx_id%type,
94 p_line_credit_flag IN ra_cm_requests.line_credits_flag%type,
95 p_line_amount IN NUMBER := 0,
96 p_tax_amount IN NUMBER := 0,
97 p_freight_amount IN NUMBER := 0,
98 p_cm_reason_code IN VARCHAR2,
99 p_comments IN VARCHAR2 DEFAULT NULL ,
100 p_orig_trx_number IN VARCHAR2 DEFAULT NULL,
101 p_tax_ex_cert_num IN VARCHAR2 DEFAULT NULL,
102 p_request_url IN VARCHAR2 := 'AR_CREDIT_MEMO_API_PUB.print_default_page',
103 p_transaction_url IN VARCHAR2 := 'AR_CREDIT_MEMO_API_PUB.print_default_page',
104 p_trans_act_url IN VARCHAR2 := 'AR_CREDIT_MEMO_API_PUB.print_default_page',
105 p_cm_line_tbl IN Cm_Line_Tbl_Type_Cover%type := cm_line_tbl_type_cover ,
106 -- The following parameters are used if the CM needs to be created directly and not through WF
107 p_skip_workflow_flag IN VARCHAR2 DEFAULT 'N',
108 p_credit_method_installments IN VARCHAR2 DEFAULT NULL,
109 p_credit_method_rules IN VARCHAR2 DEFAULT NULL,
110 p_batch_source_name IN VARCHAR2 DEFAULT NULL,
111 p_org_id IN NUMBER DEFAULT NULL,
112 x_request_id OUT NOCOPY VARCHAR2,
113 /*4606558*/
114 p_attribute_rec IN arw_cmreq_cover.pq_attribute_rec_type DEFAULT
115 attribute_rec_const,
116 p_interface_attribute_rec IN arw_cmreq_cover.pq_interface_rec_type DEFAULT
117 interface_rec_const,
118 p_global_attribute_rec IN arw_cmreq_cover.pq_global_attribute_rec_type DEFAULT
119 global_attribute_rec_const,
120 p_dispute_date IN DATE DEFAULT NULL ,-- Bug 6358930
121 p_internal_comment IN VARCHAR2 DEFAULT NULL ,/*7367350 for handling internal comment insertion*/
122 p_trx_number IN ra_customer_trx.trx_number%type DEFAULT NULL,
123 p_gl_date IN DATE DEFAULT NULL /*Bug 9536019*/
124 );
125
126 /*#
127 * Use this procedure to validate request parameters
128 * passed into the API.
129 * request status.
130 * @rep:scope public
131 * @rep:lifecycle active
132 * @rep:displayname Validate Request Parameter
133 */
134
135 PROCEDURE validate_request_parameters (
136 p_customer_trx_id IN ra_customer_trx.customer_trx_id%type,
137 p_line_credit_flag IN VARCHAR2,
138 p_line_amount IN NUMBER,
139 p_tax_amount IN NUMBER,
140 p_freight_amount IN NUMBER,
141 p_cm_reason_code IN VARCHAR2,
142 p_comments IN VARCHAR2,
143 p_request_url IN VARCHAR2,
144 p_transaction_url IN VARCHAR2,
145 p_trans_act_url IN VARCHAR2,
146 p_cm_line_tbl IN Cm_Line_Tbl_Type_Cover%type ,
147 p_org_id IN NUMBER DEFAULT NULL,
148 l_val_return_status OUT NOCOPY VARCHAR2,
149 p_dispute_date IN DATE DEFAULT NULL -- Bug 6358930
150 );
151
152 /*4606558*/
153 PROCEDURE validate_request_parameters (
154 p_customer_trx_id IN ra_customer_trx.customer_trx_id%type,
155 p_line_credit_flag IN VARCHAR2,
156 p_line_amount IN NUMBER,
157 p_tax_amount IN NUMBER,
158 p_freight_amount IN NUMBER,
159 p_cm_reason_code IN VARCHAR2,
160 p_comments IN VARCHAR2,
161 p_request_url IN VARCHAR2,
162 p_transaction_url IN VARCHAR2,
163 p_trans_act_url IN VARCHAR2,
164 p_cm_line_tbl IN OUT NOCOPY Cm_Line_Tbl_Type_Cover%type ,
165 p_org_id IN NUMBER DEFAULT NULL,
166 l_val_return_status OUT NOCOPY VARCHAR2,
167 /*4606558*/
168 p_skip_workflow_flag IN VARCHAR2,
169 p_batch_source_name IN VARCHAR2,
170 p_trx_number IN ra_customer_trx.trx_number%type DEFAULT NULL,
171 p_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_attribute_rec_type,
172 p_interface_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_interface_rec_type,
173 p_global_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_global_attribute_rec_type,
174 p_dispute_date IN DATE DEFAULT NULL -- Bug 6358930
175 );
176
177 /*#
178 * Use this procedure to view the Credit Memo Request workflow process.
179 * @rep:scope public
180 * @rep:lifecycle active
181 * @rep:displayname View Request Status
182 */
183
184 PROCEDURE get_request_status
185 ( -- standard API parameters
186 p_api_version IN NUMBER,
187 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
188 x_msg_count OUT NOCOPY NUMBER,
189 x_msg_data OUT NOCOPY VARCHAR2,
190 x_return_status OUT NOCOPY VARCHAR2,
191 -- CREDIT MEMO REQUEST PARAMETERS
192 p_request_id IN VARCHAR2,
193 x_status_meaning OUT NOCOPY VARCHAR2,
194 x_reason_meaning OUT NOCOPY VARCHAR2,
195 x_customer_trx_id OUT NOCOPY ra_customer_trx.customer_trx_id%type,
196 x_cm_customer_trx_id OUT NOCOPY ra_customer_trx.customer_trx_id%type,
197 x_line_amount OUT NOCOPY ra_cm_requests.line_amount%type,
198 x_tax_amount OUT NOCOPY ra_cm_requests.tax_amount%type,
199 x_freight_amount OUT NOCOPY ra_cm_requests.freight_amount%type,
200 x_line_credits_flag OUT NOCOPY VARCHAR2,
201 x_created_by OUT NOCOPY wf_users.display_name%type,
202 x_creation_date OUT NOCOPY DATE,
203 x_approval_date OUT NOCOPY DATE,
204 x_comments OUT NOCOPY ra_cm_requests.comments%type,
205 x_cm_line_tbl OUT NOCOPY Cm_Line_Tbl_Type_Cover%type,
206 x_cm_activity_tbl OUT NOCOPY x_cm_activity_tbl%type,
207 x_cm_notes_tbl OUT NOCOPY x_cm_notes_tbl%type
208 );
209
210 PROCEDURE print_default_page;
211 /*4606558*/
212 PROCEDURE Validate_Line_Int_Flex(
213 p_desc_flex_rec IN OUT NOCOPY interface_line_rec_type,
214 p_desc_flex_name IN VARCHAR2,
215 p_return_status IN OUT NOCOPY varchar2
216 );
217
218 PROCEDURE Validate_Int_Desc_Flex(
219 p_desc_flex_rec IN OUT NOCOPY arw_cmreq_cover.pq_interface_rec_type,
220 p_desc_flex_name IN VARCHAR2,
221 p_return_status IN OUT NOCOPY varchar2
222 );
223
224 END AR_CREDIT_MEMO_API_PUB;