DBA Data[Home] [Help]

PACKAGE BODY: APPS.CN_RATE_DIM_TIERS_PKG

Source


1 PACKAGE BODY CN_RATE_DIM_TIERS_PKG AS
2 /* $Header: cntrdtib.pls 120.3 2005/10/20 03:24:26 chanthon ship $ */
3 
4 procedure INSERT_ROW (
5   X_RATE_DIM_TIER_ID      IN OUT NOCOPY CN_RATE_DIM_TIERS.RATE_DIM_TIER_ID%TYPE,
6   X_RATE_DIMENSION_ID     IN     CN_RATE_DIM_TIERS.RATE_DIMENSION_ID%TYPE,
7   X_DIM_UNIT_CODE         IN     CN_RATE_DIM_TIERS.DIM_UNIT_CODE%TYPE  := NULL,
8   X_MINIMUM_AMOUNT        IN     CN_RATE_DIM_TIERS.MINIMUM_AMOUNT%TYPE := NULL,
9   X_MAXIMUM_AMOUNT        IN     CN_RATE_DIM_TIERS.MAXIMUM_AMOUNT%TYPE := NULL,
10   X_MIN_EXP_ID            IN     CN_RATE_DIM_TIERS.MIN_EXP_ID%TYPE     := NULL,
11   X_MAX_EXP_ID            IN     CN_RATE_DIM_TIERS.MAX_EXP_ID%TYPE     := NULL,
12   X_STRING_VALUE          IN     CN_RATE_DIM_TIERS.STRING_VALUE%TYPE   := NULL,
13   X_TIER_SEQUENCE         IN     CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE,
14   -- R12 MOAC Changes--Start
15   X_ORG_ID                IN     CN_RATE_DIM_TIERS.ORG_ID%TYPE, --new
16   -- R12 MOAC Changes--End
17   X_ATTRIBUTE_CATEGORY    IN     CN_RATE_DIM_TIERS.ATTRIBUTE_CATEGORY%TYPE := NULL,
18   X_ATTRIBUTE1            IN     CN_RATE_DIM_TIERS.ATTRIBUTE1%TYPE  := NULL,
19   X_ATTRIBUTE2            IN     CN_RATE_DIM_TIERS.ATTRIBUTE2%TYPE  := NULL,
20   X_ATTRIBUTE3            IN     CN_RATE_DIM_TIERS.ATTRIBUTE3%TYPE  := NULL,
21   X_ATTRIBUTE4            IN     CN_RATE_DIM_TIERS.ATTRIBUTE4%TYPE  := NULL,
22   X_ATTRIBUTE5            IN     CN_RATE_DIM_TIERS.ATTRIBUTE5%TYPE  := NULL,
23   X_ATTRIBUTE6            IN     CN_RATE_DIM_TIERS.ATTRIBUTE6%TYPE  := NULL,
24   X_ATTRIBUTE7            IN     CN_RATE_DIM_TIERS.ATTRIBUTE7%TYPE  := NULL,
25   X_ATTRIBUTE8            IN     CN_RATE_DIM_TIERS.ATTRIBUTE8%TYPE  := NULL,
26   X_ATTRIBUTE9            IN     CN_RATE_DIM_TIERS.ATTRIBUTE9%TYPE  := NULL,
27   X_ATTRIBUTE10           IN     CN_RATE_DIM_TIERS.ATTRIBUTE10%TYPE := NULL,
28   X_ATTRIBUTE11           IN     CN_RATE_DIM_TIERS.ATTRIBUTE11%TYPE := NULL,
29   X_ATTRIBUTE12           IN     CN_RATE_DIM_TIERS.ATTRIBUTE12%TYPE := NULL,
30   X_ATTRIBUTE13           IN     CN_RATE_DIM_TIERS.ATTRIBUTE13%TYPE := NULL,
31   X_ATTRIBUTE14           IN     CN_RATE_DIM_TIERS.ATTRIBUTE14%TYPE := NULL,
32   X_ATTRIBUTE15           IN     CN_RATE_DIM_TIERS.ATTRIBUTE15%TYPE := NULL,
33   X_CREATION_DATE         IN     CN_RATE_DIM_TIERS.CREATION_DATE%TYPE     := SYSDATE,
34   X_CREATED_BY            IN     CN_RATE_DIM_TIERS.CREATED_BY%TYPE        := FND_GLOBAL.USER_ID,
35   X_LAST_UPDATE_DATE      IN     CN_RATE_DIM_TIERS.LAST_UPDATE_DATE%TYPE  := SYSDATE,
36   X_LAST_UPDATED_BY       IN     CN_RATE_DIM_TIERS.LAST_UPDATED_BY%TYPE   := FND_GLOBAL.USER_ID,
37   X_LAST_UPDATE_LOGIN     IN     CN_RATE_DIM_TIERS.LAST_UPDATE_LOGIN%TYPE := FND_GLOBAL.LOGIN_ID) IS
38 
39   cursor C is select rate_dim_tier_id from CN_RATE_DIM_TIERS
40     where RATE_DIM_TIER_ID = x_rate_dim_tier_id;
41 
42   CURSOR id IS SELECT cn_rate_dim_tiers_s.NEXTVAL FROM dual;
43 BEGIN
44    IF (x_rate_dim_tier_id IS NULL) THEN
45       OPEN id;
46       FETCH id INTO x_rate_dim_tier_id;
47       IF (id%notfound) THEN
48 	 CLOSE id;
49 	 RAISE no_data_found;
50       END IF;
51       CLOSE id;
52    END IF;
53 
54   insert into CN_RATE_DIM_TIERS (
55     RATE_DIM_TIER_ID,
56     RATE_DIMENSION_ID,
57     DIM_UNIT_CODE,
58     MINIMUM_AMOUNT,
59     MAXIMUM_AMOUNT,
60     MIN_EXP_ID,
61     MAX_EXP_ID,
62     STRING_VALUE,
63     TIER_SEQUENCE,
64     -- R12 MOAC Changes--Start
65     ORG_ID,
66     -- R12 MOAC Changes--End
67     ATTRIBUTE_CATEGORY,
68     ATTRIBUTE1,
69     ATTRIBUTE2,
70     ATTRIBUTE3,
71     ATTRIBUTE4,
72     ATTRIBUTE5,
73     ATTRIBUTE6,
74     ATTRIBUTE7,
75     ATTRIBUTE8,
76     ATTRIBUTE9,
77     ATTRIBUTE10,
78     ATTRIBUTE11,
79     ATTRIBUTE12,
80     ATTRIBUTE13,
81     ATTRIBUTE14,
82     ATTRIBUTE15,
83     CREATED_BY,
84     CREATION_DATE,
85     LAST_UPDATE_LOGIN,
86     LAST_UPDATE_DATE,
87     LAST_UPDATED_BY,
88     OBJECT_VERSION_NUMBER
89   ) VALUES (
90     X_RATE_DIM_TIER_ID,
91     X_RATE_DIMENSION_ID,
92     X_DIM_UNIT_CODE,
93     X_MINIMUM_AMOUNT,
94     X_MAXIMUM_AMOUNT,
95     X_MIN_EXP_ID,
96     X_MAX_EXP_ID,
97     X_STRING_VALUE,
98     X_TIER_SEQUENCE,
99     -- R12 MOAC Changes--Start
100     X_ORG_ID,
101     -- R12 MOAC Changes--End
102     X_ATTRIBUTE_CATEGORY,
103     X_ATTRIBUTE1,
104     X_ATTRIBUTE2,
105     X_ATTRIBUTE3,
106     X_ATTRIBUTE4,
107     X_ATTRIBUTE5,
108     X_ATTRIBUTE6,
109     X_ATTRIBUTE7,
110     X_ATTRIBUTE8,
111     X_ATTRIBUTE9,
112     X_ATTRIBUTE10,
113     X_ATTRIBUTE11,
114     X_ATTRIBUTE12,
115     X_ATTRIBUTE13,
116     X_ATTRIBUTE14,
117     X_ATTRIBUTE15,
118     X_CREATED_BY,
119     X_CREATION_DATE,
120     X_LAST_UPDATE_LOGIN,
121     X_LAST_UPDATE_DATE,
122     X_LAST_UPDATED_BY,
123     1);
124 
125   open c;
126   fetch c into x_rate_dim_tier_id;
127   if (c%notfound) then
128     close c;
129     raise no_data_found;
130   end if;
131   close c;
132 
133 end INSERT_ROW;
134 
135 procedure LOCK_ROW (
136   X_RATE_DIM_TIER_ID      IN     CN_RATE_DIM_TIERS.RATE_DIM_TIER_ID%TYPE,
137   X_OBJECT_VERSION_NUMBER IN     CN_RATE_DIM_TIERS.OBJECT_VERSION_NUMBER%TYPE) IS
138 
139    cursor c is
140    select object_version_number
141      from CN_RATE_DIM_TIERS
142     where RATE_DIM_TIER_ID = X_RATE_DIM_TIER_ID
143       for update of RATE_DIM_TIER_ID nowait;
144 
145    tlinfo c%rowtype ;
146 BEGIN
147    open  c;
148    fetch c into tlinfo;
149    if (c%notfound) then
150       close c;
151       fnd_message.set_name('CN', 'CN_RECORD_DELETED');
152       fnd_msg_pub.add;
153       raise fnd_api.g_exc_unexpected_error;
154    end if;
155    close c;
156 
157    if (tlinfo.object_version_number <> x_object_version_number) then
158       fnd_message.set_name('CN', 'CN_RECORD_CHANGED');
159       fnd_msg_pub.add;
160       raise fnd_api.g_exc_unexpected_error;
161    end if;
162 
163 END LOCK_ROW;
164 
165 procedure UPDATE_ROW (
166   X_RATE_DIM_TIER_ID      IN     CN_RATE_DIM_TIERS.RATE_DIM_TIER_ID%TYPE,
167   X_RATE_DIMENSION_ID     IN     CN_RATE_DIM_TIERS.RATE_DIMENSION_ID%TYPE,
168   X_DIM_UNIT_CODE         IN     CN_RATE_DIM_TIERS.DIM_UNIT_CODE%TYPE  := FND_API.G_MISS_CHAR,
169   X_MINIMUM_AMOUNT        IN     CN_RATE_DIM_TIERS.MINIMUM_AMOUNT%TYPE := FND_API.G_MISS_NUM,
170   X_MAXIMUM_AMOUNT        IN     CN_RATE_DIM_TIERS.MAXIMUM_AMOUNT%TYPE := FND_API.G_MISS_NUM,
171   X_MIN_EXP_ID            IN     CN_RATE_DIM_TIERS.MIN_EXP_ID%TYPE     := FND_API.G_MISS_NUM,
172   X_MAX_EXP_ID            IN     CN_RATE_DIM_TIERS.MAX_EXP_ID%TYPE     := FND_API.G_MISS_NUM,
173   X_STRING_VALUE          IN     CN_RATE_DIM_TIERS.STRING_VALUE%TYPE   := FND_API.G_MISS_CHAR,
174   X_TIER_SEQUENCE         IN     CN_RATE_DIM_TIERS.TIER_SEQUENCE%TYPE  := FND_API.G_MISS_NUM,
175   X_ATTRIBUTE_CATEGORY    IN     CN_RATE_DIM_TIERS.ATTRIBUTE_CATEGORY%TYPE := FND_API.G_MISS_CHAR,
176   X_ATTRIBUTE1            IN     CN_RATE_DIM_TIERS.ATTRIBUTE1%TYPE  := FND_API.G_MISS_CHAR,
177   X_ATTRIBUTE2            IN     CN_RATE_DIM_TIERS.ATTRIBUTE2%TYPE  := FND_API.G_MISS_CHAR,
178   X_ATTRIBUTE3            IN     CN_RATE_DIM_TIERS.ATTRIBUTE3%TYPE  := FND_API.G_MISS_CHAR,
179   X_ATTRIBUTE4            IN     CN_RATE_DIM_TIERS.ATTRIBUTE4%TYPE  := FND_API.G_MISS_CHAR,
180   X_ATTRIBUTE5            IN     CN_RATE_DIM_TIERS.ATTRIBUTE5%TYPE  := FND_API.G_MISS_CHAR,
181   X_ATTRIBUTE6            IN     CN_RATE_DIM_TIERS.ATTRIBUTE6%TYPE  := FND_API.G_MISS_CHAR,
182   X_ATTRIBUTE7            IN     CN_RATE_DIM_TIERS.ATTRIBUTE7%TYPE  := FND_API.G_MISS_CHAR,
183   X_ATTRIBUTE8            IN     CN_RATE_DIM_TIERS.ATTRIBUTE8%TYPE  := FND_API.G_MISS_CHAR,
184   X_ATTRIBUTE9            IN     CN_RATE_DIM_TIERS.ATTRIBUTE9%TYPE  := FND_API.G_MISS_CHAR,
185   X_ATTRIBUTE10           IN     CN_RATE_DIM_TIERS.ATTRIBUTE10%TYPE := FND_API.G_MISS_CHAR,
186   X_ATTRIBUTE11           IN     CN_RATE_DIM_TIERS.ATTRIBUTE11%TYPE := FND_API.G_MISS_CHAR,
187   X_ATTRIBUTE12           IN     CN_RATE_DIM_TIERS.ATTRIBUTE12%TYPE := FND_API.G_MISS_CHAR,
188   X_ATTRIBUTE13           IN     CN_RATE_DIM_TIERS.ATTRIBUTE13%TYPE := FND_API.G_MISS_CHAR,
189   X_ATTRIBUTE14           IN     CN_RATE_DIM_TIERS.ATTRIBUTE14%TYPE := FND_API.G_MISS_CHAR,
190   X_ATTRIBUTE15           IN     CN_RATE_DIM_TIERS.ATTRIBUTE15%TYPE := FND_API.G_MISS_CHAR,
191   X_LAST_UPDATE_DATE      IN     CN_RATE_DIM_TIERS.LAST_UPDATE_DATE%TYPE  := SYSDATE,
192   X_LAST_UPDATED_BY       IN     CN_RATE_DIM_TIERS.LAST_UPDATED_BY%TYPE   := FND_GLOBAL.USER_ID,
193   X_LAST_UPDATE_LOGIN     IN     CN_RATE_DIM_TIERS.LAST_UPDATE_LOGIN%TYPE := FND_GLOBAL.LOGIN_ID,
194   X_OBJECT_VERSION_NUMBER IN OUT NOCOPY CN_RATE_DIM_TIERS.OBJECT_VERSION_NUMBER%TYPE) IS
195 
196 BEGIN
197   X_OBJECT_VERSION_NUMBER := X_OBJECT_VERSION_NUMBER + 1;
198   update CN_RATE_DIM_TIERS set
199     DIM_UNIT_CODE = Decode(X_DIM_UNIT_CODE, fnd_api.g_miss_char, dim_unit_code, x_dim_unit_code),
200     MINIMUM_AMOUNT = Decode(X_MINIMUM_AMOUNT, fnd_api.g_miss_num, minimum_amount, x_minimum_amount),
201     MAXIMUM_AMOUNT = Decode(X_MAXIMUM_AMOUNT, fnd_api.g_miss_num, maximum_amount, x_maximum_amount),
202     MIN_EXP_ID = Decode(X_MIN_EXP_ID, fnd_api.g_miss_num, min_exp_id, x_min_exp_id),
203     MAX_EXP_ID = Decode(X_MAX_EXP_ID, fnd_api.g_miss_num, max_exp_id, x_max_exp_id),
204     STRING_VALUE = Decode(X_STRING_VALUE, fnd_api.g_miss_char, string_value, x_string_value),
205     TIER_SEQUENCE = Decode(X_TIER_SEQUENCE, fnd_api.g_miss_num, tier_sequence, x_tier_sequence),
206     ATTRIBUTE_CATEGORY = Decode(X_ATTRIBUTE_CATEGORY, fnd_api.g_miss_char, attribute_category, x_attribute_category),
207     ATTRIBUTE1 = Decode(X_ATTRIBUTE1, fnd_api.g_miss_char, attribute1, x_attribute1),
208     ATTRIBUTE2 = Decode(X_ATTRIBUTE2, fnd_api.g_miss_char, attribute2, x_attribute2),
209     ATTRIBUTE3 = Decode(X_ATTRIBUTE3, fnd_api.g_miss_char, attribute3, x_attribute3),
210     ATTRIBUTE4 = Decode(X_ATTRIBUTE4, fnd_api.g_miss_char, attribute4, x_attribute4),
211     ATTRIBUTE5 = Decode(X_ATTRIBUTE5, fnd_api.g_miss_char, attribute5, x_attribute5),
212     ATTRIBUTE6 = Decode(X_ATTRIBUTE6, fnd_api.g_miss_char, attribute6, x_attribute6),
213     ATTRIBUTE7 = Decode(X_ATTRIBUTE7, fnd_api.g_miss_char, attribute7, x_attribute7),
214     ATTRIBUTE8 = Decode(X_ATTRIBUTE8, fnd_api.g_miss_char, attribute8, x_attribute8),
215     ATTRIBUTE9 = Decode(X_ATTRIBUTE9, fnd_api.g_miss_char, attribute9, x_attribute9),
216     ATTRIBUTE10 = Decode(X_ATTRIBUTE10, fnd_api.g_miss_char, attribute10, x_attribute10),
217     ATTRIBUTE11 = Decode(X_ATTRIBUTE11, fnd_api.g_miss_char, attribute11, x_attribute11),
218     ATTRIBUTE12 = Decode(X_ATTRIBUTE12, fnd_api.g_miss_char, attribute12, x_attribute12),
219     ATTRIBUTE13 = Decode(X_ATTRIBUTE13, fnd_api.g_miss_char, attribute13, x_attribute13),
220     ATTRIBUTE14 = Decode(X_ATTRIBUTE14, fnd_api.g_miss_char, attribute14, x_attribute14),
221     ATTRIBUTE15 = Decode(X_ATTRIBUTE15, fnd_api.g_miss_char, attribute15, x_attribute15),
222     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
223     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
224     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
225     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER
226   where RATE_DIM_TIER_ID = x_rate_dim_tier_id;
227 
228   if (sql%notfound) then
229      fnd_message.set_name('CN', 'CN_RECORD_DELETED');
230      fnd_msg_pub.add;
231      raise fnd_api.g_exc_unexpected_error;
232   end if;
233 end UPDATE_ROW;
234 
235 procedure DELETE_ROW (
236    X_RATE_DIM_TIER_ID      IN     CN_RATE_DIM_TIERS.RATE_DIM_TIER_ID%TYPE) is
237 begin
238   delete from CN_RATE_DIM_TIERS
239   where RATE_DIM_TIER_ID = X_RATE_DIM_TIER_ID;
240 
241   if (sql%notfound) then
242      fnd_message.set_name('CN', 'CN_RECORD_DELETED');
243      fnd_msg_pub.add;
244      raise fnd_api.g_exc_unexpected_error;
245   end if;
246 
247 end DELETE_ROW;
248 
249 end CN_RATE_DIM_TIERS_PKG;