1 PACKAGE CN_MULTI_RATE_SCHEDULES_PUB AS
2 /*$Header: cnprschs.pls 120.2 2005/11/07 16:55:34 jxsingh noship $*/
3 /*#
4 * This package is used to perform the following procedures related to rate tables.
5 * Create Schedule
6 * Update Schedule
7 * Delete Schedule
8 * Create Dimension Assign
9 * Update Dimension Assign
10 * Delete Dimension Assign
11 * Update Rate
12 * Create Dimension
13 * Update Dimension
14 * Delete Dimension
15 * Create Tier
16 * Update Tier
17 * Delete Tier
18 * @rep:scope public
19 * @rep:product CN
20 * @rep:displayname Rate Tables Public Application Program Interface
21 * @rep:lifecycle active
22 * @rep:compatibility S
23 * @rep:category BUSINESS_ENTITY CN_COMP_PLANS
24 */
25
26 -- This is the record type for rate dimension assignments. Each contains
27 -- a rate schedule name and rate dimension name (they have to be unique),
28 -- a sequence number, and the object version number (for locking)
29 TYPE dim_assign_rec_type IS RECORD
30 (rate_schedule_name CN_RATE_SCHEDULES.NAME%TYPE,
31 rate_dim_name CN_RATE_DIMENSIONS.NAME%TYPE,
32 rate_dim_sequence CN_RATE_SCH_DIMS.RATE_DIM_SEQUENCE%TYPE,
33 object_version_number CN_RATE_DIMENSIONS.OBJECT_VERSION_NUMBER%TYPE);
34
35 TYPE dim_assign_tbl_type IS TABLE OF dim_assign_rec_type INDEX BY BINARY_INTEGER;
36
37 -- Each rate tier has type=AMOUNT, PERCENT, EXPRESSION, or STRING.
38 -- If type is AMOUNT, select the minimum and maximum value for value1 and value2,
39 -- If type is PERCENT, select the minimum and maximum percent for value1 and value2,
40 -- If type is EXPRESSION, select expressions for minimum and maximum values by their
41 -- name for value1 and value2
42 -- If type is STRING, select the string value for value1 (leave value2 blank).
43 TYPE rate_tier_rec_type IS RECORD
44 (tier_sequence CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE,
45 value1 VARCHAR2(80),
46 value2 VARCHAR2(80),
47 object_version_number CN_RATE_DIM_TIERS.OBJECT_VERSION_NUMBER%TYPE);
48
49 TYPE rate_tier_tbl_type IS TABLE OF rate_tier_rec_type INDEX BY BINARY_INTEGER;
50
51 TYPE tier_coordinates_tbl IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
52
53 -- Default empty tables
54 g_miss_dim_assign_tbl dim_assign_tbl_type;
55 g_miss_rate_tier_tbl rate_tier_tbl_type;
56
57 -- Create rate schedule and schedule dimensions
58 -- Select a name, a commission unit code (AMOUNT or PERCENT), and a table of rate
59 -- dimensions. For each dimension assignment, select a rate dimension by its name
60 -- and a sequence number (counting up, starting from one). Leave the rate schedule name
61 -- and object_version_number blank. This API creates the rate schedule, assigns the
62 -- dimensions, and creates the appropriate set of tiers. The original object_version_number
63 -- is zero. When tiers are first created their commission amounts are null.
64 -- They can be set using the Update_Tier API.
65
66 /*#
67 * This procedure creates a rate schedule with the given specifications. It also lets the user to assign rate dimensions at the same time.
68 * @param p_api_version API version
69 * @param p_init_msg_list Initialize message list (default F)
70 * @param p_commit Commit flag (default F)
71 * @param p_validation_level Validation level (default 100)
72 * @param x_return_status Return Status
73 * @param x_msg_count Number of messages returned
74 * @param x_msg_data Contents of message if x_msg_count = 1
75 * @param p_name Rate schedule name
76 * @param p_commission_unit_code Commission unit (AMOUNT or PERCENT)
77 * @param p_dims_tbl Dimension assignment table (default empty table)
78 * @rep:scope public
79 * @rep:lifecycle active
80 * @rep:displayname Create Rate Schedule
81
82 */
83
84 PROCEDURE Create_Schedule
85 (p_api_version IN NUMBER,
86 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
87 p_commit IN VARCHAR2 := FND_API.G_FALSE,
88 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
89 p_name IN CN_RATE_SCHEDULES.NAME%TYPE,
90 p_commission_unit_code IN CN_RATE_SCHEDULES.COMMISSION_UNIT_CODE%TYPE,
91 p_dims_tbl IN dim_assign_tbl_type := g_miss_dim_assign_tbl,
92 -- Start - MOAC Change
93 p_org_id IN CN_RATE_SCHEDULES.ORG_ID%TYPE := NULL,
94 -- End - MOAC Change
95 x_return_status OUT NOCOPY VARCHAR2,
96 x_msg_count OUT NOCOPY NUMBER,
97 x_msg_data OUT NOCOPY VARCHAR2);
98
99 -- Update rate schedule and schedule dimensions
100 -- Identify the rate schedule to pass by its original name, select a new name,
101 -- commission_unit_code and dimension assignment table as in the create API.
102 -- If the dimension assignment table is empty or not passed in, only the name and
103 -- commission_unit_code will be updated and the tiers are not affected. Otherwise,
104 -- the table is rebuilt according to the new set of dimension assignments and the
105 -- tiers are re-created (resetting the commission amounts). If all the validations
106 -- pass, the rate schedule is updated and its object version number is incremented.
107
108 /*#
109 * This procedure creates a rate schedule with the given specifications. It also lets the user to assign rate dimensions at the same time.
110 * @param p_api_version API version
111 * @param p_init_msg_list Initialize message list (default F)
112 * @param p_commit Commit flag (default F)
113 * @param p_validation_level Validation level (default 100)
114 * @param x_return_status Return Status
115 * @param x_msg_count Number of messages returned
116 * @param x_msg_data Contents of message if x_msg_count = 1
117 * @param p_original_name Original rate schedule name
118 * @param p_new_name New name (leave off if no change)
119 * @param p_commission_unit_code Commission unit (AMOUNT or PERCENT)
120 * @param p_object_version_number Object version
121 * @param p_dims_tbl Dimension assignment table (default empty table)
122 * @rep:scope public
123 * @rep:lifecycle active
124 * @rep:displayname Update Rate Schedule
125 */
126
127 PROCEDURE Update_Schedule
128 (p_api_version IN NUMBER,
129 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
130 p_commit IN VARCHAR2 := FND_API.G_FALSE,
131 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
132 p_original_name IN CN_RATE_SCHEDULES.NAME%TYPE,
133 p_new_name IN CN_RATE_SCHEDULES.NAME%TYPE :=
134 cn_api.g_miss_char,
135 p_commission_unit_code IN CN_RATE_SCHEDULES.COMMISSION_UNIT_CODE%TYPE :=
136 cn_api.g_miss_char,
137 p_object_version_number IN OUT NOCOPY CN_RATE_SCHEDULES.OBJECT_VERSION_NUMBER%TYPE,
138 p_dims_tbl IN dim_assign_tbl_type := g_miss_dim_assign_tbl,
139 -- Start - MOAC Change
140 p_org_id IN CN_RATE_SCHEDULES.ORG_ID%TYPE,
141 -- End - MOAC Change
142 x_return_status OUT NOCOPY VARCHAR2,
143 x_msg_count OUT NOCOPY NUMBER,
144 x_msg_data OUT NOCOPY VARCHAR2);
145
146 -- Delete rate schedule, dimension assignments, and rate tiers.
147 -- Identify the rate schedule to be deleted by its name.
148 /*#
149 * This procedure deletes a rate schedule.
150 * @param p_api_version API version
151 * @param p_init_msg_list Initialize message list (default F)
152 * @param p_commit Commit flag (default F)
153 * @param p_validation_level Validation level (default 100)
154 * @param x_return_status Return Status
155 * @param x_msg_count Number of messages returned
156 * @param x_msg_data Contents of message if x_msg_count = 1
157 * @param p_name Rate Schedule Name
158 * @rep:scope public
159 * @rep:lifecycle active
160 * @rep:displayname Delete Rate Schedule
161 */
162
163 PROCEDURE Delete_Schedule
164 (p_api_version IN NUMBER,
165 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
166 p_commit IN VARCHAR2 := FND_API.G_FALSE,
167 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
168 p_name IN CN_RATE_SCHEDULES.NAME%TYPE,
169 -- Start - R12 MOAC Changes
170 p_object_version_number IN CN_RATE_SCHEDULES.OBJECT_VERSION_NUMBER%TYPE, -- new
171 -- End - R12 MOAC Changes
172 x_return_status OUT NOCOPY VARCHAR2,
173 x_msg_count OUT NOCOPY NUMBER,
174 x_msg_data OUT NOCOPY VARCHAR2);
175
176 -- Assign a rate dimension to an existing rate schedule. Identify the rate schedule
177 -- and its dimension by name. Also give the sequence number indicating where you want
178 -- to insert the dimension. If a dimension is inserted in the middle, all the existing
179 -- dimension assignments with equal or higher sequence number are pushed up by one sequence
180 -- number.
181
182 /*#
183 * This procedure assigns a new rate dimension to the given rate schedule.
184 * @param p_api_version API version
185 * @param p_init_msg_list Initialize message list (default F)
186 * @param p_commit Commit flag (default F)
187 * @param p_validation_level Validation level (default 100)
188 * @param x_return_status Return Status
189 * @param x_msg_count Number of messages returned
190 * @param x_msg_data Contents of message if x_msg_count = 1
191 * @param p_rate_schedule_name Rate schedule name
192 * @param p_rate_dimension_name Rate dimension name
193 * @param p_rate_dim_sequence Rate dimension sequence
194 * @rep:scope public
195 * @rep:lifecycle active
196 * @rep:displayname Assign Rate Dimension to a rate schedule
197 */
198
199 PROCEDURE Create_Dimension_Assign
200 (p_api_version IN NUMBER,
201 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
202 p_commit IN VARCHAR2 := FND_API.G_FALSE,
203 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
204 p_rate_schedule_name IN CN_RATE_SCHEDULES.NAME%TYPE,
205 p_rate_dimension_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
206 p_rate_dim_sequence IN CN_RATE_SCH_DIMS.RATE_DIM_SEQUENCE%TYPE,
207 -- Start - MOAC Change
208 p_org_id IN CN_RATE_DIMENSIONS.ORG_ID%TYPE := NULL,
209 -- End - MOAC Change
210 x_return_status OUT NOCOPY VARCHAR2,
211 x_msg_count OUT NOCOPY NUMBER,
212 x_msg_data OUT NOCOPY VARCHAR2);
213
214 -- Update a rate dimension to an existing rate schedule. Pass in the rate schedule name
215 -- according to which rate schedule you wish to update, and pass in the original and
216 -- new dimension name according to the dimension you wish to reassign. Finally pass in the
217 -- rate dimension sequence number and object_version_number. If you do not pass in the
218 -- rate dimension sequence, the new dimension takes the same sequence number.
219
220 /*#
221 * This procedure updates a given rate dimension assignment.
222 * @param p_api_version API version
223 * @param p_init_msg_list Initialize message list (default F)
224 * @param p_commit Commit flag (default F)
225 * @param p_validation_level Validation level (default 100)
226 * @param x_return_status Return Status
227 * @param x_msg_count Number of messages returned
228 * @param x_msg_data Contents of message if x_msg_count = 1
229 * @param p_rate_schedule_name Rate schedule name
230 * @param p_orig_rate_dim_name Original rate dimension
231 * @param p_new_rate_dim_name New rate dimension (if changing)
232 * @param p_rate_dim_sequence Rate dimension sequence
233 * @param p_object_version_number Object version
234 * @rep:scope public
235 * @rep:lifecycle active
236 * @rep:displayname Update assignment of rate dimension to rate schedule
237 */
238
239 PROCEDURE Update_Dimension_Assign
240 (p_api_version IN NUMBER,
241 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
242 p_commit IN VARCHAR2 := FND_API.G_FALSE,
243 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
244 p_rate_schedule_name IN CN_RATE_SCHEDULES.NAME%TYPE,
245 p_orig_rate_dim_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
246 p_new_rate_dim_name IN CN_RATE_DIMENSIONS.NAME%TYPE := cn_api.g_miss_char,
247 p_rate_dim_sequence IN CN_RATE_SCH_DIMS.RATE_DIM_SEQUENCE%TYPE :=
248 cn_api.g_miss_num,
249 p_object_version_number IN OUT NOCOPY CN_RATE_SCH_DIMS.OBJECT_VERSION_NUMBER%TYPE,
250 -- Start - MOAC Change
251 p_org_id IN CN_RATE_DIMENSIONS.ORG_ID%TYPE,
252 -- End - MOAC Change
253 x_return_status OUT NOCOPY VARCHAR2,
254 x_msg_count OUT NOCOPY NUMBER,
255 x_msg_data OUT NOCOPY VARCHAR2);
256
257 -- Delete a rate dimension assignment by identifying the rate schedule and rate dimension
258 -- name.
259
260 /*#
261 * This procedure deletes a rate dimension assignment.
262 * @param p_api_version API version
263 * @param p_init_msg_list Initialize message list (default F)
264 * @param p_commit Commit flag (default F)
265 * @param p_validation_level Validation level (default 100)
266 * @param x_return_status Return Status
267 * @param x_msg_count Number of messages returned
268 * @param x_msg_data Contents of message if x_msg_count = 1
269 * @param p_rate_schedule_name Rate schedule name
270 * @param p_rate_dimension_name New rate dimension (if changing)
271 * @rep:lifecycle active
272 * @rep:displayname Delete rate dimension assignment to rate schedule
273 */
274
275 PROCEDURE Delete_Dimension_Assign
276 (p_api_version IN NUMBER,
277 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
278 p_commit IN VARCHAR2 := FND_API.G_FALSE,
279 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
280 p_rate_schedule_name IN CN_RATE_SCHEDULES.NAME%TYPE,
281 p_rate_dimension_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
282 -- Start - R12 MOAC Changes
283 p_object_version_number IN CN_RATE_DIMENSIONS.OBJECT_VERSION_NUMBER%TYPE, -- new
284 -- End - R12 MOAC Changes
285 x_return_status OUT NOCOPY VARCHAR2,
286 x_msg_count OUT NOCOPY NUMBER,
287 x_msg_data OUT NOCOPY VARCHAR2);
288
289 -- Update an individual rate tier by identifying the rate schedule and the set of
290 -- sequence numbers. The number of values in the rate dimension tier sequence table
291 -- should correspond to the number of dimensions and the values should be in the
292 -- same order as the dimensions.
293
294 /*#
295 * This procedure updates a commission rate in the given rate schedule.
296 * @param p_api_version API version
297 * @param p_init_msg_list Initialize message list (default F)
298 * @param p_commit Commit flag (default F)
299 * @param p_validation_level Validation level (default 100)
300 * @param x_return_status Return Status
301 * @param x_msg_count Number of messages returned
302 * @param x_msg_data Contents of message if x_msg_count = 1
303 * @param p_rate_schedule_name Rate schedule name
304 * @param p_tier_coordinates_tbl Coordinates of rate tier
305 * @param p_commission_amount Commission amount
306 * @param p_object_version_number Object version
307 * @rep:lifecycle active
308 * @rep:displayname Delete rate dimension assignment to rate schedule
309 */
310
311
312 PROCEDURE Update_Rate
313 (p_api_version IN NUMBER,
314 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
315 p_commit IN VARCHAR2 := FND_API.G_FALSE,
316 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
317 p_rate_schedule_name IN CN_RATE_SCHEDULES.NAME%TYPE,
318 p_tier_coordinates_tbl IN tier_coordinates_tbl,
319 p_commission_amount IN CN_RATE_TIERS.COMMISSION_AMOUNT%TYPE,
320 p_object_version_number IN OUT NOCOPY CN_RATE_TIERS.OBJECT_VERSION_NUMBER%TYPE,
321 -- Start - MOAC Change
322 p_org_id IN CN_RATE_TIERS.ORG_ID%TYPE,
323 -- End - MOAC Change
324 x_return_status OUT NOCOPY VARCHAR2,
325 x_msg_count OUT NOCOPY NUMBER,
326 x_msg_data OUT NOCOPY VARCHAR2);
327
328 -- Create a dimension
329 -- Choose a name, description, a unit code (AMOUNT, PERCENT, EXPRESSION or STRING), and a set
330 -- of tiers. For each tier, populate value1 and value2 (except for STRING which only uses
331 -- value1).
332
333 /*#
334 * This procedure creates a new rate dimension.
335 * @param p_api_version API version
336 * @param p_init_msg_list Initialize message list (default F)
337 * @param p_commit Commit flag (default F)
338 * @param p_validation_level Validation level (default 100)
339 * @param x_return_status Return Status
340 * @param x_msg_count Number of messages returned
341 * @param x_msg_data Contents of message if x_msg_count = 1
342 * @param p_name Rate schedule name
343 * @param p_description Description
344 * @param p_dim_unit_code Dimension unit (AMOUNT of PERCENT)
345 * @param p_tiers_tbl Contents of rate tiers (default empty table)
346 * @rep:lifecycle active
347 * @rep:displayname Create a rate dimension
348 */
349
350 PROCEDURE Create_Dimension
351 (p_api_version IN NUMBER,
352 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
353 p_commit IN VARCHAR2 := FND_API.G_FALSE,
354 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
355 p_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
356 p_description IN CN_RATE_DIMENSIONS.DESCRIPTION%TYPE := NULL,
357 p_dim_unit_code IN CN_RATE_DIMENSIONS.DIM_UNIT_CODE%TYPE,
358 p_tiers_tbl IN rate_tier_tbl_type := g_miss_rate_tier_tbl,
359 -- Start - MOAC Change
360 p_org_id IN CN_RATE_DIMENSIONS.ORG_ID%TYPE := NULL,
361 -- End - MOAC Change
362 x_return_status OUT NOCOPY VARCHAR2,
363 x_msg_count OUT NOCOPY NUMBER,
364 x_msg_data OUT NOCOPY VARCHAR2);
365
366 -- Update a dimension
367 -- Identify the dimension to be updated by its original name. Select the new name,
368 -- description, unit code and tiers table. If unit code and tiers table are not passed in,
369 -- only the name and description are updated.
370 /*#
371 * This procedure updates a given rate dimension.
372 * @param p_api_version API version
373 * @param p_init_msg_list Initialize message list (default F)
374 * @param p_commit Commit flag (default F)
375 * @param p_validation_level Validation level (default 100)
376 * @param x_return_status Return Status
377 * @param x_msg_count Number of messages returned
378 * @param x_msg_data Contents of message if x_msg_count = 1
379 * @param p_original_name Original rate dimension name
380 * @param p_new_name New rate dimension name
381 * @param p_description Description
382 * @param p_dim_unit_code Dimension unit (AMOUNT of PERCENT)
383 * @param p_tiers_tbl Rate tiers (default empty table)
384 * @param p_object_version_number Object version
385 * @rep:lifecycle active
386 * @rep:displayname Update a rate dimension
387 */
388
389 PROCEDURE Update_Dimension
390 (p_api_version IN NUMBER,
391 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
392 p_commit IN VARCHAR2 := FND_API.G_FALSE,
393 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
394 p_original_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
395 p_new_name IN CN_RATE_DIMENSIONS.NAME%TYPE :=
396 cn_api.g_miss_char,
397 p_description IN CN_RATE_DIMENSIONS.DESCRIPTION%TYPE :=
398 cn_api.g_miss_char,
399 p_dim_unit_code IN CN_RATE_DIMENSIONS.DIM_UNIT_CODE%TYPE :=
400 cn_api.g_miss_char,
401 p_tiers_tbl IN rate_tier_tbl_type :=
402 g_miss_rate_tier_tbl,
403 p_object_version_number IN OUT NOCOPY CN_RATE_DIMENSIONS.OBJECT_VERSION_NUMBER%TYPE,
404 -- Start - MOAC Change
405 p_org_id IN CN_RATE_DIMENSIONS.ORG_ID%TYPE,
406 -- End - MOAC Change
407 x_return_status OUT NOCOPY VARCHAR2,
408 x_msg_count OUT NOCOPY NUMBER,
409 x_msg_data OUT NOCOPY VARCHAR2);
410
411 -- Delete a dimension
412 -- Pass in the name of dimension to be deleted.
413
414 /*#
415 * This procedure deletes a rate dimension.
416 * @param p_api_version API version
417 * @param p_init_msg_list Initialize message list (default F)
418 * @param p_commit Commit flag (default F)
419 * @param p_validation_level Validation level (default 100)
420 * @param x_return_status Return Status
421 * @param x_msg_count Number of messages returned
422 * @param x_msg_data Contents of message if x_msg_count = 1
423 * @param p_name Rate dimension name
424 * @rep:lifecycle active
425 * @rep:displayname Delete a rate dimension
426 */
427
428 PROCEDURE Delete_Dimension
429 (p_api_version IN NUMBER,
430 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
431 p_commit IN VARCHAR2 := FND_API.G_FALSE,
432 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
433 p_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
434 -- Start - R12 MOAC Changes
435 p_object_version_number IN CN_RATE_DIMENSIONS.OBJECT_VERSION_NUMBER%TYPE, -- new
436 -- End - R12 MOAC Changes
437 x_return_status OUT NOCOPY VARCHAR2,
438 x_msg_count OUT NOCOPY NUMBER,
439 x_msg_data OUT NOCOPY VARCHAR2);
440
441 -- Create a tier for a dimension
442 -- Pass in the dimension name and value1 and value2 (if the type of the
443 -- specified dimension is STRING, value2 is not used... just pass in null).
444 -- Also pass in the tier sequence number. All existing tiers with equal or higher
445 -- sequence numbers get pushed up by one.
446 /*#
447 * This procedure adds a new tier to a given dimension.
448 * @param p_api_version API version
449 * @param p_init_msg_list Initialize message list (default F)
450 * @param p_commit Commit flag (default F)
451 * @param p_validation_level Validation level (default 100)
452 * @param x_return_status Return Status
453 * @param x_msg_count Number of messages returned
454 * @param x_msg_data Contents of message if x_msg_count = 1
455 * @param p_dimension_name Rate dimension name
456 * @param p_value1 Lower tier value
457 * @param p_value2 Upper tier value (ignored for string based dimensions)
458 * @param p_tier_sequence Rate tier sequence
459 * @rep:lifecycle active
460 * @rep:displayname Add a new tier to existing dimension
461 */
462
463 PROCEDURE Create_Tier
464 (p_api_version IN NUMBER,
465 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
466 p_commit IN VARCHAR2 := FND_API.G_FALSE,
467 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
468 p_dimension_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
469 p_value1 IN VARCHAR2,
470 p_value2 IN VARCHAR2,
471 p_tier_sequence IN CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE,
472 -- Start - MOAC Change
473 p_org_id IN CN_RATE_TIERS.ORG_ID%TYPE := NULL,
474 -- End - MOAC Change
475 x_return_status OUT NOCOPY VARCHAR2,
476 x_msg_count OUT NOCOPY NUMBER,
477 x_msg_data OUT NOCOPY VARCHAR2);
478
479 -- Update a tier for a dimension
480 -- Pass in the dimension name and sequence number to uniquely identify the tier.
481 -- Indicate the new minimum and maximum values as p_value1 and p_value2 (STRING
482 -- value tiers don't use p_value2).
483
484 /*#
485 * This procedure updates a tier assigned to a dimension.
486 * @param p_api_version API version
487 * @param p_init_msg_list Initialize message list (default F)
488 * @param p_commit Commit flag (default F)
489 * @param p_validation_level Validation level (default 100)
490 * @param x_return_status Return Status
491 * @param x_msg_count Number of messages returned
492 * @param x_msg_data Contents of message if x_msg_count = 1
493 * @param p_dimension_name Rate dimension name
494 * @param p_tier_sequence Rate tier sequence
495 * @param p_value1 Lower tier value
496 * @param p_value2 Upper tier value (ignored for string based dimensions)
497 * @param p_object_version_number Object version
498 * @rep:lifecycle active
499 * @rep:displayname Update a tier to assigned to a rate dimension
500 */
501
502 PROCEDURE Update_Tier
503 (p_api_version IN NUMBER,
504 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
505 p_commit IN VARCHAR2 := FND_API.G_FALSE,
506 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
507 p_dimension_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
508 p_tier_sequence IN CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE,
509 p_value1 IN VARCHAR2,
510 p_value2 IN VARCHAR2,
511 p_object_version_number IN OUT NOCOPY CN_RATE_DIM_TIERS.OBJECT_VERSION_NUMBER%TYPE,
512 -- Start - MOAC Change
513 p_org_id IN CN_RATE_TIERS.ORG_ID%TYPE,
514 -- End - MOAC Change
515 x_return_status OUT NOCOPY VARCHAR2,
516 x_msg_count OUT NOCOPY NUMBER,
517 x_msg_data OUT NOCOPY VARCHAR2);
518
519 -- Delete a tier for a dimension
520 -- Pass in the dimension name and sequence number to uniquely identify the tier.
521
522 /*#
523 * This procedure removes a rate tier from a given dimension.
524 * @param p_api_version API version
525 * @param p_init_msg_list Initialize message list (default F)
526 * @param p_commit Commit flag (default F)
527 * @param p_validation_level Validation level (default 100)
528 * @param x_return_status Return Status
529 * @param x_msg_count Number of messages returned
530 * @param x_msg_data Contents of message if x_msg_count = 1
531 * @param p_dimension_name Rate dimension name
532 * @param p_tier_sequence Rate tier sequence
533 * @rep:lifecycle active
534 * @rep:displayname Delete a tier to assigned to a rate dimension
535 */
536
537 PROCEDURE Delete_Tier
538 (p_api_version IN NUMBER,
539 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
540 p_commit IN VARCHAR2 := FND_API.G_FALSE,
541 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
542 p_dimension_name IN CN_RATE_DIMENSIONS.NAME%TYPE,
543 p_tier_sequence IN CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE,
544 -- Start - R12 MOAC Changes
545 p_object_version_number IN CN_RATE_TIERS.OBJECT_VERSION_NUMBER%TYPE, -- new
546 -- End - R12 MOAC Changes
547 x_return_status OUT NOCOPY VARCHAR2,
548 x_msg_count OUT NOCOPY NUMBER,
549 x_msg_data OUT NOCOPY VARCHAR2);
550
551 END CN_MULTI_RATE_SCHEDULES_PUB;