DBA Data[Home] [Help]

PACKAGE: APPS.PO_RCO_VALIDATION_PVT

Source


1 PACKAGE po_rco_validation_pvt AUTHID CURRENT_USER AS
2 /* $Header: POXVRCVS.pls 120.6.12020000.4 2013/05/21 09:27:04 bpulivar ship $*/
3 
4   g_pkg_name  CONSTANT    VARCHAR2(30) := 'PO_RCO_VALIDATION_PVT';
5   g_file_name CONSTANT    VARCHAR2(30) := 'POXVRCVS.pls';
6 
7   TYPE change_rec_type IS RECORD(action_type					po_change_requests.action_type%TYPE,
8                                  initiator						po_change_requests.initiator%TYPE,
9                                  request_reason 				po_change_requests.request_reason%TYPE,
10                                  document_type					po_change_requests.document_type%TYPE,
11                                  request_level					po_change_requests.request_level%TYPE,
12                                  request_status 				po_change_requests.request_status%TYPE,
13                                  document_header_id				po_change_requests.document_header_id%TYPE,
14                                  po_release_id					po_change_requests.po_release_id%TYPE,
15                                  document_num					po_change_requests.document_num%TYPE,
16                                  document_revision_num			po_change_requests.document_revision_num%TYPE,
17                                  document_line_id				po_change_requests.document_line_id%TYPE,
18                                  document_line_number			po_change_requests.document_line_number%TYPE,
19                                  document_line_location_id		po_change_requests.document_line_location_id%TYPE,
20                                  document_shipment_number		po_change_requests.document_shipment_number%TYPE,
21                                  document_distribution_id		po_change_requests.document_distribution_id%TYPE,
22                                  document_distribution_number	po_change_requests.document_distribution_number%TYPE,
23                                  parent_line_location_id		po_change_requests.parent_line_location_id%TYPE,
24                                  old_quantity				  	po_change_requests.old_quantity%TYPE,
25                                  new_quantity				  	po_change_requests.new_quantity%TYPE,
26                                  old_date			  			po_change_requests.old_need_by_date%TYPE,
27                                  new_date			  			po_change_requests.new_need_by_date%TYPE,
28                                  old_supplier_part_number		po_change_requests.old_supplier_part_number%TYPE,
29                                  new_supplier_part_number		po_change_requests.new_supplier_part_number%TYPE,
30                                  old_price						po_change_requests.old_price%TYPE,
31                                  new_price						po_change_requests.new_price%TYPE,
32                                  old_supplier_reference_number	po_change_requests.old_supplier_reference_number%TYPE,
33                                  new_supplier_reference_number	po_change_requests.new_supplier_reference_number%TYPE,
34                                  from_header_id 				NUMBER,
35                                  old_currency_unit_price 		po_change_requests.old_currency_unit_price%TYPE,
36                                  new_currency_unit_price 		po_change_requests.new_currency_unit_price%TYPE,
37                                  recoverable_tax			  	po_change_requests.recoverable_tax%TYPE,
38                                  non_recoverable_tax			po_change_requests.nonrecoverable_tax%TYPE,
39                                  requester_id					po_change_requests.requester_id%TYPE,
40                                  referenced_po_header_id		NUMBER,
41                                  referenced_po_document_num		po_change_requests.ref_po_num%TYPE,
42                                  referenced_release_id			NUMBER,
43                                  referenced_release_num			NUMBER,
44                                  old_start_date 			DATE,
45                                  new_start_date 			DATE,
46                                  old_end_date 				DATE,
47                                  new_end_date 				DATE,
48                                  old_budget_amount 			NUMBER,
49                                  new_budget_amount 			NUMBER,
50                                  old_currency_budget_amount		NUMBER,
51                                  new_currency_budget_amount 		NUMBER,
52                                  line_type  				VARCHAR2(60),
53                                  dirty_flag VARCHAR2(1) DEFAULT 'N');
54 
55   TYPE change_tbl_type IS TABLE OF change_rec_type INDEX BY BINARY_INTEGER;
56 
57   TYPE error_rec_type IS RECORD(line_id NUMBER,
58                                 dist_id NUMBER,
59                                 err_count NUMBER,
60                                 err_msg VARCHAR2(2000));
61 
62 
63   TYPE error_tbl_type IS TABLE OF error_rec_type INDEX BY BINARY_INTEGER;
64 
65   PROCEDURE calculate_disttax(p_api_version IN NUMBER,
66                               x_return_status OUT NOCOPY VARCHAR2,
67                               p_dist_id NUMBER,
68                               p_price NUMBER,
69                               p_quantity NUMBER,
70                               p_dist_amount NUMBER,
71                               p_rec_tax OUT NOCOPY NUMBER,
72                               p_nonrec_tax OUT NOCOPY NUMBER);
73 
74 
75   PROCEDURE is_req_line_changeable(p_api_version IN NUMBER,
76                                    x_return_status OUT NOCOPY VARCHAR2,
77                                    p_req_line_id IN NUMBER,
78                                    p_price_changeable_flag OUT NOCOPY VARCHAR2,
79                                    p_date_changeable_flag OUT NOCOPY VARCHAR2,
80                                    p_qty_changeable_flag OUT NOCOPY VARCHAR2,
81                                    p_start_date_changeable_flag OUT NOCOPY VARCHAR2,
82                                    p_end_date_changeable_flag OUT NOCOPY VARCHAR2,
83                                    p_amount_changeable_flag OUT NOCOPY VARCHAR2,
84                                    p_cancellable_flag OUT NOCOPY VARCHAR2);
85 
86   PROCEDURE is_req_line_cancellable(p_api_version IN NUMBER,
87                                     x_return_status OUT NOCOPY VARCHAR2,
88                                     p_req_line_id IN NUMBER,
89                                     p_origin IN VARCHAR2);
90 
91   PROCEDURE save_ireqchange(p_api_version IN NUMBER,
92                             x_return_status OUT NOCOPY VARCHAR2,
93                             p_req_hdr_id IN NUMBER,
94                             p_change_table IN po_req_change_table,
95                             p_cancel_table IN po_req_cancel_table,
96                             p_change_request_group_id OUT NOCOPY NUMBER,
97                             x_retmsg OUT NOCOPY VARCHAR2,
98                             x_errtable OUT NOCOPY po_req_change_err_table);
99 
100   PROCEDURE save_ireqcancel(p_api_version IN NUMBER,
101                             x_return_status OUT NOCOPY VARCHAR2,
102                             p_req_hdr_id IN NUMBER,
103                             p_cancel_table IN po_req_cancel_table,
104                             p_change_request_group_id OUT NOCOPY NUMBER,
105                             l_progress OUT NOCOPY VARCHAR2,
106                             p_grp_id IN NUMBER);
107 
108 
109   PROCEDURE save_reqchange(p_api_version IN NUMBER,
110                            x_return_status OUT NOCOPY VARCHAR2,
111                            p_req_hdr_id IN NUMBER,
112                            p_change_table IN po_req_change_table,
113                            p_cancel_table IN po_req_cancel_table,
114                            p_change_request_group_id OUT NOCOPY NUMBER,
115                            x_retmsg OUT NOCOPY VARCHAR2,
116                            x_errtable OUT NOCOPY po_req_change_err_table);
117 
118   PROCEDURE save_reqcancel(p_api_version IN NUMBER,
119                            x_return_status OUT NOCOPY VARCHAR2,
120                            p_req_hdr_id IN NUMBER,
121                            p_cancel_table IN po_req_cancel_table,
122                            p_change_request_group_id OUT NOCOPY NUMBER,
123                            x_retmsg OUT NOCOPY VARCHAR2,
124                            p_grp_id IN NUMBER);
125 
126   PROCEDURE submit_ireqchange (
127                                p_api_version IN NUMBER,
128                                x_return_status OUT NOCOPY VARCHAR2,
129                                p_group_id IN NUMBER,
130                                p_fundscheck_flag IN VARCHAR2,
131                                p_note_to_approver IN VARCHAR2,
132                                p_initiator IN VARCHAR2,
133                                x_retmsg OUT NOCOPY VARCHAR2,
134                                x_errcode OUT NOCOPY VARCHAR2,
135                                x_errtable OUT NOCOPY po_req_change_err_table);
136 
137   PROCEDURE submit_reqchange (
138                               p_api_version IN NUMBER,
139                               x_return_status OUT NOCOPY VARCHAR2,
140                               p_group_id IN NUMBER,
141                               p_fundscheck_flag IN VARCHAR2,
142                               p_note_to_approver IN VARCHAR2,
143                               p_initiator IN VARCHAR2,
144                               x_retmsg OUT NOCOPY VARCHAR2,
145                               x_errcode OUT NOCOPY VARCHAR2,
146                               x_errtable OUT NOCOPY po_req_change_err_table);
147 
148   PROCEDURE submit_ireqcancel (
149                                p_api_version IN NUMBER,
150                                x_return_status OUT NOCOPY VARCHAR2,
151                                p_group_id IN NUMBER,
152                                x_retmsg OUT NOCOPY VARCHAR2,
153                                p_errtable OUT NOCOPY po_req_change_err_table,
154                                p_origin IN VARCHAR2);
155 
156   PROCEDURE submit_reqcancel (
157                               p_api_version IN NUMBER,
158                               x_return_status OUT NOCOPY VARCHAR2,
159                               p_group_id IN NUMBER,
160                               x_retmsg OUT NOCOPY VARCHAR2,
161                               p_errtable OUT NOCOPY po_req_change_err_table,
162                               p_origin IN VARCHAR2);
163 
164   PROCEDURE is_internal_line_cancellable(p_api_version IN NUMBER,
165                                          x_return_status OUT NOCOPY VARCHAR2,
166                                          p_req_line_id IN NUMBER);
167 
168 
169   PROCEDURE is_on_complex_work_order(p_line_loc_id IN NUMBER,
170                                      x_return_status OUT NOCOPY VARCHAR2);
171 
172   PROCEDURE is_complex_work_order(p_header_id IN NUMBER,
173                                     x_return_status OUT NOCOPY VARCHAR2);
174 
175   PROCEDURE get_preparer_name(
176                               p_req_hdr_id                  IN             NUMBER
177                               ,  x_preparer_name                OUT NOCOPY    VARCHAR2
178                               ,  x_return_status     OUT       NOCOPY VARCHAR2
179 
180                               );
181 
182  /* PROCEDURE update_reqcancel_from_so(
183                                      p_req_hdr_id                  IN            NUMBER
184                                      ,  p_req_line_id                  IN            NUMBER
185                                      ,  x_return_status               OUT NOCOPY     VARCHAR2
186                                      ) ;*/
187 
188 
189   PROCEDURE update_reqcancel_from_so(p_req_line_id       IN            NUMBER
190      	          , p_req_cancel_qty   IN            NUMBER
191                                     , p_req_cancel_all   IN            BOOLEAN
192                                     ,x_return_status     OUT       NOCOPY VARCHAR2 );
193 
194   PROCEDURE update_reqchange_from_so(
195                                      p_req_line_id                  IN           NUMBER
196                                      ,  p_delta_quantity               IN           NUMBER
197                                      ,  p_new_need_by_date             IN           DATE
198                                      ,  x_return_status               OUT NOCOPY     VARCHAR2
199                                      );
200 
201   PROCEDURE is_internal_line_changeable(p_api_version IN NUMBER
202                                      ,  X_Update_Allowed OUT NOCOPY VARCHAR2
203                                      ,  X_Cancel_Allowed OUT NOCOPY VARCHAR2
204                                      ,  x_return_status OUT NOCOPY VARCHAR2
205                                      ,   p_req_line_id IN NUMBER);
206 
207   procedure validate_internal_req_changes(
208                                   p_req_line_id    IN NUMBER
209                                 , p_req_header_id  IN NUMBER
210                                 , p_need_by_date        IN  DATE DEFAULT NULL
211                                 , p_old_quantity       IN  NUMBER DEFAULT 0
212                                 , p_new_quantity       IN  NUMBER DEFAULT 0
213                                 ,  X_return_status           OUT NOCOPY VARCHAR2
214                                 );
215 
216 PROCEDURE is_SO_line_cancellable(p_api_version IN NUMBER,
217                                          x_return_status OUT NOCOPY VARCHAR2,
218                                          p_req_line_id IN NUMBER,
219                                          p_req_header_id IN NUMBER,
220                                          x_cancellable OUT NOCOPY VARCHAR2 );
221 
222 -- 14227140 changes starts
223 /**
224 * Procedure to update the cancel qty in req line from SO
225 * This method is called when a SO initiated partial
226 * cancellation of Qty (Primary or Secondary) or cancellation of line.
227 *
228 
229 * @param p_req_line_id number canceled req line
230 * @param p_req_can_prim_qty number canceled Prim Qty of req line
231 * @param p_req_can_sec_qty number canceled Secondary Qty of req line
232 * @param p_req_can_all boolean to hole weather req line cancelation flag
233 * @param x_return_status returns the tstatus of the api.
234 */
235  PROCEDURE update_reqcancel_from_so(  p_req_line_id       IN           NUMBER
236                                     , p_req_cancel_prim_qty   IN            NUMBER
237                                     , p_req_cancel_sec_qty   IN        NUMBER
238                                     , p_req_cancel_all   IN            BOOLEAN
239                                     ,x_return_status     OUT       NOCOPY VARCHAR2 );
240 
241 /**
242 * Procedure to update the Qty changes on req line from SO changes
243 * This method is called when a SO initiated change in Qty (Primary or Secondary).
244 *
245 * @param p_req_line_id number holds the req line number
246 * @param p_delta_quantity_prim number changed Prim Qty of SO
247 * @param p_delta_quantity_sec number changed Secondary Qty of SO
248 * @param p_new_need_by_date date need by date of SO.
249 * @param x_return_status returns the tstatus of the api
250 */
251 
252  PROCEDURE update_reqchange_from_so(
253                                         p_req_line_id                  IN           NUMBER
254                                      ,  p_delta_quantity_prim          IN           NUMBER
255                                      ,  p_delta_quantity_sec           IN           NUMBER
256                                      ,  p_new_need_by_date             IN           DATE
257                                      ,  x_return_status               OUT NOCOPY     VARCHAR2
258                                      );
259 
260 -- 14227140 changes ends
261 
262 -- 15875594 changes starts
263 /**
264 * Procedure to clear the change request attachments added at line level
265 * before inistiating the change request
266 * (To clear the attachments that are left unprocessed in change request flow).
267 *
268 * @param p_req_hdr_id number holds the req header id
269 * @param x_return_status returns the tstatus of the api
270 */
271  PROCEDURE del_req_line_chng_attachments(p_req_hdr_id IN NUMBER,
272                                      x_return_status OUT NOCOPY VARCHAR2);
273 -- 15875594 changes ends
274 
275 
276 -- 16839471  changes starts
277 /**
278 * Procedure to clear the change request attachments added at line level
279 *
280 * @param p_req_line_id number holds the req line id
281 * @param x_return_status returns the tstatus of the api
282 */
283  PROCEDURE del_chng_req_line_attachments(p_req_line_id IN NUMBER,
284                                      x_return_status OUT NOCOPY VARCHAR2);
285 -- 16839471 changes ends
286 
287 END po_rco_validation_pvt;