[Home] [Help]
PACKAGE BODY: APPS.BOM_DEPARTMENT_RESOURCES_PKG
Source
1 PACKAGE BODY BOM_DEPARTMENT_RESOURCES_PKG as
2 /* $Header: bompbdrb.pls 120.1.12010000.2 2009/12/10 11:33:06 ybabulal ship $ */
3
4 PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
5 X_Department_Id NUMBER,
6 X_Resource_Id NUMBER,
7 X_Last_Update_Date DATE,
8 X_Last_Updated_By NUMBER,
9 X_Creation_Date DATE,
10 X_Created_By NUMBER,
11 X_Last_Update_Login NUMBER DEFAULT NULL,
12 X_Share_Capacity_Flag NUMBER,
13 X_Share_From_Dept_Id NUMBER DEFAULT NULL,
14 X_Capacity_Units NUMBER DEFAULT NULL,
15 X_Resource_Group_Name VARCHAR2 DEFAULT NULL,
16 X_Available_24_Hours_Flag NUMBER,
17 X_Ctp_Flag NUMBER,
18 X_Attribute_Category VARCHAR2 DEFAULT NULL,
19 X_Attribute1 VARCHAR2 DEFAULT NULL,
20 X_Attribute2 VARCHAR2 DEFAULT NULL,
21 X_Attribute3 VARCHAR2 DEFAULT NULL,
22 X_Attribute4 VARCHAR2 DEFAULT NULL,
23 X_Attribute5 VARCHAR2 DEFAULT NULL,
24 X_Attribute6 VARCHAR2 DEFAULT NULL,
25 X_Attribute7 VARCHAR2 DEFAULT NULL,
26 X_Attribute8 VARCHAR2 DEFAULT NULL,
27 X_Attribute9 VARCHAR2 DEFAULT NULL,
28 X_Attribute10 VARCHAR2 DEFAULT NULL,
29 X_Attribute11 VARCHAR2 DEFAULT NULL,
30 X_Attribute12 VARCHAR2 DEFAULT NULL,
31 X_Attribute13 VARCHAR2 DEFAULT NULL,
32 X_Attribute14 VARCHAR2 DEFAULT NULL,
33 X_Attribute15 VARCHAR2 DEFAULT NULL,
34 X_Exception_Set_Name VARCHAR2 DEFAULT NULL,
35 X_ATP_Rule_Id NUMBER DEFAULT NULL,
36 X_Utilization NUMBER DEFAULT NULL,
37 X_Efficiency NUMBER DEFAULT NULL,
38 X_Schedule_To_Instance NUMBER,
39 X_Sequencing_Window NUMBER DEFAULT NULL, --APS Enhancement for Routings
40 X_Idle_Time_Tolerance NUMBER DEFAULT NULL --APS Enhancement for Routings
41 ) IS
42 CURSOR C IS SELECT rowid FROM BOM_DEPARTMENT_RESOURCES
43 WHERE department_id = X_Department_Id
44 AND resource_id = X_Resource_Id;
45 BEGIN
46 INSERT INTO BOM_DEPARTMENT_RESOURCES(
47 department_id,
48 resource_id,
49 last_update_date,
50 last_updated_by,
51 creation_date,
52 created_by,
53 last_update_login,
54 share_capacity_flag,
55 share_from_dept_id,
56 capacity_units,
57 resource_group_name,
58 available_24_hours_flag,
59 ctp_flag,
60 attribute_category,
61 attribute1,
62 attribute2,
63 attribute3,
64 attribute4,
65 attribute5,
66 attribute6,
67 attribute7,
68 attribute8,
69 attribute9,
70 attribute10,
71 attribute11,
72 attribute12,
73 attribute13,
74 attribute14,
75 attribute15,
76 exception_set_name,
77 atp_rule_id,
78 utilization,
79 efficiency,
80 schedule_to_instance,
81 sequencing_window, --APS Enhancement for Routings
82 idle_time_tolerance --APS Enhancement for Routings
83 ) VALUES (
84 X_Department_Id,
85 X_Resource_Id,
86 X_Last_Update_Date,
87 X_Last_Updated_By,
88 X_Creation_Date,
89 X_Created_By,
90 X_Last_Update_Login,
91 X_Share_Capacity_Flag,
92 X_Share_From_Dept_Id,
93 X_Capacity_Units,
94 X_Resource_Group_Name,
95 X_Available_24_Hours_Flag,
96 X_Ctp_Flag,
97 X_Attribute_Category,
98 X_Attribute1,
99 X_Attribute2,
100 X_Attribute3,
101 X_Attribute4,
102 X_Attribute5,
103 X_Attribute6,
104 X_Attribute7,
105 X_Attribute8,
106 X_Attribute9,
107 X_Attribute10,
108 X_Attribute11,
109 X_Attribute12,
110 X_Attribute13,
111 X_Attribute14,
112 X_Attribute15,
113 X_Exception_Set_Name,
114 x_Atp_Rule_Id,
115 X_Utilization,
116 X_Efficiency,
117 X_Schedule_To_Instance,
118 X_Sequencing_Window, --APS Enhancement for Routings
119 X_Idle_Time_Tolerance --APS Enhancement for Routings
120 );
121 OPEN C;
122 FETCH C INTO X_Rowid;
123 if (C%NOTFOUND) then
124 CLOSE C;
125 Raise NO_DATA_FOUND;
126 end if;
127 CLOSE C;
128 END Insert_Row;
129
130
131 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
132 X_Department_Id NUMBER,
133 X_Resource_Id NUMBER,
134 X_Share_Capacity_Flag NUMBER,
135 X_Share_From_Dept_Id NUMBER DEFAULT NULL,
136 X_Capacity_Units NUMBER DEFAULT NULL,
137 X_Resource_Group_Name VARCHAR2 DEFAULT NULL,
138 X_Available_24_Hours_Flag NUMBER,
139 X_Ctp_Flag NUMBER,
140 X_Attribute_Category VARCHAR2 DEFAULT NULL,
141 X_Attribute1 VARCHAR2 DEFAULT NULL,
142 X_Attribute2 VARCHAR2 DEFAULT NULL,
143 X_Attribute3 VARCHAR2 DEFAULT NULL,
144 X_Attribute4 VARCHAR2 DEFAULT NULL,
145 X_Attribute5 VARCHAR2 DEFAULT NULL,
146 X_Attribute6 VARCHAR2 DEFAULT NULL,
147 X_Attribute7 VARCHAR2 DEFAULT NULL,
148 X_Attribute8 VARCHAR2 DEFAULT NULL,
149 X_Attribute9 VARCHAR2 DEFAULT NULL,
150 X_Attribute10 VARCHAR2 DEFAULT NULL,
151 X_Attribute11 VARCHAR2 DEFAULT NULL,
152 X_Attribute12 VARCHAR2 DEFAULT NULL,
153 X_Attribute13 VARCHAR2 DEFAULT NULL,
154 X_Attribute14 VARCHAR2 DEFAULT NULL,
155 X_Attribute15 VARCHAR2 DEFAULT NULL,
156 X_Exception_Set_Name VARCHAR2 DEFAULT NULL,
157 X_ATP_Rule_Id NUMBER DEFAULT NULL,
158 X_Utilization NUMBER DEFAULT NULL,
159 X_Efficiency NUMBER DEFAULT NULL,
160 X_Schedule_To_Instance NUMBER,
161 X_Sequencing_Window NUMBER DEFAULT NULL, --APS Enhancement for Routings
162 X_Idle_Time_Tolerance NUMBER DEFAULT NULL --APS Enhancement for Routings
163
164 ) IS
165 CURSOR C IS
166 SELECT *
167 FROM BOM_DEPARTMENT_RESOURCES
168 WHERE rowid = X_Rowid
169 FOR UPDATE of Department_Id NOWAIT;
170 Recinfo C%ROWTYPE;
171 BEGIN
172 OPEN C;
173 FETCH C INTO Recinfo;
174 if (C%NOTFOUND) then
175 CLOSE C;
176 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
177 APP_EXCEPTION.Raise_Exception;
178 end if;
179 CLOSE C;
180 if (
181 (Recinfo.department_id = X_Department_Id)
182 AND (Recinfo.resource_id = X_Resource_Id)
183 AND (Recinfo.share_capacity_flag = X_Share_Capacity_Flag)
184 AND ( (Recinfo.share_from_dept_id = X_Share_From_Dept_Id)
185 OR ( (Recinfo.share_from_dept_id IS NULL)
186 AND (X_Share_From_Dept_Id IS NULL)))
187 AND ( (Recinfo.capacity_units = X_Capacity_Units)
188 OR ( (Recinfo.capacity_units IS NULL)
189 AND (X_Capacity_Units IS NULL)))
190 AND ( (Recinfo.resource_group_name = X_Resource_Group_Name)
191 OR ( (Recinfo.resource_group_name IS NULL)
192 AND (X_Resource_Group_Name IS NULL)))
193 AND (Recinfo.available_24_hours_flag = X_Available_24_Hours_Flag)
194 AND ( (Recinfo.ctp_flag = X_Ctp_Flag)
195 OR ( (Recinfo.ctp_flag IS NULL)
196 AND (X_Ctp_Flag IS NULL)))
197 AND ( (Recinfo.attribute_category = X_Attribute_Category)
198 OR ( (Recinfo.attribute_category IS NULL)
199 AND (X_Attribute_Category IS NULL)))
200 AND ( (Recinfo.attribute1 = X_Attribute1)
201 OR ( (Recinfo.attribute1 IS NULL)
202 AND (X_Attribute1 IS NULL)))
203 AND ( (Recinfo.attribute2 = X_Attribute2)
204 OR ( (Recinfo.attribute2 IS NULL)
205 AND (X_Attribute2 IS NULL)))
206 AND ( (Recinfo.attribute3 = X_Attribute3)
207 OR ( (Recinfo.attribute3 IS NULL)
208 AND (X_Attribute3 IS NULL)))
209 AND ( (Recinfo.attribute4 = X_Attribute4)
210 OR ( (Recinfo.attribute4 IS NULL)
211 AND (X_Attribute4 IS NULL)))
212 AND ( (Recinfo.attribute5 = X_Attribute5)
213 OR ( (Recinfo.attribute5 IS NULL)
214 AND (X_Attribute5 IS NULL)))
215 AND ( (Recinfo.attribute6 = X_Attribute6)
216 OR ( (Recinfo.attribute6 IS NULL)
217 AND (X_Attribute6 IS NULL)))
218 AND ( (Recinfo.attribute7 = X_Attribute7)
219 OR ( (Recinfo.attribute7 IS NULL)
220 AND (X_Attribute7 IS NULL)))
221 AND ( (Recinfo.attribute8 = X_Attribute8)
222 OR ( (Recinfo.attribute8 IS NULL)
223 AND (X_Attribute8 IS NULL)))
224 AND ( (Recinfo.attribute9 = X_Attribute9)
225 OR ( (Recinfo.attribute9 IS NULL)
226 AND (X_Attribute9 IS NULL)))
227 AND ( (Recinfo.attribute10 = X_Attribute10)
228 OR ( (Recinfo.attribute10 IS NULL)
229 AND (X_Attribute10 IS NULL)))
230 AND ( (Recinfo.attribute11 = X_Attribute11)
231 OR ( (Recinfo.attribute11 IS NULL)
232 AND (X_Attribute11 IS NULL)))
233 AND ( (Recinfo.attribute12 = X_Attribute12)
234 OR ( (Recinfo.attribute12 IS NULL)
235 AND (X_Attribute12 IS NULL)))
236 AND ( (Recinfo.attribute13 = X_Attribute13)
237 OR ( (Recinfo.attribute13 IS NULL)
238 AND (X_Attribute13 IS NULL)))
239 AND ( (Recinfo.attribute14 = X_Attribute14)
240 OR ( (Recinfo.attribute14 IS NULL)
241 AND (X_Attribute14 IS NULL)))
242 AND ( (Recinfo.attribute15 = X_Attribute15)
243 OR ( (Recinfo.attribute15 IS NULL)
244 AND (X_Attribute15 IS NULL)))
245 AND ( (Recinfo.exception_set_name = X_Exception_Set_Name)
246 OR ( (Recinfo.exception_set_name IS NULL)
247 AND (X_Exception_Set_Name IS NULL)))
248 AND ( (Recinfo.atp_rule_id= x_atp_rule_id)
249 OR ( (Recinfo.atp_rule_id IS NULL)
250 AND (X_atp_rule_id IS NULL)))
251 AND ( (Recinfo.utilization= x_utilization)
252 OR ( (Recinfo.utilization IS NULL)
253 AND (x_utilization IS NULL)))
254 AND ( (Recinfo.efficiency= x_efficiency)
255 OR ( (Recinfo.efficiency IS NULL)
256 AND (x_efficiency IS NULL)))
257 AND ( (Recinfo.schedule_to_instance = X_Schedule_To_Instance)
258 OR ( (Recinfo.schedule_to_instance IS NULL)
259 AND (X_Schedule_To_Instance IS NULL)))
260 AND( (Recinfo.sequencing_window = X_Sequencing_Window) --APS Enhancement for Routings
261 OR( (Recinfo.sequencing_window IS NULL)
262 AND (X_Sequencing_Window IS NULL)))
263 AND( (Recinfo.idle_time_tolerance = X_Idle_Time_Tolerance) --APS Enhancement for Routings
264 OR( (Recinfo.idle_time_tolerance IS NULL)
265 AND (X_Idle_Time_Tolerance IS NULL)))
266 ) then
267 return;
268 else
269 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
270 APP_EXCEPTION.RAISE_EXCEPTION;
271 end if;
272 END Lock_Row;
273
274
275
276 PROCEDURE Update_Row(X_Rowid VARCHAR2,
277 X_Department_Id NUMBER,
278 X_Resource_Id NUMBER,
279 X_Last_Update_Date DATE,
280 X_Last_Updated_By NUMBER,
281 X_Last_Update_Login NUMBER DEFAULT NULL,
282 X_Share_Capacity_Flag NUMBER,
283 X_Share_From_Dept_Id NUMBER DEFAULT NULL,
284 X_Capacity_Units NUMBER DEFAULT NULL,
285 X_Resource_Group_Name VARCHAR2 DEFAULT NULL,
286 X_Available_24_Hours_Flag NUMBER,
287 X_Ctp_Flag NUMBER,
288 X_Attribute_Category VARCHAR2 DEFAULT NULL,
289 X_Attribute1 VARCHAR2 DEFAULT NULL,
290 X_Attribute2 VARCHAR2 DEFAULT NULL,
291 X_Attribute3 VARCHAR2 DEFAULT NULL,
292 X_Attribute4 VARCHAR2 DEFAULT NULL,
293 X_Attribute5 VARCHAR2 DEFAULT NULL,
297 X_Attribute9 VARCHAR2 DEFAULT NULL,
294 X_Attribute6 VARCHAR2 DEFAULT NULL,
295 X_Attribute7 VARCHAR2 DEFAULT NULL,
296 X_Attribute8 VARCHAR2 DEFAULT NULL,
298 X_Attribute10 VARCHAR2 DEFAULT NULL,
299 X_Attribute11 VARCHAR2 DEFAULT NULL,
300 X_Attribute12 VARCHAR2 DEFAULT NULL,
301 X_Attribute13 VARCHAR2 DEFAULT NULL,
302 X_Attribute14 VARCHAR2 DEFAULT NULL,
303 X_Attribute15 VARCHAR2 DEFAULT NULL,
304 X_Exception_Set_Name VARCHAR2 DEFAULT NULL,
305 X_ATP_Rule_Id NUMBER DEFAULT NULL,
306 X_Utilization NUMBER DEFAULT NULL,
307 X_Efficiency NUMBER DEFAULT NULL,
308 X_Schedule_To_Instance NUMBER,
309 X_Sequencing_Window NUMBER DEFAULT NULL, --APS Enhancement for Routings
310 X_Idle_Time_Tolerance NUMBER DEFAULT NULL --APS Enhancement for Routings
311 ) IS
312
313 Cursor C is SELECT rowid FROM BOM_DEPARTMENT_RESOURCES
314 WHERE share_from_dept_id = X_Department_Id
315 AND resource_id = X_Resource_Id ;
316 BEGIN
317 UPDATE BOM_DEPARTMENT_RESOURCES
318 SET
319 department_id = X_Department_Id,
320 resource_id = X_Resource_Id,
321 last_update_date = X_Last_Update_Date,
322 last_updated_by = X_Last_Updated_By,
323 last_update_login = X_Last_Update_Login,
324 share_capacity_flag = X_Share_Capacity_Flag,
325 share_from_dept_id = X_Share_From_Dept_Id,
326 capacity_units = X_Capacity_Units,
327 resource_group_name = X_Resource_Group_Name,
328 available_24_hours_flag = X_Available_24_Hours_Flag,
329 ctp_flag = X_Ctp_Flag,
330 attribute_category = X_Attribute_Category,
331 attribute1 = X_Attribute1,
332 attribute2 = X_Attribute2,
333 attribute3 = X_Attribute3,
334 attribute4 = X_Attribute4,
335 attribute5 = X_Attribute5,
336 attribute6 = X_Attribute6,
337 attribute7 = X_Attribute7,
338 attribute8 = X_Attribute8,
339 attribute9 = X_Attribute9,
340 attribute10 = X_Attribute10,
341 attribute11 = X_Attribute11,
342 attribute12 = X_Attribute12,
343 attribute13 = X_Attribute13,
344 attribute14 = X_Attribute14,
345 attribute15 = X_Attribute15,
346 exception_set_name = X_Exception_Set_Name,
347 atp_rule_id = X_ATP_Rule_Id,
348 utilization = X_Utilization,
349 efficiency = X_Efficiency,
350 schedule_to_instance = X_Schedule_To_Instance,
351 sequencing_window = X_Sequencing_Window, --APS Enhancement for Routings
352 idle_time_tolerance = X_Idle_Time_Tolerance --APS Enhancement for Routings
353 WHERE rowid = X_rowid;
354
355 FOR c_row_id in C LOOP
356 UPDATE BOM_DEPARTMENT_RESOURCES
357 SET
358 last_update_date = X_Last_Update_Date,
359 last_updated_by = X_Last_Updated_By,
360 last_update_login = X_Last_Update_Login,
361 capacity_units = X_Capacity_Units,
362 available_24_hours_flag = X_Available_24_Hours_Flag,
363 ctp_flag = X_Ctp_Flag,
364 attribute_category = X_Attribute_Category,
365 attribute1 = X_Attribute1,
366 attribute2 = X_Attribute2,
367 attribute3 = X_Attribute3,
368 attribute4 = X_Attribute4,
369 attribute5 = X_Attribute5,
370 attribute6 = X_Attribute6,
371 attribute7 = X_Attribute7,
372 attribute8 = X_Attribute8,
373 attribute9 = X_Attribute9,
374 attribute10 = X_Attribute10,
375 attribute11 = X_Attribute11,
376 attribute12 = X_Attribute12,
377 attribute13 = X_Attribute13,
378 attribute14 = X_Attribute14,
379 attribute15 = X_Attribute15,
380 exception_set_name = X_Exception_Set_Name,
381 /*atp_rule_id = X_ATP_Rule_Id, -- BUG 3961376
382 utilization = X_Utilization,
383 efficiency = X_Efficiency,
384 schedule_to_instance = X_Schedule_To_Instance,
385 sequencing_window = X_Sequencing_Window, --APS Enhancement for Routings
386 idle_time_tolerance = X_Idle_Time_Tolerance*/ --APS Enhancement for Routings
387 atp_rule_id = X_ATP_Rule_Id, /* Added this to enable update of atp_rule_id, utilization & efficiency for bug 6321534*/
388 utilization = X_Utilization,
389 efficiency = X_Efficiency
390 WHERE rowid = c_row_id.rowid;
394 Raise NO_DATA_FOUND;
391 END LOOP ;
392
393 if (SQL%NOTFOUND) then
395 end if;
396
397 END Update_Row;
398
399
400
401 PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
402 BEGIN
403 DELETE FROM BOM_DEPARTMENT_RESOURCES
404 WHERE rowid = X_Rowid;
405
406 if (SQL%NOTFOUND) then
407 Raise NO_DATA_FOUND;
408 end if;
409 END Delete_Row;
410
411
412
413 PROCEDURE Check_Unique(X_Rowid VARCHAR2,
414 X_Department_Id NUMBER,
415 X_Resource_Id NUMBER) IS
416 dummy NUMBER;
417 res_code VARCHAR2(10);
418 BEGIN
419 SELECT RESOURCE_CODE INTO res_code FROM BOM_RESOURCES
420 WHERE RESOURCE_ID = X_Resource_Id;
421 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
422 (SELECT 1 FROM BOM_DEPARTMENT_RESOURCES
423 WHERE DEPARTMENT_ID = X_Department_Id
424 AND RESOURCE_ID = X_Resource_Id
425 AND ((X_Rowid IS NULL) OR (ROWID <> X_Rowid))
426 );
427
428 EXCEPTION
429 WHEN NO_DATA_FOUND THEN
430 FND_MESSAGE.SET_NAME('BOM', 'BOM_ALREADY_EXISTS');
431 FND_MESSAGE.SET_TOKEN('ENTITY1', 'RESOURCE_CAP', TRUE);
432 FND_MESSAGE.SET_TOKEN('ENTITY2', res_code);
433 APP_EXCEPTION.RAISE_EXCEPTION;
434 END Check_Unique;
435
436
437 PROCEDURE Check_References(X_Rowid VARCHAR2,
438 X_Resource_Id NUMBER,
439 X_Department_Id NUMBER) IS
440 dummy NUMBER;
441 err_code NUMBER;
442 message_name VARCHAR2(80);
443 res_code VARCHAR2(10);
444 BEGIN
445 SELECT RESOURCE_CODE INTO res_code FROM BOM_RESOURCES
446 WHERE RESOURCE_ID = X_Resource_Id;
447
448 err_code := 1;
449 message_name := 'BOM_CANNOT_DELETE_RESOURCE';
450 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
451 (SELECT 1 FROM BOM_RESOURCE_SHIFTS
452 WHERE DEPARTMENT_ID = X_Department_Id
453 AND RESOURCE_ID = X_Resource_Id);
454
455 err_code := 2;
456 message_name := 'BOM_CANNOT_DELETE_SHARED_RES';
457 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
458 (SELECT 1 FROM BOM_DEPARTMENT_RESOURCES
459 WHERE SHARE_FROM_DEPT_ID = X_Department_Id
460 AND RESOURCE_ID = X_Resource_Id);
461
462 err_code := 3;
463 message_name := 'BOM_CANNOT_DELETE_RES_STD_OP';
464 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
465 (SELECT 1 FROM BOM_STD_OP_RESOURCES bsor,
466 BOM_STANDARD_OPERATIONS bso
467 WHERE bso.STANDARD_OPERATION_ID = bsor.STANDARD_OPERATION_ID
468 AND bso.DEPARTMENT_ID = X_Department_Id
469 AND bsor.RESOURCE_ID = X_Resource_Id);
470
471 message_name := 'BOM_CANNOT_DELETE_RES_ROUTING';
472 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
473 (SELECT 1 FROM BOM_OPERATION_RESOURCES bor,
474 BOM_OPERATION_SEQUENCES bos
475 WHERE bor.OPERATION_SEQUENCE_ID = bos.OPERATION_SEQUENCE_ID
476 AND bor.RESOURCE_ID = X_Resource_Id
477 AND bos.DEPARTMENT_ID = X_Department_Id);
478
479 message_name := 'BOM_CANNOT_DELETE_RES_WIP_OP';
480 /* bug 9186572 - added WIP_DISCRETE_JOBS to check for the status of job also */
481 SELECT 1 INTO dummy FROM DUAL WHERE NOT EXISTS
482 (SELECT 1 FROM WIP_OPERATIONS wo,
483 WIP_OPERATION_RESOURCES wor,
484 WIP_DISCRETE_JOBS wdj
485 WHERE wo.WIP_ENTITY_ID = wor.WIP_ENTITY_ID
486 AND wdj.WIP_ENTITY_ID = wo.WIP_ENTITY_ID
487 AND wo.OPERATION_SEQ_NUM = wor.OPERATION_SEQ_NUM
488 AND wo.ORGANIZATION_ID = wor.ORGANIZATION_ID
489 AND nvl(wo.REPETITIVE_SCHEDULE_ID, -1) = nvl(wor.REPETITIVE_SCHEDULE_ID, -1)
490 AND wor.RESOURCE_ID = X_Resource_Id
491 AND wo.DEPARTMENT_ID = X_Department_Id
492 AND wdj.STATUS_TYPE <> 12);
493
494 EXCEPTION
495 WHEN NO_DATA_FOUND THEN
496 IF err_code = 1 THEN
497 FND_MESSAGE.SET_NAME('BOM',message_name);
498 APP_EXCEPTION.RAISE_EXCEPTION;
499 ELSIF err_code = 2 THEN
500 FND_MESSAGE.SET_NAME('BOM',message_name);
501 FND_MESSAGE.SET_TOKEN('ENTITY', res_code);
502 APP_EXCEPTION.RAISE_EXCEPTION;
503 ELSIF err_code = 3 THEN
504 FND_MESSAGE.SET_NAME('BOM', message_name);
505 FND_MESSAGE.SET_TOKEN('ENTITY', res_code);
506 APP_EXCEPTION.RAISE_EXCEPTION;
507 END IF;
508
509 END Check_References;
510
511
512
513 END BOM_DEPARTMENT_RESOURCES_PKG;