DBA Data[Home] [Help]

PACKAGE: APPS.CN_MULTI_RATE_SCHEDULES_PUB

Source


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;