[Home] [Help]
PACKAGE BODY: APPS.CSP_PRODUCT_TASKS_PKG
Source
1 PACKAGE BODY CSP_PRODUCT_TASKS_PKG as
2 /* $Header: csptptab.pls 115.2 2002/11/26 06:31:18 hhaugeru noship $ */
3 -- Start of Comments
4 -- Package name : CSP_PRODUCT_TASKS_PKG
5 -- Purpose :
6 -- History :
7 -- NOTE :
8 -- End of Comments
9
10
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSP_PRODUCT_TASKS_PKG';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csptptab.pls';
13
14 PROCEDURE Insert_Row(
15 px_PRODUCT_TASK_ID IN OUT NOCOPY NUMBER,
16 p_PRODUCT_ID NUMBER,
17 p_TASK_TEMPLATE_ID NUMBER,
18 p_AUTO_MANUAL VARCHAR2,
19 p_ACTUAL_TIMES_USED NUMBER,
20 p_TASK_PERCENTAGE NUMBER,
21 p_ATTRIBUTE_CATEGORY VARCHAR2,
22 p_ATTRIBUTE1 VARCHAR2,
23 p_ATTRIBUTE2 VARCHAR2,
24 p_ATTRIBUTE3 VARCHAR2,
25 p_ATTRIBUTE4 VARCHAR2,
26 p_ATTRIBUTE5 VARCHAR2,
27 p_ATTRIBUTE6 VARCHAR2,
28 p_ATTRIBUTE7 VARCHAR2,
29 p_ATTRIBUTE8 VARCHAR2,
30 p_ATTRIBUTE9 VARCHAR2,
31 p_ATTRIBUTE10 VARCHAR2,
32 p_ATTRIBUTE11 VARCHAR2,
33 p_ATTRIBUTE12 VARCHAR2,
34 p_ATTRIBUTE13 VARCHAR2,
35 p_ATTRIBUTE14 VARCHAR2,
36 p_ATTRIBUTE15 VARCHAR2,
37 p_CREATED_BY NUMBER,
38 p_CREATION_DATE DATE,
39 p_LAST_UPDATED_BY NUMBER,
40 p_LAST_UPDATE_DATE DATE,
41 p_LAST_UPDATE_LOGIN NUMBER)
42
43 IS
44 CURSOR C2 IS SELECT CSP_PRODUCT_TASKS_S1.nextval FROM sys.dual;
45 BEGIN
46 If (px_PRODUCT_TASK_ID IS NULL) OR (px_PRODUCT_TASK_ID = FND_API.G_MISS_NUM) then
47 OPEN C2;
48 FETCH C2 INTO px_PRODUCT_TASK_ID;
49 CLOSE C2;
50 End If;
51 INSERT INTO CSP_PRODUCT_TASKS(
52 PRODUCT_TASK_ID,
53 PRODUCT_ID,
54 TASK_TEMPLATE_ID,
55 AUTO_MANUAL,
56 ACTUAL_TIMES_USED,
57 TASK_PERCENTAGE,
58 ATTRIBUTE_CATEGORY,
59 ATTRIBUTE1,
60 ATTRIBUTE2,
61 ATTRIBUTE3,
62 ATTRIBUTE4,
63 ATTRIBUTE5,
64 ATTRIBUTE6,
65 ATTRIBUTE7,
66 ATTRIBUTE8,
67 ATTRIBUTE9,
68 ATTRIBUTE10,
69 ATTRIBUTE11,
70 ATTRIBUTE12,
71 ATTRIBUTE13,
72 ATTRIBUTE14,
73 ATTRIBUTE15,
74 CREATED_BY,
75 CREATION_DATE,
76 LAST_UPDATED_BY,
77 LAST_UPDATE_DATE,
78 LAST_UPDATE_LOGIN
79 ) VALUES (
80 px_PRODUCT_TASK_ID,
81 decode( p_PRODUCT_ID, FND_API.G_MISS_NUM, NULL, p_PRODUCT_ID),
82 decode( p_TASK_TEMPLATE_ID, FND_API.G_MISS_NUM, NULL, p_TASK_TEMPLATE_ID),
83 decode( p_AUTO_MANUAL, FND_API.G_MISS_CHAR, NULL, p_AUTO_MANUAL),
84 decode( p_ACTUAL_TIMES_USED, FND_API.G_MISS_NUM, NULL, p_ACTUAL_TIMES_USED),
85 decode( p_TASK_PERCENTAGE, FND_API.G_MISS_NUM, NULL, p_TASK_PERCENTAGE),
86 decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY),
87 decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1),
88 decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2),
89 decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3),
90 decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4),
91 decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5),
92 decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6),
93 decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7),
94 decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8),
95 decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9),
96 decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10),
97 decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11),
98 decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12),
99 decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13),
100 decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14),
101 decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15),
102 decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
103 decode( p_CREATION_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_CREATION_DATE),
104 decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
105 decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_LAST_UPDATE_DATE),
106 decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN));
107 End Insert_Row;
108
109 PROCEDURE Update_Row(
110 p_PRODUCT_TASK_ID NUMBER,
111 p_PRODUCT_ID NUMBER,
112 p_TASK_TEMPLATE_ID NUMBER,
113 p_AUTO_MANUAL VARCHAR2,
114 p_ACTUAL_TIMES_USED NUMBER,
115 p_TASK_PERCENTAGE NUMBER,
116 p_ATTRIBUTE_CATEGORY VARCHAR2,
117 p_ATTRIBUTE1 VARCHAR2,
118 p_ATTRIBUTE2 VARCHAR2,
119 p_ATTRIBUTE3 VARCHAR2,
120 p_ATTRIBUTE4 VARCHAR2,
121 p_ATTRIBUTE5 VARCHAR2,
122 p_ATTRIBUTE6 VARCHAR2,
123 p_ATTRIBUTE7 VARCHAR2,
124 p_ATTRIBUTE8 VARCHAR2,
125 p_ATTRIBUTE9 VARCHAR2,
126 p_ATTRIBUTE10 VARCHAR2,
127 p_ATTRIBUTE11 VARCHAR2,
128 p_ATTRIBUTE12 VARCHAR2,
129 p_ATTRIBUTE13 VARCHAR2,
130 p_ATTRIBUTE14 VARCHAR2,
131 p_ATTRIBUTE15 VARCHAR2,
132 p_CREATED_BY NUMBER,
133 p_CREATION_DATE DATE,
134 p_LAST_UPDATED_BY NUMBER,
135 p_LAST_UPDATE_DATE DATE,
136 p_LAST_UPDATE_LOGIN NUMBER)
137
138 IS
139 BEGIN
140 Update CSP_PRODUCT_TASKS
141 SET
142 PRODUCT_ID = decode( p_PRODUCT_ID, FND_API.G_MISS_NUM, PRODUCT_ID, p_PRODUCT_ID),
143 TASK_TEMPLATE_ID = decode( p_TASK_TEMPLATE_ID, FND_API.G_MISS_NUM, TASK_TEMPLATE_ID, p_TASK_TEMPLATE_ID),
144 AUTO_MANUAL = decode( p_AUTO_MANUAL, FND_API.G_MISS_CHAR, AUTO_MANUAL, p_AUTO_MANUAL),
145 ACTUAL_TIMES_USED = decode( p_ACTUAL_TIMES_USED, FND_API.G_MISS_NUM, ACTUAL_TIMES_USED, p_ACTUAL_TIMES_USED),
146 TASK_PERCENTAGE = decode( p_TASK_PERCENTAGE, FND_API.G_MISS_NUM, TASK_PERCENTAGE, p_TASK_PERCENTAGE),
147 ATTRIBUTE_CATEGORY = decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, ATTRIBUTE_CATEGORY, p_ATTRIBUTE_CATEGORY),
148 ATTRIBUTE1 = decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, ATTRIBUTE1, p_ATTRIBUTE1),
149 ATTRIBUTE2 = decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, ATTRIBUTE2, p_ATTRIBUTE2),
150 ATTRIBUTE3 = decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, ATTRIBUTE3, p_ATTRIBUTE3),
151 ATTRIBUTE4 = decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, ATTRIBUTE4, p_ATTRIBUTE4),
152 ATTRIBUTE5 = decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, ATTRIBUTE5, p_ATTRIBUTE5),
153 ATTRIBUTE6 = decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, ATTRIBUTE6, p_ATTRIBUTE6),
154 ATTRIBUTE7 = decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, ATTRIBUTE7, p_ATTRIBUTE7),
155 ATTRIBUTE8 = decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, ATTRIBUTE8, p_ATTRIBUTE8),
156 ATTRIBUTE9 = decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, ATTRIBUTE9, p_ATTRIBUTE9),
157 ATTRIBUTE10 = decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, ATTRIBUTE10, p_ATTRIBUTE10),
158 ATTRIBUTE11 = decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, ATTRIBUTE11, p_ATTRIBUTE11),
159 ATTRIBUTE12 = decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, ATTRIBUTE12, p_ATTRIBUTE12),
160 ATTRIBUTE13 = decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, ATTRIBUTE13, p_ATTRIBUTE13),
161 ATTRIBUTE14 = decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, ATTRIBUTE14, p_ATTRIBUTE14),
162 ATTRIBUTE15 = decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, ATTRIBUTE15, p_ATTRIBUTE15),
163 CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY),
164 CREATION_DATE = decode( p_CREATION_DATE, FND_API.G_MISS_DATE, CREATION_DATE, p_CREATION_DATE),
165 LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, LAST_UPDATED_BY, p_LAST_UPDATED_BY),
166 LAST_UPDATE_DATE = decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, LAST_UPDATE_DATE, p_LAST_UPDATE_DATE),
167 LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN)
168 where PRODUCT_TASK_ID = p_PRODUCT_TASK_ID;
169
170 If (SQL%NOTFOUND) then
171 RAISE NO_DATA_FOUND;
172 End If;
173 END Update_Row;
174
175 PROCEDURE Delete_Row(
176 p_PRODUCT_TASK_ID NUMBER)
177 IS
178 BEGIN
179 DELETE FROM CSP_PRODUCT_TASKS
180 WHERE PRODUCT_TASK_ID = p_PRODUCT_TASK_ID;
181 If (SQL%NOTFOUND) then
182 RAISE NO_DATA_FOUND;
183 End If;
184 END Delete_Row;
185
186 PROCEDURE Lock_Row(
187 p_PRODUCT_TASK_ID NUMBER,
188 p_PRODUCT_ID NUMBER,
189 p_TASK_TEMPLATE_ID NUMBER,
190 p_AUTO_MANUAL VARCHAR2,
191 p_ACTUAL_TIMES_USED NUMBER,
192 p_TASK_PERCENTAGE NUMBER,
193 p_ATTRIBUTE_CATEGORY VARCHAR2,
194 p_ATTRIBUTE1 VARCHAR2,
195 p_ATTRIBUTE2 VARCHAR2,
196 p_ATTRIBUTE3 VARCHAR2,
197 p_ATTRIBUTE4 VARCHAR2,
198 p_ATTRIBUTE5 VARCHAR2,
199 p_ATTRIBUTE6 VARCHAR2,
200 p_ATTRIBUTE7 VARCHAR2,
201 p_ATTRIBUTE8 VARCHAR2,
202 p_ATTRIBUTE9 VARCHAR2,
203 p_ATTRIBUTE10 VARCHAR2,
204 p_ATTRIBUTE11 VARCHAR2,
205 p_ATTRIBUTE12 VARCHAR2,
206 p_ATTRIBUTE13 VARCHAR2,
207 p_ATTRIBUTE14 VARCHAR2,
208 p_ATTRIBUTE15 VARCHAR2,
209 p_CREATED_BY NUMBER,
210 p_CREATION_DATE DATE,
211 p_LAST_UPDATED_BY NUMBER,
212 p_LAST_UPDATE_DATE DATE,
213 p_LAST_UPDATE_LOGIN NUMBER)
214
215 IS
216 CURSOR C IS
217 SELECT *
218 FROM CSP_PRODUCT_TASKS
219 WHERE PRODUCT_TASK_ID = p_PRODUCT_TASK_ID
220 FOR UPDATE of PRODUCT_TASK_ID NOWAIT;
221 Recinfo C%ROWTYPE;
222 BEGIN
223 OPEN C;
224 FETCH C INTO Recinfo;
225 If (C%NOTFOUND) then
226 CLOSE C;
227 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
228 APP_EXCEPTION.RAISE_EXCEPTION;
229 End If;
230 CLOSE C;
231 if (
232 ( Recinfo.PRODUCT_TASK_ID = p_PRODUCT_TASK_ID)
233 AND ( ( Recinfo.PRODUCT_ID = p_PRODUCT_ID)
234 OR ( ( Recinfo.PRODUCT_ID IS NULL )
235 AND ( p_PRODUCT_ID IS NULL )))
236 AND ( ( Recinfo.TASK_TEMPLATE_ID = p_TASK_TEMPLATE_ID)
237 OR ( ( Recinfo.TASK_TEMPLATE_ID IS NULL )
238 AND ( p_TASK_TEMPLATE_ID IS NULL )))
239 AND ( ( Recinfo.AUTO_MANUAL = p_AUTO_MANUAL)
240 OR ( ( Recinfo.AUTO_MANUAL IS NULL )
241 AND ( p_AUTO_MANUAL IS NULL )))
242 AND ( ( Recinfo.ACTUAL_TIMES_USED = p_ACTUAL_TIMES_USED)
243 OR ( ( Recinfo.ACTUAL_TIMES_USED IS NULL )
244 AND ( p_ACTUAL_TIMES_USED IS NULL )))
245 AND ( ( Recinfo.TASK_PERCENTAGE = p_TASK_PERCENTAGE)
246 OR ( ( Recinfo.TASK_PERCENTAGE IS NULL )
247 AND ( p_TASK_PERCENTAGE IS NULL )))
248 AND ( ( Recinfo.ATTRIBUTE_CATEGORY = p_ATTRIBUTE_CATEGORY)
249 OR ( ( Recinfo.ATTRIBUTE_CATEGORY IS NULL )
250 AND ( p_ATTRIBUTE_CATEGORY IS NULL )))
251 AND ( ( Recinfo.ATTRIBUTE1 = p_ATTRIBUTE1)
252 OR ( ( Recinfo.ATTRIBUTE1 IS NULL )
253 AND ( p_ATTRIBUTE1 IS NULL )))
254 AND ( ( Recinfo.ATTRIBUTE2 = p_ATTRIBUTE2)
255 OR ( ( Recinfo.ATTRIBUTE2 IS NULL )
256 AND ( p_ATTRIBUTE2 IS NULL )))
257 AND ( ( Recinfo.ATTRIBUTE3 = p_ATTRIBUTE3)
258 OR ( ( Recinfo.ATTRIBUTE3 IS NULL )
259 AND ( p_ATTRIBUTE3 IS NULL )))
260 AND ( ( Recinfo.ATTRIBUTE4 = p_ATTRIBUTE4)
261 OR ( ( Recinfo.ATTRIBUTE4 IS NULL )
262 AND ( p_ATTRIBUTE4 IS NULL )))
263 AND ( ( Recinfo.ATTRIBUTE5 = p_ATTRIBUTE5)
264 OR ( ( Recinfo.ATTRIBUTE5 IS NULL )
265 AND ( p_ATTRIBUTE5 IS NULL )))
266 AND ( ( Recinfo.ATTRIBUTE6 = p_ATTRIBUTE6)
267 OR ( ( Recinfo.ATTRIBUTE6 IS NULL )
268 AND ( p_ATTRIBUTE6 IS NULL )))
269 AND ( ( Recinfo.ATTRIBUTE7 = p_ATTRIBUTE7)
270 OR ( ( Recinfo.ATTRIBUTE7 IS NULL )
271 AND ( p_ATTRIBUTE7 IS NULL )))
272 AND ( ( Recinfo.ATTRIBUTE8 = p_ATTRIBUTE8)
273 OR ( ( Recinfo.ATTRIBUTE8 IS NULL )
274 AND ( p_ATTRIBUTE8 IS NULL )))
275 AND ( ( Recinfo.ATTRIBUTE9 = p_ATTRIBUTE9)
276 OR ( ( Recinfo.ATTRIBUTE9 IS NULL )
277 AND ( p_ATTRIBUTE9 IS NULL )))
278 AND ( ( Recinfo.ATTRIBUTE10 = p_ATTRIBUTE10)
279 OR ( ( Recinfo.ATTRIBUTE10 IS NULL )
280 AND ( p_ATTRIBUTE10 IS NULL )))
281 AND ( ( Recinfo.ATTRIBUTE11 = p_ATTRIBUTE11)
282 OR ( ( Recinfo.ATTRIBUTE11 IS NULL )
283 AND ( p_ATTRIBUTE11 IS NULL )))
284 AND ( ( Recinfo.ATTRIBUTE12 = p_ATTRIBUTE12)
285 OR ( ( Recinfo.ATTRIBUTE12 IS NULL )
286 AND ( p_ATTRIBUTE12 IS NULL )))
287 AND ( ( Recinfo.ATTRIBUTE13 = p_ATTRIBUTE13)
288 OR ( ( Recinfo.ATTRIBUTE13 IS NULL )
289 AND ( p_ATTRIBUTE13 IS NULL )))
290 AND ( ( Recinfo.ATTRIBUTE14 = p_ATTRIBUTE14)
291 OR ( ( Recinfo.ATTRIBUTE14 IS NULL )
292 AND ( p_ATTRIBUTE14 IS NULL )))
293 AND ( ( Recinfo.ATTRIBUTE15 = p_ATTRIBUTE15)
294 OR ( ( Recinfo.ATTRIBUTE15 IS NULL )
295 AND ( p_ATTRIBUTE15 IS NULL )))
299 AND ( ( Recinfo.CREATION_DATE = p_CREATION_DATE)
296 AND ( ( Recinfo.CREATED_BY = p_CREATED_BY)
297 OR ( ( Recinfo.CREATED_BY IS NULL )
298 AND ( p_CREATED_BY IS NULL )))
300 OR ( ( Recinfo.CREATION_DATE IS NULL )
301 AND ( p_CREATION_DATE IS NULL )))
302 AND ( ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
303 OR ( ( Recinfo.LAST_UPDATED_BY IS NULL )
304 AND ( p_LAST_UPDATED_BY IS NULL )))
305 AND ( ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
306 OR ( ( Recinfo.LAST_UPDATE_DATE IS NULL )
307 AND ( p_LAST_UPDATE_DATE IS NULL )))
308 AND ( ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
309 OR ( ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
310 AND ( p_LAST_UPDATE_LOGIN IS NULL )))
311 ) then
312 return;
313 else
314 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
315 APP_EXCEPTION.RAISE_EXCEPTION;
316 End If;
317 END Lock_Row;
318
319 End CSP_PRODUCT_TASKS_PKG;