1 PACKAGE PO_VAL_HEADERS2 AS
2 -- $Header: PO_VAL_HEADERS2.pls 120.11.12010000.2 2008/08/04 08:41:15 rramasam ship $
3
4 -------------------------------------------------------------------------
5 -- po_header_id cannot be null and must not exist in Transaction header table.
6 -- Called for the create case.
7 -------------------------------------------------------------------------
8 PROCEDURE po_header_id(p_id_tbl IN po_tbl_number,
9 p_po_header_id_tbl IN po_tbl_number,
10 x_result_set_id IN OUT NOCOPY NUMBER,
11 x_result_type OUT NOCOPY VARCHAR2);
12
13 -------------------------------------------------------------------------
14 -- type_lookup_code cannot be null and must be equal to
15 -- BLANKET, STANDARD or QUOTATION.
16 -------------------------------------------------------------------------
17 PROCEDURE type_lookup_code(p_id_tbl IN po_tbl_number,
18 p_type_lookup_code_tbl IN po_tbl_varchar30,
19 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
20 x_result_type OUT NOCOPY VARCHAR2);
21
22 -----------------------------------------------------------------------------------------
23 -- document_num must not null, must be unique, greater than or equal to zero and be of the correct type.
24 -----------------------------------------------------------------------------------------
25 PROCEDURE document_num(
26 p_id_tbl IN po_tbl_number,
27 p_po_header_id_tbl IN po_tbl_number,
28 p_document_num_tbl IN po_tbl_varchar30,
29 p_type_lookup_code_tbl IN po_tbl_varchar30,
30 p_manual_po_num_type IN VARCHAR2,
31 p_manual_quote_num_type IN VARCHAR2,
32 x_results IN OUT NOCOPY po_validation_results_type,
33 x_result_set_id IN OUT NOCOPY NUMBER,
34 x_result_type OUT NOCOPY VARCHAR2);
35
36 -------------------------------------------------------------------------
37 -- validate currency_code not null and against FND_CURRENCIES.
38 -------------------------------------------------------------------------
39 PROCEDURE currency_code(p_id_tbl IN po_tbl_number,
40 p_currency_code_tbl IN po_tbl_varchar30,
41 x_result_set_id IN OUT NOCOPY NUMBER,
42 x_result_type OUT NOCOPY VARCHAR2);
43
44 -------------------------------------------------------------------------
45 -- If currency_code equals functional currency code, rate_type, rate_date and rate must be null.
46 -- If currency_code does not equal functional currency code, validate rate_type not null,
47 -- validate rate_type against gl_daily_conversion_type_v, validate rate is not null and positive,
48 -- validate rate against g1_currency_api.get_rate().
49 -------------------------------------------------------------------------
50 PROCEDURE rate_info(p_id_tbl IN po_tbl_number,
51 p_currency_code_tbl IN PO_TBL_VARCHAR30,
52 p_rate_type_tbl IN PO_TBL_VARCHAR30,
53 p_rate_tbl IN po_tbl_number,
54 p_rate_date_tbl IN po_tbl_date,
55 p_func_currency_code IN VARCHAR2,
56 p_set_of_books_id IN NUMBER,
57 x_result_set_id IN OUT NOCOPY NUMBER,
58 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
59 x_result_type OUT NOCOPY VARCHAR2);
60
61 -------------------------------------------------------------------------
62 -- Agent Id must not be null and validate against PO_AGENTS.
63 -------------------------------------------------------------------------
64 PROCEDURE agent_id(p_id_tbl IN po_tbl_number,
65 p_agent_id_tbl IN po_tbl_number,
66 x_result_set_id IN OUT NOCOPY NUMBER,
67 x_result_type OUT NOCOPY VARCHAR2);
68
69 -------------------------------------------------------------------------
70 -- validate vendorId is Not Null
71 -- validate vendorSiteId is Not Null
72 -- validate vendor_id using po_suppliers_val_v
73 -- validate vendor_site_id using po_supplier_sites_val_v
74 -- validate vendor_contact_id using po_vendor_contacts
75 -- validate vendor site CCR if approval status is APPROVED.
76 -------------------------------------------------------------------------
77 PROCEDURE vendor_info(p_id_tbl IN po_tbl_number,
78 p_vendor_id_tbl IN po_tbl_number,
79 p_vendor_site_id_tbl IN po_tbl_number,
80 p_vendor_contact_id_tbl IN po_tbl_number,
81 p_federal_instance IN VARCHAR,
82 x_result_set_id IN OUT NOCOPY NUMBER,
83 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
84 x_result_type OUT NOCOPY VARCHAR2);
85
86 -------------------------------------------------------------------------
87 -- ShipToLocationId must not be null and valid in HR_LOCATIONS.
88 -------------------------------------------------------------------------
89 PROCEDURE ship_to_location_id(p_id_tbl IN po_tbl_number,
90 p_ship_to_location_id_tbl IN po_tbl_number,
91 -- Bug 7007502: Added new param p_type_lookup_code_tbl
92 p_type_lookup_code_tbl IN po_tbl_varchar30,
93 x_result_set_id IN OUT NOCOPY NUMBER,
94 x_result_type OUT NOCOPY VARCHAR2);
95
96 -------------------------------------------------------------------------
97 -- BillToLocationId must not be null and validate against HR_LOCATIONS.
98 -------------------------------------------------------------------------
99 PROCEDURE bill_to_location_id(p_id_tbl IN po_tbl_number,
100 p_bill_to_location_id_tbl IN po_tbl_number,
101 -- Bug 7007502: Added new param p_type_lookup_code_tbl
102 p_type_lookup_code_tbl IN po_tbl_varchar30,
103 x_result_set_id IN OUT NOCOPY NUMBER,
104 x_result_type OUT NOCOPY VARCHAR2);
105
106 -------------------------------------------------------------------------
107 -- validate ship_via_lookup_code against ORG_FREIGHT
108 -------------------------------------------------------------------------
109 PROCEDURE ship_via_lookup_code(p_id_tbl IN po_tbl_number,
110 p_ship_via_lookup_code_tbl IN PO_TBL_VARCHAR30,
111 p_inventory_org_id IN NUMBER,
112 x_result_set_id IN OUT NOCOPY NUMBER,
113 x_result_type OUT NOCOPY VARCHAR2);
114
115 -------------------------------------------------------------------------
116 -- validate fob_lookup_code against PO_LOOKUP_CODES
117 -------------------------------------------------------------------------
118 PROCEDURE fob_lookup_code(p_id_tbl IN po_tbl_number,
119 p_fob_lookup_code_tbl IN PO_TBL_VARCHAR30,
120 x_result_set_id IN OUT NOCOPY NUMBER,
121 x_result_type OUT NOCOPY VARCHAR2);
122
123 -------------------------------------------------------------------------
124 -- validate freight_terms_lookup_code against PO_LOOKUP_CODES
125 -------------------------------------------------------------------------
126 PROCEDURE freight_terms_lookup_code(p_id_tbl IN po_tbl_number,
127 p_freight_terms_lookup_tbl IN PO_TBL_VARCHAR30,
128 x_result_set_id IN OUT NOCOPY NUMBER,
129 x_result_type OUT NOCOPY VARCHAR2);
130
131 -------------------------------------------------------------------------
132 -- validate shipping_control against PO_LOOKUP_CODES
133 -------------------------------------------------------------------------
134 PROCEDURE shipping_control(p_id_tbl IN po_tbl_number,
135 p_shipping_control_tbl IN PO_TBL_VARCHAR30,
136 x_result_set_id IN OUT NOCOPY NUMBER,
137 x_result_type OUT NOCOPY VARCHAR2);
138
139 -------------------------------------------------------------------------
140 -- validate acceptance_due_date is not null if acceptance_required_flag = Y.
141 -- Only called for Blanket and SPO.
142 -------------------------------------------------------------------------
143 PROCEDURE acceptance_due_date(p_id_tbl IN po_tbl_number,
144 p_acceptance_reqd_flag_tbl IN PO_TBL_VARCHAR1,
145 p_acceptance_due_date_tbl IN po_tbl_date,
146 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
147 x_result_type OUT NOCOPY VARCHAR2);
148
149 -------------------------------------------------------------------------
150 -- validate cancel_flag = N. Only called for Blanket and SPO.
151 -------------------------------------------------------------------------
152 PROCEDURE cancel_flag(p_id_tbl IN po_tbl_number,
153 p_cancel_flag_tbl IN PO_TBL_VARCHAR1,
154 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
155 x_result_type OUT NOCOPY VARCHAR2);
156
157 -------------------------------------------------------------------------
158 -- validate closed_code = OPEN. Only called for Blanket and SPO.
159 -------------------------------------------------------------------------
160 PROCEDURE closed_code(p_id_tbl IN po_tbl_number,
161 p_closed_code_tbl IN PO_TBL_VARCHAR30,
162 p_acceptance_reqd_flag_tbl IN PO_TBL_VARCHAR1,
163 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
164 x_result_type OUT NOCOPY VARCHAR2);
165
166 -------------------------------------------------------------------------
167 -- validate print_count = 0. Only called for Blanket and SPO.
168 -------------------------------------------------------------------------
169 PROCEDURE print_count(p_id_tbl IN po_tbl_number,
170 p_print_count_tbl IN po_tbl_number,
171 p_approval_status_tbl IN PO_TBL_VARCHAR30,
172 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
173 x_result_type OUT NOCOPY VARCHAR2);
174
175 -------------------------------------------------------------------------
176 -- validate approval_status = INCOMPLETE, APPROVED, INITIATE APPROVAL.
177 -- Only called for Blanket and SPO.
178 -------------------------------------------------------------------------
179 PROCEDURE approval_status(p_id_tbl IN po_tbl_number,
180 p_approval_status_tbl IN PO_TBL_VARCHAR30,
181 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
182 x_result_type OUT NOCOPY VARCHAR2);
183
184 -------------------------------------------------------------------------
185 -- validate amount_to_encumber > 0
186 -------------------------------------------------------------------------
187 PROCEDURE amount_to_encumber(p_id_tbl IN po_tbl_number,
188 p_amount_to_encumber_tbl IN po_tbl_number,
189 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
190 x_result_type OUT NOCOPY VARCHAR2);
191
192 ------------------------------------------------------------------------------
193 -- Validate style_id exists in system, is active and is not enabled for complex work.
194 ------------------------------------------------------------------------------
195 PROCEDURE style_id(p_id_tbl IN po_tbl_number,
196 p_style_id_tbl IN po_tbl_number,
197 x_result_set_id IN OUT NOCOPY NUMBER,
198 x_result_type OUT NOCOPY VARCHAR2);
199
200 -- bug4911388
201 -------------------------------------------------------------------------
202 -- validate that acceptance_reuqired_flag has correct value
203 -------------------------------------------------------------------------
204 PROCEDURE acceptance_required_flag
205 ( p_id_tbl IN PO_TBL_NUMBER,
206 p_type_lookup_code_tbl IN PO_TBL_VARCHAR30,
207 p_acceptance_required_flag_tbl IN PO_TBL_VARCHAR1,
208 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
209 x_result_type OUT NOCOPY VARCHAR2
210 );
211
212
213 -- bug5352625
214 -------------------------------------------------------------------------
215 -- validate that amount limit is valid
216 -------------------------------------------------------------------------
217 PROCEDURE amount_limit
218 ( p_id_tbl IN PO_TBL_NUMBER,
219 p_amount_limit_tbl IN PO_TBL_NUMBER,
220 p_amount_agreed_tbl IN PO_TBL_NUMBER,
221 x_results IN OUT NOCOPY PO_VALIDATION_RESULTS_TYPE,
222 x_result_type OUT NOCOPY VARCHAR2
223 );
224
225
226 END PO_VAL_HEADERS2;