1 PACKAGE BIS_BUCKET_PVT AS
2 /* $Header: BISVBKTS.pls 120.0 2005/06/01 16:45:00 appldev noship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):='BIS_BUCKET_PVT';
5
6 c_bucket_att CONSTANT VARCHAR2(20) := 'BUCKET_MEASURE';
7
8 --Record type added for validation
9 TYPE BIS_BUCKET_RANGES_REC IS RECORD(
10 RANGE_NAME BIS_BUCKET_TL.range1_name%TYPE
11 ,RANGE_LOW BIS_BUCKET.range1_low%TYPE
12 ,RANGE_HIGH BIS_BUCKET.range1_high%TYPE
13 );
14
15 TYPE BIS_BUCKET_RANGES_TBL IS TABLE OF BIS_BUCKET_RANGES_REC INDEX BY BINARY_INTEGER;
16
17 TYPE RangeLabels IS VARRAY(20) OF BIS_BUCKET_CUSTOMIZATIONS_TL.range1_name%TYPE;
18
19 --Called by Java API
20 --It should take all the data passed to it and builds a record of type BIS_BUCKET_REC_TYPE
21 --and call BIS_BUCKET_PVT. CREATE_BIS_BUCKET with it.
22 PROCEDURE CREATE_BIS_BUCKET_WRAPPER (
23 p_short_name IN BIS_BUCKET.short_name%TYPE
24 ,p_name IN BIS_BUCKET_TL.name%TYPE
25 ,p_type IN BIS_BUCKET.type%TYPE
26 ,p_application_id IN BIS_BUCKET.application_id%TYPE
27 ,p_range1_name IN BIS_BUCKET_TL.range1_name%TYPE
28 ,p_range1_low IN BIS_BUCKET.range1_low%TYPE
29 ,p_range1_high IN BIS_BUCKET.range1_high%TYPE
30 ,p_range2_name IN BIS_BUCKET_TL.range2_name%TYPE
31 ,p_range2_low IN BIS_BUCKET.range2_low%TYPE
32 ,p_range2_high IN BIS_BUCKET.range2_high%TYPE
33 ,p_range3_name IN BIS_BUCKET_TL.range3_name%TYPE
34 ,p_range3_low IN BIS_BUCKET.range3_low%TYPE
35 ,p_range3_high IN BIS_BUCKET.range3_high%TYPE
36 ,p_range4_name IN BIS_BUCKET_TL.range4_name%TYPE
37 ,p_range4_low IN BIS_BUCKET.range4_low%TYPE
38 ,p_range4_high IN BIS_BUCKET.range4_high%TYPE
39 ,p_range5_name IN BIS_BUCKET_TL.range5_name%TYPE
40 ,p_range5_low IN BIS_BUCKET.range5_low%TYPE
41 ,p_range5_high IN BIS_BUCKET.range5_high%TYPE
42 ,p_range6_name IN BIS_BUCKET_TL.range6_name%TYPE
43 ,p_range6_low IN BIS_BUCKET.range6_low%TYPE
44 ,p_range6_high IN BIS_BUCKET.range6_high%TYPE
45 ,p_range7_name IN BIS_BUCKET_TL.range7_name%TYPE
46 ,p_range7_low IN BIS_BUCKET.range7_low%TYPE
47 ,p_range7_high IN BIS_BUCKET.range7_high%TYPE
48 ,p_range8_name IN BIS_BUCKET_TL.range8_name%TYPE
49 ,p_range8_low IN BIS_BUCKET.range8_low%TYPE
50 ,p_range8_high IN BIS_BUCKET.range8_high%TYPE
51 ,p_range9_name IN BIS_BUCKET_TL.range9_name%TYPE
52 ,p_range9_low IN BIS_BUCKET.range9_low%TYPE
53 ,p_range9_high IN BIS_BUCKET.range9_high%TYPE
54 ,p_range10_name IN BIS_BUCKET_TL.range10_name%TYPE
55 ,p_range10_low IN BIS_BUCKET.range10_low%TYPE
56 ,p_range10_high IN BIS_BUCKET.range10_high%TYPE
57 ,p_description IN BIS_BUCKET_TL.description%TYPE
58 ,p_updatable IN BIS_BUCKET.updatable%TYPE := 'F'
59 ,p_expandable IN BIS_BUCKET.expandable%TYPE := 'F'
60 ,p_discontinuous IN BIS_BUCKET.discontinuous%TYPE := 'F'
61 ,p_overlapping IN BIS_BUCKET.overlapping%TYPE := 'F'
62 ,p_uom IN BIS_BUCKET.uom%TYPE
63 ,x_return_status OUT NOCOPY VARCHAR2
64 ,x_error_msg OUT NOCOPY VARCHAR2
65 );
66
67
68 --Called by Java API
69 --It should take all the data passed to it and builds a record of type BIS_BUCKET_REC_TYPE
70 --and call BIS_BUCKET_PVT. UPDATE_BIS_BUCKET with it.
71 PROCEDURE UPDATE_BIS_BUCKET_WRAPPER (
72 p_bucket_id IN BIS_BUCKET.bucket_id%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
73 ,p_short_name IN BIS_BUCKET.short_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
74 ,p_name IN BIS_BUCKET_TL.name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
75 ,p_type IN BIS_BUCKET.type%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
76 ,p_application_id IN BIS_BUCKET.application_id%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
77 ,p_range1_name IN BIS_BUCKET_TL.range1_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
78 ,p_range1_low IN BIS_BUCKET.range1_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
79 ,p_range1_high IN BIS_BUCKET.range1_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
80 ,p_range2_name IN BIS_BUCKET_TL.range2_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
81 ,p_range2_low IN BIS_BUCKET.range2_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
82 ,p_range2_high IN BIS_BUCKET.range2_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
83 ,p_range3_name IN BIS_BUCKET_TL.range3_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
84 ,p_range3_low IN BIS_BUCKET.range3_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
85 ,p_range3_high IN BIS_BUCKET.range3_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
86 ,p_range4_name IN BIS_BUCKET_TL.range4_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
87 ,p_range4_low IN BIS_BUCKET.range4_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
88 ,p_range4_high IN BIS_BUCKET.range4_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
89 ,p_range5_name IN BIS_BUCKET_TL.range5_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
90 ,p_range5_low IN BIS_BUCKET.range5_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
91 ,p_range5_high IN BIS_BUCKET.range5_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
92 ,p_range6_name IN BIS_BUCKET_TL.range6_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
93 ,p_range6_low IN BIS_BUCKET.range6_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
94 ,p_range6_high IN BIS_BUCKET.range6_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
95 ,p_range7_name IN BIS_BUCKET_TL.range7_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
96 ,p_range7_low IN BIS_BUCKET.range7_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
97 ,p_range7_high IN BIS_BUCKET.range7_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
98 ,p_range8_name IN BIS_BUCKET_TL.range8_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
99 ,p_range8_low IN BIS_BUCKET.range8_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
100 ,p_range8_high IN BIS_BUCKET.range8_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
101 ,p_range9_name IN BIS_BUCKET_TL.range9_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
102 ,p_range9_low IN BIS_BUCKET.range9_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
103 ,p_range9_high IN BIS_BUCKET.range9_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
104 ,p_range10_name IN BIS_BUCKET_TL.range10_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
105 ,p_range10_low IN BIS_BUCKET.range10_low%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
106 ,p_range10_high IN BIS_BUCKET.range10_high%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
107 ,p_description IN BIS_BUCKET_TL.description%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
108 ,p_updatable IN BIS_BUCKET.updatable%TYPE := 'F'
109 ,p_expandable IN BIS_BUCKET.expandable%TYPE := 'F'
110 ,p_discontinuous IN BIS_BUCKET.discontinuous%TYPE := 'F'
111 ,p_overlapping IN BIS_BUCKET.overlapping%TYPE := 'F'
112 ,p_uom IN BIS_BUCKET.uom%TYPE
113 ,x_return_status OUT NOCOPY VARCHAR2
114 ,x_error_msg OUT NOCOPY VARCHAR2
115 );
116
117 PROCEDURE UPDATE_CUST_BUCKET (
118 p_commit IN VARCHAR2 := FND_API.G_FALSE
119 , p_id IN BIS_BUCKET_CUSTOMIZATIONS.id%TYPE
120 , p_bucket_id IN BIS_BUCKET_CUSTOMIZATIONS.bucket_id%TYPE
121 , p_user_id IN BIS_BUCKET_CUSTOMIZATIONS.user_id%TYPE
122 , p_responsibility_id IN BIS_BUCKET_CUSTOMIZATIONS.responsibility_id%TYPE
123 , p_application_id IN BIS_BUCKET_CUSTOMIZATIONS.application_id%TYPE
124 , p_org_id IN BIS_BUCKET_CUSTOMIZATIONS.org_id%TYPE
125 , p_site_id IN BIS_BUCKET_CUSTOMIZATIONS.site_id%TYPE
126 , p_page_id IN BIS_BUCKET_CUSTOMIZATIONS.page_id%TYPE
127 , p_function_id IN BIS_BUCKET_CUSTOMIZATIONS.function_id%TYPE
128 , p_range1_low IN BIS_BUCKET_CUSTOMIZATIONS.range1_low%TYPE
129 , p_range1_high IN BIS_BUCKET_CUSTOMIZATIONS.range1_high%TYPE
130 , p_range2_low IN BIS_BUCKET_CUSTOMIZATIONS.range2_low%TYPE
131 , p_range2_high IN BIS_BUCKET_CUSTOMIZATIONS.range2_high%TYPE
132 , p_range3_low IN BIS_BUCKET_CUSTOMIZATIONS.range3_low%TYPE
133 , p_range3_high IN BIS_BUCKET_CUSTOMIZATIONS.range3_high%TYPE
134 , p_range4_low IN BIS_BUCKET_CUSTOMIZATIONS.range4_low%TYPE
135 , p_range4_high IN BIS_BUCKET_CUSTOMIZATIONS.range4_high%TYPE
136 , p_range5_low IN BIS_BUCKET_CUSTOMIZATIONS.range5_low%TYPE
137 , p_range5_high IN BIS_BUCKET_CUSTOMIZATIONS.range5_high%TYPE
138 , p_range6_low IN BIS_BUCKET_CUSTOMIZATIONS.range6_low%TYPE
139 , p_range6_high IN BIS_BUCKET_CUSTOMIZATIONS.range6_high%TYPE
140 , p_range7_low IN BIS_BUCKET_CUSTOMIZATIONS.range7_low%TYPE
141 , p_range7_high IN BIS_BUCKET_CUSTOMIZATIONS.range7_high%TYPE
142 , p_range8_low IN BIS_BUCKET_CUSTOMIZATIONS.range8_low%TYPE
143 , p_range8_high IN BIS_BUCKET_CUSTOMIZATIONS.range8_high%TYPE
144 , p_range9_low IN BIS_BUCKET_CUSTOMIZATIONS.range9_low%TYPE
145 , p_range9_high IN BIS_BUCKET_CUSTOMIZATIONS.range9_high%TYPE
146 , p_range10_low IN BIS_BUCKET_CUSTOMIZATIONS.range10_low%TYPE
147 , p_range10_high IN BIS_BUCKET_CUSTOMIZATIONS.range10_high%TYPE
148 , p_range1_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range1_name%TYPE
149 , p_range2_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range2_name%TYPE
150 , p_range3_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range3_name%TYPE
151 , p_range4_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range4_name%TYPE
152 , p_range5_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range5_name%TYPE
153 , p_range6_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range6_name%TYPE
154 , p_range7_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range7_name%TYPE
155 , p_range8_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range8_name%TYPE
156 , p_range9_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range9_name%TYPE
157 , p_range10_name IN BIS_BUCKET_CUSTOMIZATIONS_TL.range10_name%TYPE
158 , p_customized IN BIS_BUCKET_CUSTOMIZATIONS.customized%TYPE
159 , p_deleted_ranges IN VARCHAR2
160 , p_new_ranges IN VARCHAR2
161 , x_return_status OUT NOCOPY VARCHAR2
162 , x_msg_count OUT NOCOPY NUMBER
163 , x_msg_data OUT NOCOPY VARCHAR2
164 );
165
166 PROCEDURE reset_bucket (
167 p_bucket_id IN NUMBER
168 );
169
170 --Called by Java API
171 --It should call BIS_BUCKET_PVT. RETRIEVE _BIS_BUCKET with the short name
172 --and using the record of type BIS_BUCKET_REC_TYPE data obtained from that procedure,
173 --it should populates the out parameters
174 PROCEDURE RETRIEVE_BIS_BUCKET_WRAPPER (
175 p_short_name IN BIS_BUCKET.short_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
176 ,x_bucket_id OUT NOCOPY BIS_BUCKET.bucket_id%TYPE
177 ,x_name OUT NOCOPY BIS_BUCKET_TL.name%TYPE
178 ,x_type OUT NOCOPY BIS_BUCKET.type%TYPE
179 ,x_application_id OUT NOCOPY BIS_BUCKET.application_id%TYPE
180 ,x_range1_name OUT NOCOPY BIS_BUCKET_TL.range1_name%TYPE
181 ,x_range1_low OUT NOCOPY BIS_BUCKET.range1_low%TYPE
182 ,x_range1_high OUT NOCOPY BIS_BUCKET.range1_high%TYPE
183 ,x_range2_name OUT NOCOPY BIS_BUCKET_TL.range2_name%TYPE
184 ,x_range2_low OUT NOCOPY BIS_BUCKET.range2_low%TYPE
185 ,x_range2_high OUT NOCOPY BIS_BUCKET.range2_high%TYPE
186 ,x_range3_name OUT NOCOPY BIS_BUCKET_TL.range3_name%TYPE
187 ,x_range3_low OUT NOCOPY BIS_BUCKET.range3_low%TYPE
188 ,x_range3_high OUT NOCOPY BIS_BUCKET.range3_high%TYPE
189 ,x_range4_name OUT NOCOPY BIS_BUCKET_TL.range4_name%TYPE
190 ,x_range4_low OUT NOCOPY BIS_BUCKET.range4_low%TYPE
191 ,x_range4_high OUT NOCOPY BIS_BUCKET.range4_high%TYPE
192 ,x_range5_name OUT NOCOPY BIS_BUCKET_TL.range5_name%TYPE
193 ,x_range5_low OUT NOCOPY BIS_BUCKET.range5_low%TYPE
194 ,x_range5_high OUT NOCOPY BIS_BUCKET.range5_high%TYPE
195 ,x_range6_name OUT NOCOPY BIS_BUCKET_TL.range6_name%TYPE
196 ,x_range6_low OUT NOCOPY BIS_BUCKET.range6_low%TYPE
197 ,x_range6_high OUT NOCOPY BIS_BUCKET.range6_high%TYPE
198 ,x_range7_name OUT NOCOPY BIS_BUCKET_TL.range7_name%TYPE
199 ,x_range7_low OUT NOCOPY BIS_BUCKET.range7_low%TYPE
200 ,x_range7_high OUT NOCOPY BIS_BUCKET.range7_high%TYPE
201 ,x_range8_name OUT NOCOPY BIS_BUCKET_TL.range8_name%TYPE
202 ,x_range8_low OUT NOCOPY BIS_BUCKET.range8_low%TYPE
203 ,x_range8_high OUT NOCOPY BIS_BUCKET.range8_high%TYPE
204 ,x_range9_name OUT NOCOPY BIS_BUCKET_TL.range9_name%TYPE
205 ,x_range9_low OUT NOCOPY BIS_BUCKET.range9_low%TYPE
206 ,x_range9_high OUT NOCOPY BIS_BUCKET.range9_high%TYPE
207 ,x_range10_name OUT NOCOPY BIS_BUCKET_TL.range10_name%TYPE
208 ,x_range10_low OUT NOCOPY BIS_BUCKET.range10_low%TYPE
209 ,x_range10_high OUT NOCOPY BIS_BUCKET.range10_high%TYPE
210 ,x_description OUT NOCOPY BIS_BUCKET_TL.description%TYPE
211 ,x_updatable OUT NOCOPY BIS_BUCKET.updatable%TYPE
212 ,x_expandable OUT NOCOPY BIS_BUCKET.expandable%TYPE
213 ,x_discontinuous OUT NOCOPY BIS_BUCKET.discontinuous%TYPE
214 ,x_overlapping OUT NOCOPY BIS_BUCKET.overlapping%TYPE
215 ,x_uom OUT NOCOPY BIS_BUCKET.uom%TYPE
216 ,x_return_status OUT NOCOPY VARCHAR2
217 ,x_error_msg OUT NOCOPY VARCHAR2
218 );
219
220
221 PROCEDURE DELETE_BIS_BUCKET_WRAPPER (
222 p_bucket_id IN BIS_BUCKET.bucket_id%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
223 ,p_short_name IN BIS_BUCKET.short_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
224 ,x_return_status OUT NOCOPY VARCHAR2
225 ,x_error_msg OUT NOCOPY VARCHAR2
226 );
227
228 --This API should generate the bucket_id in sequence and insert the data passed to it,
229 --into the tables BIS_BUCKET, BIS_BUCKET_TL and BIS_BUCKET_TYPE
230 PROCEDURE CREATE_BIS_BUCKET (
231 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
232 ,x_return_status OUT NOCOPY VARCHAR2
233 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
234 );
235
236
237 --This API should update the tables BIS_BUCKET, BIS_BUCKET_TL and BIS_BUCKET_TYPE
238 --using the short name or the bucket id as the where clause value
239 PROCEDURE UPDATE_BIS_BUCKET (
240 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
241 ,x_return_status OUT NOCOPY VARCHAR2
242 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
243 );
244
245
246 --This API should delete a row from the tables BIS_BUCKET and BIS_BUCKET_TL
247 --using the short name or the bucket id as the where clause value
248 PROCEDURE DELETE_BIS_BUCKET (
249 p_bucket_id IN BIS_BUCKET.bucket_id%TYPE := BIS_UTILITIES_PUB.G_NULL_NUM
250 ,p_short_name IN BIS_BUCKET.short_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
251 ,x_return_status OUT NOCOPY VARCHAR2
252 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
253 );
254
255
256 --This API should populate a record of type bis_bucket_rec_type based on the bucket short name
257 PROCEDURE RETRIEVE_BIS_BUCKET (
258 p_short_name IN BIS_BUCKET.short_name%TYPE := BIS_UTILITIES_PUB.G_NULL_CHAR
259 ,x_bis_bucket_rec OUT NOCOPY BIS_BUCKET_PUB.bis_bucket_rec_type
260 ,x_return_status OUT NOCOPY VARCHAR2
261 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
262 );
263
264 PROCEDURE TRANSLATE_BUCKET (
265 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
266 ,p_owner IN VARCHAR2
267 ,x_return_status OUT NOCOPY VARCHAR2
268 ,x_error_Tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
269 );
270 --=============================================================================
271 FUNCTION IS_BUCKET_TYPE_EXISTS (
272 p_bucket_type IN VARCHAR2
273 ) RETURN BOOLEAN;
274 --=============================================================================
275 PROCEDURE Validate_Bucket (
276 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
277 ,x_return_status OUT NOCOPY VARCHAR2
278 ,x_error_Tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
279 );
280 --=============================================================================
281
282 --=============================================================================
283 --API for returning the report lists that using the specified bucket.
284 --=============================================================================
285 FUNCTION GET_REPORT_LISTS (
286 p_bucket_short_name IN VARCHAR2 DEFAULT NULL
287 ,p_bucket_id IN NUMBER DEFAULT NULL
288 ) return VARCHAR2;
289
290 --=============================================================================
291 --API for populating the table of records with low and high range values
292 --Needed for range validations -- overlappig and discontinous.
293 --=============================================================================
294 PROCEDURE Populate_Loc_Bucket_Range_Tbl
295 (
296 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
297 ,x_bucket_ranges_tbl OUT NOCOPY BIS_BUCKET_PVT.bis_bucket_ranges_tbl
298 ,x_return_status OUT NOCOPY VARCHAR2
299 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
300 );
301
302
303 --=============================================================================
304 --API for validating the overlapping feature of the bucket
305 -- If it allows overlapping, no validation is needed.
306 -- Validation is only needed if it doesn't allow overlapping.
307 --=============================================================================
308 PROCEDURE Validate_Bucket_Overlapping (
309 p_overlapping IN VARCHAR2
310 ,p_bucket_ranges_tbl IN BIS_BUCKET_PVT.bis_bucket_ranges_tbl
311 ,x_return_status OUT NOCOPY VARCHAR2
312 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
313 );
314
315
316 --=============================================================================
317 --API for validating the discontinuous feature of the bucket
318 -- If it allows discontinuous, no validation is needed.
319 -- Validation is only needed if it doesn't allow discontinuous.
320 --=============================================================================
321 PROCEDURE Validate_Bucket_Discontinuous (
322 p_discontinuous IN VARCHAR2
323 ,p_bucket_ranges_tbl IN BIS_BUCKET_PVT.bis_bucket_ranges_tbl
324 ,x_return_status OUT NOCOPY VARCHAR2
325 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
326 );
327
328 --=============================================================================
329 --API for validating that the FROM is always less than or equal to TO
330 --=============================================================================
331 PROCEDURE Validate_From_To (
332 p_bucket_ranges_tbl IN BIS_BUCKET_PVT.bis_bucket_ranges_tbl
333 ,x_return_status OUT NOCOPY VARCHAR2
334 ,x_error_tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
335 );
336
337 PROCEDURE VALIDATE_BUCKET_WRAPPER (
338 p_short_name IN BIS_BUCKET.short_name%TYPE
339 ,p_name IN BIS_BUCKET_TL.name%TYPE
340 ,p_type IN BIS_BUCKET.type%TYPE
341 ,p_application_id IN BIS_BUCKET.application_id%TYPE
342 ,p_range1_name IN BIS_BUCKET_TL.range1_name%TYPE
343 ,p_range1_low IN BIS_BUCKET.range1_low%TYPE
344 ,p_range1_high IN BIS_BUCKET.range1_high%TYPE
345 ,p_range2_name IN BIS_BUCKET_TL.range2_name%TYPE
346 ,p_range2_low IN BIS_BUCKET.range2_low%TYPE
347 ,p_range2_high IN BIS_BUCKET.range2_high%TYPE
348 ,p_range3_name IN BIS_BUCKET_TL.range3_name%TYPE
349 ,p_range3_low IN BIS_BUCKET.range3_low%TYPE
350 ,p_range3_high IN BIS_BUCKET.range3_high%TYPE
351 ,p_range4_name IN BIS_BUCKET_TL.range4_name%TYPE
352 ,p_range4_low IN BIS_BUCKET.range4_low%TYPE
353 ,p_range4_high IN BIS_BUCKET.range4_high%TYPE
354 ,p_range5_name IN BIS_BUCKET_TL.range5_name%TYPE
355 ,p_range5_low IN BIS_BUCKET.range5_low%TYPE
356 ,p_range5_high IN BIS_BUCKET.range5_high%TYPE
357 ,p_range6_name IN BIS_BUCKET_TL.range6_name%TYPE
358 ,p_range6_low IN BIS_BUCKET.range6_low%TYPE
359 ,p_range6_high IN BIS_BUCKET.range6_high%TYPE
360 ,p_range7_name IN BIS_BUCKET_TL.range7_name%TYPE
361 ,p_range7_low IN BIS_BUCKET.range7_low%TYPE
362 ,p_range7_high IN BIS_BUCKET.range7_high%TYPE
363 ,p_range8_name IN BIS_BUCKET_TL.range8_name%TYPE
364 ,p_range8_low IN BIS_BUCKET.range8_low%TYPE
365 ,p_range8_high IN BIS_BUCKET.range8_high%TYPE
366 ,p_range9_name IN BIS_BUCKET_TL.range9_name%TYPE
367 ,p_range9_low IN BIS_BUCKET.range9_low%TYPE
368 ,p_range9_high IN BIS_BUCKET.range9_high%TYPE
369 ,p_range10_name IN BIS_BUCKET_TL.range10_name%TYPE
370 ,p_range10_low IN BIS_BUCKET.range10_low%TYPE
371 ,p_range10_high IN BIS_BUCKET.range10_high%TYPE
372 ,p_description IN BIS_BUCKET_TL.description%TYPE
373 ,p_updatable IN BIS_BUCKET.updatable%TYPE := 'F'
374 ,p_expandable IN BIS_BUCKET.expandable%TYPE := 'F'
375 ,p_discontinuous IN BIS_BUCKET.discontinuous%TYPE := 'F'
376 ,p_overlapping IN BIS_BUCKET.overlapping%TYPE := 'F'
377 ,p_uom IN BIS_BUCKET.uom%TYPE
378 ,x_return_status OUT NOCOPY VARCHAR2
379 ,x_error_msg OUT NOCOPY VARCHAR2
380 );
381
382 FUNCTION IS_VALID_APPLICATION_ID (
383 p_application_id IN NUMBER
384 ) RETURN BOOLEAN;
385
386 PROCEDURE Validate_Bucket_Common (
387 p_bis_bucket_rec IN BIS_BUCKET_PUB.bis_bucket_rec_type
388 ,x_return_status OUT NOCOPY VARCHAR2
389 ,x_error_Tbl OUT NOCOPY BIS_UTILITIES_PUB.Error_Tbl_Type
390 );
391
392 PROCEDURE ADD_LANGUAGE;
393
394 END BIS_BUCKET_PVT;