1 PACKAGE PO_Document_Control_PVT AUTHID CURRENT_USER AS
2 /* $Header: POXVDCOS.pls 120.10.12020000.2 2013/02/11 02:03:36 vegajula ship $ */
3
4 g_pkg_name CONSTANT VARCHAR2(30) := 'PO_DOCUMENT_CONTROL_PVT';
5
6 -- Global constants to identify the level of the control action
7 g_header_level CONSTANT NUMBER := 0;
8 g_line_level CONSTANT NUMBER := 1;
9 g_shipment_level CONSTANT NUMBER := 2;
10 g_rel_header_level CONSTANT NUMBER := 3;
11 g_rel_shipment_level CONSTANT NUMBER := 4;
12
13 --< Bug 3194665 Start >
14 TYPE g_lookup_code_tbl_type IS TABLE OF PO_LOOKUP_CODES.lookup_code%TYPE
15 INDEX BY BINARY_INTEGER;
16 TYPE g_displayed_field_tbl_type IS TABLE OF PO_LOOKUP_CODES.displayed_field%TYPE
17 INDEX BY BINARY_INTEGER;
18 --< Bug 3194665 End >
19
20 PROCEDURE control_document
21 (p_api_version IN NUMBER,
22 p_init_msg_list IN VARCHAR2,
23 p_commit IN VARCHAR2,
24 x_return_status OUT NOCOPY VARCHAR2,
25 p_doc_type IN VARCHAR2,
26 p_doc_subtype IN VARCHAR2,
27 p_doc_id IN NUMBER,
28 p_doc_line_id IN NUMBER,
29 p_doc_line_loc_id IN NUMBER,
30 p_source IN VARCHAR2,
31 p_action IN VARCHAR2,
32 p_action_date IN DATE,
33 p_cancel_reason IN VARCHAR2,
34 p_cancel_reqs_flag IN VARCHAR2,
35 p_print_flag IN VARCHAR2,
36 p_note_to_vendor IN VARCHAR2,
37 p_use_gldate IN VARCHAR2 DEFAULT NULL, -- <ENCUMBRANCE FPJ>
41 p_online_report_id OUT NOCOPY NUMBER, -- Bug 8831247
38 p_launch_approvals_flag IN VARCHAR2 := 'Y', -- <CancelPO FPJ>
39 p_communication_method_option IN VARCHAR2 DEFAULT NULL, --<HTML Agreements R12>
40 p_communication_method_value IN VARCHAR2 DEFAULT NULL, --<HTML Agreements R12>
42 p_caller IN VARCHAR2 DEFAULT NULL --Bug6603493
43 );
44
45 PROCEDURE init_action_date
46 (p_api_version IN NUMBER,
47 p_init_msg_list IN VARCHAR2,
48 x_return_status OUT NOCOPY VARCHAR2,
49 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
50 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
51 p_doc_id IN NUMBER,
52 x_action_date IN OUT NOCOPY DATE,
53 x_cbc_enabled OUT NOCOPY VARCHAR2);
54
55
56 PROCEDURE get_action_date
57 (p_api_version IN NUMBER,
58 p_init_msg_list IN VARCHAR2,
59 x_return_status OUT NOCOPY VARCHAR2,
60 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
61 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
62 p_doc_id IN NUMBER,
63 p_cbc_enabled IN VARCHAR2,
64 x_action_date OUT NOCOPY DATE);
65
66
67 PROCEDURE val_action_date
68 (p_api_version IN NUMBER,
69 p_init_msg_list IN VARCHAR2,
70 x_return_status OUT NOCOPY VARCHAR2,
71 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
72 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
73 p_doc_id IN NUMBER,
74 p_action IN VARCHAR2,
75 p_action_date IN DATE,
76 p_cbc_enabled IN VARCHAR2,
77 p_po_encumbrance_flag IN VARCHAR2,
78 p_req_encumbrance_flag IN VARCHAR2,
79 p_skip_valid_cbc_acct_date IN VARCHAR2 DEFAULT NULL); --Bug#4569120
80
81
82 PROCEDURE val_control_action
83 (p_api_version IN NUMBER,
84 p_init_msg_list IN VARCHAR2,
85 x_return_status OUT NOCOPY VARCHAR2,
86 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
87 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
88 p_doc_id IN NUMBER,
89 p_doc_line_id IN NUMBER,
90 p_doc_line_loc_id IN NUMBER,
91 p_action IN VARCHAR2,
92 p_agent_id IN PO_HEADERS.agent_id%TYPE,
93 x_control_level OUT NOCOPY NUMBER);
94
95
96 PROCEDURE po_stop_wf_process
97 (p_api_version IN NUMBER,
98 p_init_msg_list IN VARCHAR2,
99 x_return_status OUT NOCOPY VARCHAR2,
100 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
101 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
102 p_doc_id IN NUMBER);
103
104
105 PROCEDURE rel_stop_wf_process
106 (p_api_version IN NUMBER,
107 p_init_msg_list IN VARCHAR2,
108 x_return_status OUT NOCOPY VARCHAR2,
109 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
110 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
111 p_doc_id IN NUMBER);
112
113
114 PROCEDURE create_print_request
115 (p_api_version IN NUMBER,
116 p_init_msg_list IN VARCHAR2,
117 x_return_status OUT NOCOPY VARCHAR2,
118 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
119 p_doc_num IN VARCHAR2,
120 p_rel_doc_num IN VARCHAR2,
121 x_request_id OUT NOCOPY NUMBER);
122
123
124 PROCEDURE update_note_to_vendor
125 (p_api_version IN NUMBER,
126 p_init_msg_list IN VARCHAR2,
127 p_commit IN VARCHAR2,
128 x_return_status OUT NOCOPY VARCHAR2,
129 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
130 p_doc_id IN NUMBER,
131 p_doc_line_id IN NUMBER,
132 p_note_to_vendor IN PO_HEADERS.note_to_vendor%TYPE);
133
134
135 FUNCTION pass_security_check
136 (p_api_version IN NUMBER,
137 p_init_msg_list IN VARCHAR2,
138 x_return_status OUT NOCOPY VARCHAR2,
139 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
140 p_doc_subtype IN PO_DOCUMENT_TYPES.document_subtype%TYPE,
141 p_doc_id IN NUMBER,
142 p_agent_id IN PO_HEADERS.agent_id%TYPE)
143 RETURN BOOLEAN;
144
145
146 FUNCTION has_shipments
147 (p_api_version IN NUMBER,
148 p_init_msg_list IN VARCHAR2,
149 x_return_status OUT NOCOPY VARCHAR2,
150 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
151 p_doc_id IN NUMBER)
152 RETURN BOOLEAN;
153
154
155 FUNCTION has_unencumbered_shipments
156 (p_api_version IN NUMBER,
157 p_init_msg_list IN VARCHAR2,
158 x_return_status OUT NOCOPY VARCHAR2,
159 p_doc_type IN PO_DOCUMENT_TYPES.document_type_code%TYPE,
160 p_doc_id IN NUMBER)
161 RETURN BOOLEAN;
162
163
164 FUNCTION in_open_gl_period
165 (p_api_version IN NUMBER,
166 p_init_msg_list IN VARCHAR2,
167 x_return_status OUT NOCOPY VARCHAR2,
168 p_date IN DATE)
169 RETURN BOOLEAN;
170
171
172 PROCEDURE add_online_report_msgs
173 (p_api_version IN NUMBER,
174 p_init_msg_list IN VARCHAR2,
178 --< Bug 3194665 Start >
175 x_return_status OUT NOCOPY VARCHAR2,
176 p_online_report_id IN NUMBER);
177
179 PROCEDURE get_header_actions
180 ( p_doc_subtype IN VARCHAR2
181 , p_doc_id IN NUMBER
182 , p_agent_id IN NUMBER
183 , x_lookup_code_tbl OUT NOCOPY g_lookup_code_tbl_type
184 , x_displayed_field_tbl OUT NOCOPY g_displayed_field_tbl_type
185 , x_return_status OUT NOCOPY VARCHAR2
186 , p_mode IN VARCHAR2 DEFAULT NULL);--<HTML Agreements R12>
187
188 PROCEDURE get_line_actions
189 ( p_doc_subtype IN VARCHAR2
190 , p_doc_line_id IN NUMBER
191 , p_agent_id IN NUMBER
192 , x_lookup_code_tbl OUT NOCOPY g_lookup_code_tbl_type
193 , x_displayed_field_tbl OUT NOCOPY g_displayed_field_tbl_type
194 , x_return_status OUT NOCOPY VARCHAR2
195 , p_mode IN VARCHAR2 DEFAULT NULL);--<HTML Agreements R12>
196
197 PROCEDURE get_shipment_actions
198 ( p_doc_type IN VARCHAR2
199 , p_doc_subtype IN VARCHAR2
200 , p_doc_line_loc_id IN NUMBER
201 , p_agent_id IN NUMBER
202 , x_lookup_code_tbl OUT NOCOPY g_lookup_code_tbl_type
203 , x_displayed_field_tbl OUT NOCOPY g_displayed_field_tbl_type
204 , x_return_status OUT NOCOPY VARCHAR2
205 , p_mode IN VARCHAR2 DEFAULT NULL);--<HTML Agreements R12>
206
207 PROCEDURE get_rel_header_actions
208 ( p_doc_subtype IN VARCHAR2
209 , p_doc_id IN NUMBER
210 , p_agent_id IN NUMBER
211 , x_lookup_code_tbl OUT NOCOPY g_lookup_code_tbl_type
212 , x_displayed_field_tbl OUT NOCOPY g_displayed_field_tbl_type
213 , x_return_status OUT NOCOPY VARCHAR2
214 );
215
216 PROCEDURE get_rel_shipment_actions
217 ( p_doc_subtype IN VARCHAR2
218 , p_doc_line_loc_id IN NUMBER
219 , p_agent_id IN NUMBER
220 , x_lookup_code_tbl OUT NOCOPY g_lookup_code_tbl_type
221 , x_displayed_field_tbl OUT NOCOPY g_displayed_field_tbl_type
222 , x_return_status OUT NOCOPY VARCHAR2
223 );
224 --< Bug 3194665 End >
225 --<HTML Agreements R12 Start>
226 procedure get_valid_control_actions( p_mode IN VARCHAR2
227 ,p_doc_level IN VARCHAR2
228 ,p_doc_type IN VARCHAR2
229 ,p_doc_header_id IN NUMBER
230 ,p_doc_level_id IN NUMBER
231 ,p_draft_id IN NUMBER -- <Mod Project>
232 ,x_return_status OUT NOCOPY VARCHAR2
233 ,x_valid_ctrl_ctn_tbl OUT NOCOPY PO_TBL_VARCHAR30);
234
235 -- Bug 5000165 Added the x_is_encumbrance_error parameter.
236 procedure process_doc_control_action( p_control_action IN VARCHAR2
237 ,p_mode IN VARCHAR2
238 ,p_doc_level IN VARCHAR2
239 ,p_doc_header_id IN NUMBER
240 ,p_doc_org_id IN NUMBER
241 ,p_doc_line_id IN NUMBER
242 ,p_doc_line_loc_id IN NUMBER
243 ,p_doc_type IN VARCHAR2
244 ,p_doc_subtype IN VARCHAR2
245 ,p_gl_date IN DATE
246 ,p_po_encumbrance_flag IN VARCHAR2
247 ,p_req_encumbrance_flag IN VARCHAR2
248 ,p_use_gldate IN VARCHAR2
249 ,p_reason IN VARCHAR2
250 ,p_note_to_vendor IN VARCHAR2
251 ,p_communication_method IN VARCHAR2
252 ,p_communication_value IN VARCHAR2
253 ,p_cancel_reqs IN VARCHAR2
254 ,x_return_status OUT NOCOPY VARCHAR2
255 ,x_approval_initiated OUT NOCOPY VARCHAR2
256 ,x_cancel_req_flag_reset OUT NOCOPY VARCHAR2
257 ,x_error_msg_tbl OUT NOCOPY PO_TBL_VARCHAR2000
258 ,x_is_encumbrance_error OUT NOCOPY VARCHAR2
259 ,x_online_report_id OUT NOCOPY NUMBER --bug#5055417
260 );
261
262 procedure get_cancel_req_chkbox_attr( p_doc_level_id IN NUMBER
263 ,p_doc_header_id IN NUMBER
264 ,p_doc_level IN VARCHAR2
265 ,p_doc_subtype IN VARCHAR2
266 ,p_cancel_req_on_cancel_po IN VARCHAR2
267 ,x_drop_ship_flag OUT NOCOPY VARCHAR2
268 ,x_labor_expense_req_flag OUT NOCOPY VARCHAR2
269 ,x_svc_line_with_req_flag OUT NOCOPY VARCHAR2
270 ,x_fps_line_ship_with_req_flag OUT NOCOPY VARCHAR2
271 ,x_return_status OUT NOCOPY VARCHAR2);
272 --<HTML Agreements R12 End>
273
274 --------------------------------------------------------------------------------
275 --<Bug 14254141> :Cancel Refactoring Project <Communicate>
276 --Start of Comments
277 --Name: doc_communicate_oncancel
278 --Function:
279 -- called after the successful cancel action
280 -- method to communicate the docuemnt status to the Supplier
281 --Parameters:
282 --IN:
283 -- p_doc_type
284 -- p_doc_subtype
285 -- p_doc_id
286 -- p_communication_method_option
287 -- p_communication_method_value
288
289 --
290 --IN OUT :
291 --OUT :
292
293 -- x_return_status
294 -- FND_API.G_RET_STS_SUCCESS if communicate action succeeds
295 -- FND_API.G_RET_STS_ERROR if communicate action fails
296 -- FND_API.G_RET_STS_UNEXP_ERROR if unexpected error occurs
297 --
298 --End of Comments
299 --------------------------------------------------------------------------------
300
301
302 PROCEDURE doc_communicate_oncancel(
303 p_doc_type IN VARCHAR2,
304 p_doc_subtype IN VARCHAR2,
305 p_doc_id IN NUMBER,
306 p_communication_method_option IN VARCHAR2,
307 p_communication_method_value IN VARCHAR2,
308 x_return_status OUT NOCOPY VARCHAR2
309 );
310
311 --------------------------------------------------------------------------------
312 --<Bug 14254141 :Cancel Refactoring Project
313 --Start of Comments
314 --Name: do_approve_on_cancel
315 --Function:
316 -- called after the successful cancel action
317 -- Aprrove the document if the document's current status is Requires Reapproval
318 -- This will be called if p_launch_approval_flag is 'Y'
319 -- And the docuemnts original status was 'Approved'
320 -- These checks are handled in the caller of this routine
321 --Parameters:
322 --IN:
323 -- p_doc_type
324 -- p_doc_subtype
325 -- p_doc_id
326 -- p_communication_method_option
327 -- p_communication_method_value
328 -- p_source
329 -- p_note_to_vendor
330 --
331 --IN OUT :
332 --OUT :
333 -- x_return_status
334 -- FND_API.G_RET_STS_SUCCESS if communicate action succeeds
335 -- FND_API.G_RET_STS_ERROR if communicate action fails
336 -- FND_API.G_RET_STS_UNEXP_ERROR if unexpected error occurs
337 --
338 --End of Comments
339 --------------------------------------------------------------------------------
340 PROCEDURE do_approve_on_cancel(
341 p_doc_type IN VARCHAR2,
342 p_doc_subtype IN VARCHAR2,
343 p_doc_id IN NUMBER,
344 p_communication_method_option IN VARCHAR2,
345 p_communication_method_value IN VARCHAR2,
346 p_source IN VARCHAR2,
347 p_note_to_vendor IN VARCHAR2,
348 x_exception_msg OUT NOCOPY VARCHAR2,
349 x_return_status OUT NOCOPY VARCHAR2
350 );
351
352
353 END PO_Document_Control_PVT;