1 PACKAGE PO_DOCUMENT_ACTION_UTIL AS
2 -- $Header: POXDAULS.pls 120.0 2005/06/02 15:09:18 appldev noship $
3
4 -- Global Constants
5
6
7 -- Global Types
8
9 TYPE DOC_STATE_ARRAY_TBL_TYPE IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
10
11 TYPE DOC_STATE_REC_TYPE IS RECORD
12 (
13 auth_states DOC_STATE_ARRAY_TBL_TYPE,
14 closed_states DOC_STATE_ARRAY_TBL_TYPE,
15 hold_flag VARCHAR(1),
16 frozen_flag VARCHAR(1),
17 fully_reserved_flag VARCHAR(1)
18 );
19
20
21 -- Methods
22
23
24 FUNCTION check_doc_state(
25 p_document_id IN NUMBER
26 , p_document_type IN VARCHAR2
27 , p_line_id IN NUMBER DEFAULT NULL
28 , p_shipment_id IN NUMBER DEFAULT NULL
29 , p_allowed_states IN PO_DOCUMENT_ACTION_UTIL.DOC_STATE_REC_TYPE
30 , x_return_status OUT NOCOPY VARCHAR2
31 ) RETURN BOOLEAN;
32
33
34 PROCEDURE get_doc_preparer_id(
35 p_document_id IN NUMBER
36 , p_document_type IN VARCHAR2
37 , x_return_status OUT NOCOPY VARCHAR2
38 , x_preparer_id OUT NOCOPY NUMBER
39 );
40
41 PROCEDURE get_employee_id(
42 p_user_id IN NUMBER
43 , x_return_status OUT NOCOPY VARCHAR2
44 , x_employee_flag OUT NOCOPY BOOLEAN
45 , x_employee_id OUT NOCOPY NUMBER
46 );
47
48
49 PROCEDURE get_employee_info(
50 p_user_id IN NUMBER
51 , x_return_status OUT NOCOPY VARCHAR2
52 , x_employee_flag OUT NOCOPY BOOLEAN
53 , x_employee_id OUT NOCOPY NUMBER
54 , x_employee_name OUT NOCOPY VARCHAR2
55 , x_location_id OUT NOCOPY NUMBER
56 , x_location_code OUT NOCOPY VARCHAR2
57 , x_is_buyer_flag OUT NOCOPY BOOLEAN
58 );
59
60 PROCEDURE change_doc_auth_state(
61 p_document_id IN NUMBER
62 , p_document_type IN VARCHAR2
63 , p_document_subtype IN VARCHAR2
64 , p_action IN VARCHAR2
65 , p_fwd_to_id IN NUMBER
66 , p_offline_code IN VARCHAR2
67 , p_approval_path_id IN NUMBER
68 , p_note IN VARCHAR2
69 , p_new_status IN VARCHAR2
70 , p_notify_action IN VARCHAR2
71 , p_notify_employee IN NUMBER
72 , x_return_status OUT NOCOPY VARCHAR2
73 );
74
75
76 PROCEDURE handle_ctl_action_history(
77 p_document_id IN NUMBER
78 , p_document_type IN VARCHAR2
79 , p_document_subtype IN VARCHAR2
80 , p_line_id IN NUMBER
81 , p_shipment_id IN NUMBER
82 , p_action IN VARCHAR2
83 , p_reason IN VARCHAR2
84 , p_user_id IN NUMBER
85 , p_login_id IN NUMBER
86 , x_return_status OUT NOCOPY VARCHAR2
87 );
88
89 END PO_DOCUMENT_ACTION_UTIL;