[Home] [Help]
PACKAGE: APPS.AR_CREDIT_MEMO_API_PUB
Source
1 Package AR_CREDIT_MEMO_API_PUB AS
2 /* $Header: ARWCMAPS.pls 120.6.12010000.2 2008/09/01 09:57:45 naneja 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 );
123
124 /*#
125 * Use this procedure to validate request parameters
126 * passed into the API.
127 * request status.
128 * @rep:scope public
129 * @rep:lifecycle active
130 * @rep:displayname Validate Request Parameter
131 */
132
133 PROCEDURE validate_request_parameters (
134 p_customer_trx_id IN ra_customer_trx.customer_trx_id%type,
135 p_line_credit_flag IN VARCHAR2,
136 p_line_amount IN NUMBER,
137 p_tax_amount IN NUMBER,
138 p_freight_amount IN NUMBER,
139 p_cm_reason_code IN VARCHAR2,
140 p_comments IN VARCHAR2,
141 p_request_url IN VARCHAR2,
142 p_transaction_url IN VARCHAR2,
143 p_trans_act_url IN VARCHAR2,
144 p_cm_line_tbl IN Cm_Line_Tbl_Type_Cover%type ,
145 p_org_id IN NUMBER DEFAULT NULL,
146 l_val_return_status OUT NOCOPY VARCHAR2,
147 p_dispute_date IN DATE DEFAULT NULL -- Bug 6358930
148 );
149
150 /*4606558*/
151 PROCEDURE validate_request_parameters (
152 p_customer_trx_id IN ra_customer_trx.customer_trx_id%type,
153 p_line_credit_flag IN VARCHAR2,
154 p_line_amount IN NUMBER,
155 p_tax_amount IN NUMBER,
156 p_freight_amount IN NUMBER,
157 p_cm_reason_code IN VARCHAR2,
158 p_comments IN VARCHAR2,
159 p_request_url IN VARCHAR2,
160 p_transaction_url IN VARCHAR2,
161 p_trans_act_url IN VARCHAR2,
162 p_cm_line_tbl IN OUT NOCOPY Cm_Line_Tbl_Type_Cover%type ,
163 p_org_id IN NUMBER DEFAULT NULL,
164 l_val_return_status OUT NOCOPY VARCHAR2,
165 /*4606558*/
166 p_skip_workflow_flag IN VARCHAR2,
167 p_batch_source_name IN VARCHAR2,
168 p_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_attribute_rec_type,
169 p_interface_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_interface_rec_type,
170 p_global_attribute_rec IN OUT NOCOPY arw_cmreq_cover.pq_global_attribute_rec_type,
171 p_dispute_date IN DATE DEFAULT NULL -- Bug 6358930
172 );
173
174 /*#
175 * Use this procedure to view the Credit Memo Request workflow process.
176 * @rep:scope public
177 * @rep:lifecycle active
178 * @rep:displayname View Request Status
179 */
180
181 PROCEDURE get_request_status
182 ( -- standard API parameters
183 p_api_version IN NUMBER,
184 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
185 x_msg_count OUT NOCOPY NUMBER,
186 x_msg_data OUT NOCOPY VARCHAR2,
187 x_return_status OUT NOCOPY VARCHAR2,
188 -- CREDIT MEMO REQUEST PARAMETERS
189 p_request_id IN VARCHAR2,
190 x_status_meaning OUT NOCOPY VARCHAR2,
191 x_reason_meaning OUT NOCOPY VARCHAR2,
192 x_customer_trx_id OUT NOCOPY ra_customer_trx.customer_trx_id%type,
193 x_cm_customer_trx_id OUT NOCOPY ra_customer_trx.customer_trx_id%type,
194 x_line_amount OUT NOCOPY ra_cm_requests.line_amount%type,
195 x_tax_amount OUT NOCOPY ra_cm_requests.tax_amount%type,
196 x_freight_amount OUT NOCOPY ra_cm_requests.freight_amount%type,
197 x_line_credits_flag OUT NOCOPY VARCHAR2,
198 x_created_by OUT NOCOPY wf_users.display_name%type,
199 x_creation_date OUT NOCOPY DATE,
200 x_approval_date OUT NOCOPY DATE,
201 x_comments OUT NOCOPY ra_cm_requests.comments%type,
202 x_cm_line_tbl OUT NOCOPY Cm_Line_Tbl_Type_Cover%type,
203 x_cm_activity_tbl OUT NOCOPY x_cm_activity_tbl%type,
204 x_cm_notes_tbl OUT NOCOPY x_cm_notes_tbl%type
205 );
206
207 PROCEDURE print_default_page;
208 /*4606558*/
209 PROCEDURE Validate_Line_Int_Flex(
210 p_desc_flex_rec IN OUT NOCOPY interface_line_rec_type,
211 p_desc_flex_name IN VARCHAR2,
212 p_return_status IN OUT NOCOPY varchar2
213 );
214
215 PROCEDURE Validate_Int_Desc_Flex(
216 p_desc_flex_rec IN OUT NOCOPY arw_cmreq_cover.pq_interface_rec_type,
217 p_desc_flex_name IN VARCHAR2,
218 p_return_status IN OUT NOCOPY varchar2
219 );
220
221 END AR_CREDIT_MEMO_API_PUB;