[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;