1 package body AHL_VISITS_PKG as
2 /* $Header: AHLLVSTB.pls 120.1 2007/12/18 09:58:57 sowsubra ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out nocopy VARCHAR2,
5 X_VISIT_ID in NUMBER,
6 X_ESTIMATED_PRICE in NUMBER,
7 X_PRIORITY_CODE in VARCHAR2,
8 X_PROJECT_TEMPLATE_ID in NUMBER,
9 X_UNIT_SCHEDULE_ID in NUMBER,
10 X_ACTUAL_PRICE in NUMBER,
11 X_OUTSIDE_PARTY_FLAG in VARCHAR2,
12 X_ANY_TASK_CHG_FLAG in VARCHAR2,
13 X_PRICE_LIST_ID in NUMBER,
14 X_CLOSE_DATE_TIME in DATE,
15 X_SCHEDULE_DESIGNATOR in VARCHAR2,
16 X_SERVICE_REQUEST_ID in NUMBER,
17 X_SPACE_CATEGORY_CODE in VARCHAR2,
18 X_OBJECT_VERSION_NUMBER in NUMBER,
19 X_ORGANIZATION_ID in NUMBER,
20 X_DEPARTMENT_ID in NUMBER,
21 X_STATUS_CODE in VARCHAR2,
22 X_START_DATE_TIME in DATE,
23 X_VISIT_TYPE_CODE in VARCHAR2,
24 X_SIMULATION_PLAN_ID in NUMBER,
25 X_ITEM_INSTANCE_ID in NUMBER,
26 X_INVENTORY_ITEM_ID in NUMBER,
27 X_ASSO_PRIMARY_VISIT_ID in NUMBER,
28 X_SIMULATION_DELETE_FLAG in VARCHAR2,
29 X_TEMPLATE_FLAG in VARCHAR2,
30 X_OUT_OF_SYNC_FLAG in VARCHAR2,
31 X_PROJECT_FLAG in VARCHAR2,
32 X_PROJECT_ID in NUMBER,
33 X_VISIT_NUMBER in NUMBER,
34 X_ITEM_ORGANIZATION_ID in NUMBER,
35 X_ATTRIBUTE_CATEGORY in VARCHAR2,
36 X_ATTRIBUTE1 in VARCHAR2,
37 X_ATTRIBUTE2 in VARCHAR2,
38 X_ATTRIBUTE3 in VARCHAR2,
39 X_ATTRIBUTE4 in VARCHAR2,
40 X_ATTRIBUTE5 in VARCHAR2,
41 X_ATTRIBUTE6 in VARCHAR2,
42 X_ATTRIBUTE7 in VARCHAR2,
43 X_ATTRIBUTE8 in VARCHAR2,
44 X_ATTRIBUTE9 in VARCHAR2,
45 X_ATTRIBUTE10 in VARCHAR2,
46 X_ATTRIBUTE11 in VARCHAR2,
47 X_ATTRIBUTE12 in VARCHAR2,
48 X_ATTRIBUTE13 in VARCHAR2,
49 X_ATTRIBUTE14 in VARCHAR2,
50 X_ATTRIBUTE15 in VARCHAR2,
51 X_VISIT_NAME in VARCHAR2,
52 X_DESCRIPTION in VARCHAR2,
53 X_INV_LOCATOR_ID in NUMBER, --Added by sowsubra
54 X_CREATION_DATE in DATE,
55 X_CREATED_BY in NUMBER,
56 X_LAST_UPDATE_DATE in DATE,
57 X_LAST_UPDATED_BY in NUMBER,
58 X_LAST_UPDATE_LOGIN in NUMBER
59 ) is
60 cursor C is select ROWID from AHL_VISITS_B
61 where VISIT_ID = X_VISIT_ID
62 ;
63 begin
64 insert into AHL_VISITS_B (
65 ESTIMATED_PRICE,
66 PRIORITY_CODE,
67 PROJECT_TEMPLATE_ID,
68 UNIT_SCHEDULE_ID,
69 ACTUAL_PRICE,
70 OUTSIDE_PARTY_FLAG,
71 ANY_TASK_CHG_FLAG,
72 PRICE_LIST_ID,
73 CLOSE_DATE_TIME,
74 SCHEDULE_DESIGNATOR,
75 SERVICE_REQUEST_ID,
76 SPACE_CATEGORY_CODE,
77 VISIT_ID,
78 OBJECT_VERSION_NUMBER,
79 ORGANIZATION_ID,
80 DEPARTMENT_ID,
81 STATUS_CODE,
82 START_DATE_TIME,
83 VISIT_TYPE_CODE,
84 SIMULATION_PLAN_ID,
85 ITEM_INSTANCE_ID,
86 INVENTORY_ITEM_ID,
87 ASSO_PRIMARY_VISIT_ID,
88 SIMULATION_DELETE_FLAG,
89 TEMPLATE_FLAG,
90 OUT_OF_SYNC_FLAG,
91 PROJECT_FLAG,
92 PROJECT_ID,
93 VISIT_NUMBER,
94 ITEM_ORGANIZATION_ID,
95 INV_LOCATOR_ID, --Added by sowsubra
96 ATTRIBUTE_CATEGORY,
97 ATTRIBUTE1,
98 ATTRIBUTE2,
99 ATTRIBUTE3,
100 ATTRIBUTE4,
101 ATTRIBUTE5,
102 ATTRIBUTE6,
103 ATTRIBUTE7,
104 ATTRIBUTE8,
105 ATTRIBUTE9,
106 ATTRIBUTE10,
107 ATTRIBUTE11,
108 ATTRIBUTE12,
109 ATTRIBUTE13,
110 ATTRIBUTE14,
111 ATTRIBUTE15,
112 CREATION_DATE,
113 CREATED_BY,
114 LAST_UPDATE_DATE,
115 LAST_UPDATED_BY,
116 LAST_UPDATE_LOGIN
117 ) values (
118 X_ESTIMATED_PRICE,
119 X_PRIORITY_CODE,
120 X_PROJECT_TEMPLATE_ID,
121 X_UNIT_SCHEDULE_ID,
122 X_ACTUAL_PRICE,
123 X_OUTSIDE_PARTY_FLAG,
124 X_ANY_TASK_CHG_FLAG,
125 X_PRICE_LIST_ID,
126 X_CLOSE_DATE_TIME,
127 X_SCHEDULE_DESIGNATOR,
128 X_SERVICE_REQUEST_ID,
129 X_SPACE_CATEGORY_CODE,
130 X_VISIT_ID,
131 X_OBJECT_VERSION_NUMBER,
132 X_ORGANIZATION_ID,
133 X_DEPARTMENT_ID,
134 X_STATUS_CODE,
135 X_START_DATE_TIME,
136 X_VISIT_TYPE_CODE,
137 X_SIMULATION_PLAN_ID,
138 X_ITEM_INSTANCE_ID,
139 X_INVENTORY_ITEM_ID,
140 X_ASSO_PRIMARY_VISIT_ID,
141 X_SIMULATION_DELETE_FLAG,
142 X_TEMPLATE_FLAG,
143 X_OUT_OF_SYNC_FLAG,
144 X_PROJECT_FLAG,
145 X_PROJECT_ID,
146 X_VISIT_NUMBER,
147 X_ITEM_ORGANIZATION_ID,
148 X_INV_LOCATOR_ID, --Added by sowsubra
149 X_ATTRIBUTE_CATEGORY,
150 X_ATTRIBUTE1,
151 X_ATTRIBUTE2,
152 X_ATTRIBUTE3,
153 X_ATTRIBUTE4,
154 X_ATTRIBUTE5,
155 X_ATTRIBUTE6,
156 X_ATTRIBUTE7,
157 X_ATTRIBUTE8,
158 X_ATTRIBUTE9,
159 X_ATTRIBUTE10,
160 X_ATTRIBUTE11,
161 X_ATTRIBUTE12,
162 X_ATTRIBUTE13,
163 X_ATTRIBUTE14,
164 X_ATTRIBUTE15,
165 X_CREATION_DATE,
166 X_CREATED_BY,
167 X_LAST_UPDATE_DATE,
168 X_LAST_UPDATED_BY,
169 X_LAST_UPDATE_LOGIN
170 );
171
172 insert into AHL_VISITS_TL (
173 VISIT_ID,
174 LAST_UPDATE_DATE,
175 LAST_UPDATED_BY,
176 CREATION_DATE,
177 CREATED_BY,
178 LAST_UPDATE_LOGIN,
179 DESCRIPTION,
180 VISIT_NAME,
181 LANGUAGE,
182 SOURCE_LANG
183 ) select
184 X_VISIT_ID,
185 X_LAST_UPDATE_DATE,
186 X_LAST_UPDATED_BY,
187 X_CREATION_DATE,
188 X_CREATED_BY,
189 X_LAST_UPDATE_LOGIN,
190 X_DESCRIPTION,
191 X_VISIT_NAME,
192 L.LANGUAGE_CODE,
193 userenv('LANG')
194 from FND_LANGUAGES L
195 where L.INSTALLED_FLAG in ('I', 'B')
196 and not exists
197 (select NULL
198 from AHL_VISITS_TL T
199 where T.VISIT_ID = X_VISIT_ID
200 and T.LANGUAGE = L.LANGUAGE_CODE);
201
202 open c;
203 fetch c into X_ROWID;
204 if (c%notfound) then
205 close c;
206 raise no_data_found;
207 end if;
208 close c;
209
210 end INSERT_ROW;
211
212 procedure LOCK_ROW (
213 X_VISIT_ID in NUMBER,
214 X_ESTIMATED_PRICE in NUMBER,
215 X_PRIORITY_CODE in VARCHAR2,
216 X_PROJECT_TEMPLATE_ID in NUMBER,
217 X_UNIT_SCHEDULE_ID in NUMBER,
218 X_ACTUAL_PRICE in NUMBER,
219 X_OUTSIDE_PARTY_FLAG in VARCHAR2,
220 X_ANY_TASK_CHG_FLAG in VARCHAR2,
221 X_PRICE_LIST_ID in NUMBER,
222 X_CLOSE_DATE_TIME in DATE,
223 X_SCHEDULE_DESIGNATOR in VARCHAR2,
224 X_SERVICE_REQUEST_ID in NUMBER,
225 X_SPACE_CATEGORY_CODE in VARCHAR2,
226 X_OBJECT_VERSION_NUMBER in NUMBER,
227 X_ORGANIZATION_ID in NUMBER,
228 X_DEPARTMENT_ID in NUMBER,
229 X_STATUS_CODE in VARCHAR2,
230 X_START_DATE_TIME in DATE,
231 X_VISIT_TYPE_CODE in VARCHAR2,
232 X_SIMULATION_PLAN_ID in NUMBER,
233 X_ITEM_INSTANCE_ID in NUMBER,
234 X_INVENTORY_ITEM_ID in NUMBER,
235 X_ASSO_PRIMARY_VISIT_ID in NUMBER,
236 X_SIMULATION_DELETE_FLAG in VARCHAR2,
237 X_TEMPLATE_FLAG in VARCHAR2,
238 X_OUT_OF_SYNC_FLAG in VARCHAR2,
239 X_PROJECT_FLAG in VARCHAR2,
240 X_PROJECT_ID in NUMBER,
241 X_VISIT_NUMBER in NUMBER,
242 X_ITEM_ORGANIZATION_ID in NUMBER,
243 X_ATTRIBUTE_CATEGORY in VARCHAR2,
244 X_ATTRIBUTE1 in VARCHAR2,
245 X_ATTRIBUTE2 in VARCHAR2,
246 X_ATTRIBUTE3 in VARCHAR2,
247 X_ATTRIBUTE4 in VARCHAR2,
248 X_ATTRIBUTE5 in VARCHAR2,
249 X_ATTRIBUTE6 in VARCHAR2,
250 X_ATTRIBUTE7 in VARCHAR2,
251 X_ATTRIBUTE8 in VARCHAR2,
252 X_ATTRIBUTE9 in VARCHAR2,
253 X_ATTRIBUTE10 in VARCHAR2,
254 X_ATTRIBUTE11 in VARCHAR2,
255 X_ATTRIBUTE12 in VARCHAR2,
256 X_ATTRIBUTE13 in VARCHAR2,
257 X_ATTRIBUTE14 in VARCHAR2,
258 X_ATTRIBUTE15 in VARCHAR2,
259 X_VISIT_NAME in VARCHAR2,
260 X_DESCRIPTION in VARCHAR2,
261 X_INV_LOCATOR_ID in NUMBER --Added by sowsubra
262 ) is
263 cursor c is select
264 ESTIMATED_PRICE,
265 PRIORITY_CODE,
266 PROJECT_TEMPLATE_ID,
267 UNIT_SCHEDULE_ID,
268 ACTUAL_PRICE,
269 OUTSIDE_PARTY_FLAG,
270 ANY_TASK_CHG_FLAG,
271 PRICE_LIST_ID,
272 CLOSE_DATE_TIME,
273 SCHEDULE_DESIGNATOR,
274 SERVICE_REQUEST_ID,
275 SPACE_CATEGORY_CODE,
276 OBJECT_VERSION_NUMBER,
277 ORGANIZATION_ID,
278 DEPARTMENT_ID,
279 STATUS_CODE,
280 START_DATE_TIME,
281 VISIT_TYPE_CODE,
282 SIMULATION_PLAN_ID,
283 ITEM_INSTANCE_ID,
284 INVENTORY_ITEM_ID,
285 ASSO_PRIMARY_VISIT_ID,
286 SIMULATION_DELETE_FLAG,
287 TEMPLATE_FLAG,
288 OUT_OF_SYNC_FLAG,
289 PROJECT_FLAG,
290 PROJECT_ID,
291 VISIT_NUMBER,
292 ITEM_ORGANIZATION_ID,
293 INV_LOCATOR_ID, --Added by sowsubra
294 ATTRIBUTE_CATEGORY,
295 ATTRIBUTE1,
296 ATTRIBUTE2,
297 ATTRIBUTE3,
298 ATTRIBUTE4,
299 ATTRIBUTE5,
300 ATTRIBUTE6,
301 ATTRIBUTE7,
302 ATTRIBUTE8,
303 ATTRIBUTE9,
304 ATTRIBUTE10,
305 ATTRIBUTE11,
306 ATTRIBUTE12,
307 ATTRIBUTE13,
308 ATTRIBUTE14,
309 ATTRIBUTE15
310 from AHL_VISITS_B
311 where VISIT_ID = X_VISIT_ID
312 for update of VISIT_ID nowait;
313 recinfo c%rowtype;
314
315 cursor c1 is select
316 VISIT_NAME,
317 DESCRIPTION,
318 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
319 from AHL_VISITS_TL
320 where VISIT_ID = X_VISIT_ID
321 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
322 for update of VISIT_ID nowait;
323 begin
324 open c;
325 fetch c into recinfo;
326 if (c%notfound) then
327 close c;
328 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
329 app_exception.raise_exception;
330 end if;
331 close c;
332 if ( ((recinfo.ESTIMATED_PRICE = X_ESTIMATED_PRICE)
333 OR ((recinfo.ESTIMATED_PRICE is null) AND (X_ESTIMATED_PRICE is null)))
334 /*sowsubra B5854712*/
335 AND ((recinfo.INV_LOCATOR_ID = X_INV_LOCATOR_ID)
336 OR ((recinfo.INV_LOCATOR_ID is null) AND (X_INV_LOCATOR_ID is null)))
337 AND ((recinfo.PRIORITY_CODE = X_PRIORITY_CODE)
338 OR ((recinfo.PRIORITY_CODE is null) AND (X_PRIORITY_CODE is null)))
339 AND ((recinfo.PROJECT_TEMPLATE_ID = X_PROJECT_TEMPLATE_ID)
340 OR ((recinfo.PROJECT_TEMPLATE_ID is null) AND (X_PROJECT_TEMPLATE_ID is null)))
341 AND ((recinfo.UNIT_SCHEDULE_ID = X_UNIT_SCHEDULE_ID)
342 OR ((recinfo.UNIT_SCHEDULE_ID is null) AND (X_UNIT_SCHEDULE_ID is null)))
343 AND ((recinfo.ACTUAL_PRICE = X_ACTUAL_PRICE)
344 OR ((recinfo.ACTUAL_PRICE is null) AND (X_ACTUAL_PRICE is null)))
345 AND ((recinfo.OUTSIDE_PARTY_FLAG = X_OUTSIDE_PARTY_FLAG)
346 OR ((recinfo.OUTSIDE_PARTY_FLAG is null) AND (X_OUTSIDE_PARTY_FLAG is null)))
347 AND ((recinfo.ANY_TASK_CHG_FLAG = X_ANY_TASK_CHG_FLAG)
348 OR ((recinfo.ANY_TASK_CHG_FLAG is null) AND (X_ANY_TASK_CHG_FLAG is null)))
349 AND ((recinfo.PRICE_LIST_ID = X_PRICE_LIST_ID)
350 OR ((recinfo.PRICE_LIST_ID is null) AND (X_PRICE_LIST_ID is null)))
351 AND ((recinfo.CLOSE_DATE_TIME = X_CLOSE_DATE_TIME)
352 OR ((recinfo.CLOSE_DATE_TIME is null) AND (X_CLOSE_DATE_TIME is null)))
353 AND ((recinfo.SCHEDULE_DESIGNATOR = X_SCHEDULE_DESIGNATOR)
354 OR ((recinfo.SCHEDULE_DESIGNATOR is null) AND (X_SCHEDULE_DESIGNATOR is null)))
355 AND ((recinfo.SERVICE_REQUEST_ID = X_SERVICE_REQUEST_ID)
356 OR ((recinfo.SERVICE_REQUEST_ID is null) AND (X_SERVICE_REQUEST_ID is null)))
357 AND ((recinfo.SPACE_CATEGORY_CODE = X_SPACE_CATEGORY_CODE)
358 OR ((recinfo.SPACE_CATEGORY_CODE is null) AND (X_SPACE_CATEGORY_CODE is null)))
359 AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
360 AND ((recinfo.ORGANIZATION_ID = X_ORGANIZATION_ID)
361 OR ((recinfo.ORGANIZATION_ID is null) AND (X_ORGANIZATION_ID is null)))
362 AND ((recinfo.DEPARTMENT_ID = X_DEPARTMENT_ID)
363 OR ((recinfo.DEPARTMENT_ID is null) AND (X_DEPARTMENT_ID is null)))
364 AND ((recinfo.STATUS_CODE = X_STATUS_CODE)
365 OR ((recinfo.STATUS_CODE is null) AND (X_STATUS_CODE is null)))
366 AND ((recinfo.START_DATE_TIME = X_START_DATE_TIME)
367 OR ((recinfo.START_DATE_TIME is null) AND (X_START_DATE_TIME is null)))
368 AND ((recinfo.VISIT_TYPE_CODE = X_VISIT_TYPE_CODE)
369 OR ((recinfo.VISIT_TYPE_CODE is null) AND (X_VISIT_TYPE_CODE is null)))
370 AND ((recinfo.SIMULATION_PLAN_ID = X_SIMULATION_PLAN_ID)
371 OR ((recinfo.SIMULATION_PLAN_ID is null) AND (X_SIMULATION_PLAN_ID is null)))
372 AND ((recinfo.ITEM_INSTANCE_ID = X_ITEM_INSTANCE_ID)
373 OR ((recinfo.ITEM_INSTANCE_ID is null) AND (X_ITEM_INSTANCE_ID is null)))
374 AND ((recinfo.INVENTORY_ITEM_ID = X_INVENTORY_ITEM_ID)
375 OR ((recinfo.INVENTORY_ITEM_ID is null) AND (X_INVENTORY_ITEM_ID is null)))
376 AND ((recinfo.ASSO_PRIMARY_VISIT_ID = X_ASSO_PRIMARY_VISIT_ID)
377 OR ((recinfo.ASSO_PRIMARY_VISIT_ID is null) AND (X_ASSO_PRIMARY_VISIT_ID is null)))
378 AND ((recinfo.SIMULATION_DELETE_FLAG = X_SIMULATION_DELETE_FLAG)
379 OR ((recinfo.SIMULATION_DELETE_FLAG is null) AND (X_SIMULATION_DELETE_FLAG is null)))
380 AND (recinfo.TEMPLATE_FLAG = X_TEMPLATE_FLAG)
381 AND ((recinfo.OUT_OF_SYNC_FLAG = X_OUT_OF_SYNC_FLAG)
382 OR ((recinfo.OUT_OF_SYNC_FLAG is null) AND (X_OUT_OF_SYNC_FLAG is null)))
383 AND (recinfo.PROJECT_FLAG = X_PROJECT_FLAG)
384 AND ((recinfo.PROJECT_ID = X_PROJECT_ID)
385 OR ((recinfo.PROJECT_ID is null) AND (X_PROJECT_ID is null)))
386 AND (recinfo.VISIT_NUMBER = X_VISIT_NUMBER)
387 AND ((recinfo.ITEM_ORGANIZATION_ID = X_ITEM_ORGANIZATION_ID)
388 OR ((recinfo.ITEM_ORGANIZATION_ID is null) AND (X_ITEM_ORGANIZATION_ID is null)))
389 AND ((recinfo.ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY)
390 OR ((recinfo.ATTRIBUTE_CATEGORY is null) AND (X_ATTRIBUTE_CATEGORY is null)))
391 AND ((recinfo.ATTRIBUTE1 = X_ATTRIBUTE1)
392 OR ((recinfo.ATTRIBUTE1 is null) AND (X_ATTRIBUTE1 is null)))
393 AND ((recinfo.ATTRIBUTE2 = X_ATTRIBUTE2)
394 OR ((recinfo.ATTRIBUTE2 is null) AND (X_ATTRIBUTE2 is null)))
395 AND ((recinfo.ATTRIBUTE3 = X_ATTRIBUTE3)
396 OR ((recinfo.ATTRIBUTE3 is null) AND (X_ATTRIBUTE3 is null)))
397 AND ((recinfo.ATTRIBUTE4 = X_ATTRIBUTE4)
398 OR ((recinfo.ATTRIBUTE4 is null) AND (X_ATTRIBUTE4 is null)))
399 AND ((recinfo.ATTRIBUTE5 = X_ATTRIBUTE5)
400 OR ((recinfo.ATTRIBUTE5 is null) AND (X_ATTRIBUTE5 is null)))
404 OR ((recinfo.ATTRIBUTE7 is null) AND (X_ATTRIBUTE7 is null)))
401 AND ((recinfo.ATTRIBUTE6 = X_ATTRIBUTE6)
402 OR ((recinfo.ATTRIBUTE6 is null) AND (X_ATTRIBUTE6 is null)))
403 AND ((recinfo.ATTRIBUTE7 = X_ATTRIBUTE7)
405 AND ((recinfo.ATTRIBUTE8 = X_ATTRIBUTE8)
406 OR ((recinfo.ATTRIBUTE8 is null) AND (X_ATTRIBUTE8 is null)))
407 AND ((recinfo.ATTRIBUTE9 = X_ATTRIBUTE9)
408 OR ((recinfo.ATTRIBUTE9 is null) AND (X_ATTRIBUTE9 is null)))
409 AND ((recinfo.ATTRIBUTE10 = X_ATTRIBUTE10)
410 OR ((recinfo.ATTRIBUTE10 is null) AND (X_ATTRIBUTE10 is null)))
411 AND ((recinfo.ATTRIBUTE11 = X_ATTRIBUTE11)
412 OR ((recinfo.ATTRIBUTE11 is null) AND (X_ATTRIBUTE11 is null)))
413 AND ((recinfo.ATTRIBUTE12 = X_ATTRIBUTE12)
414 OR ((recinfo.ATTRIBUTE12 is null) AND (X_ATTRIBUTE12 is null)))
415 AND ((recinfo.ATTRIBUTE13 = X_ATTRIBUTE13)
416 OR ((recinfo.ATTRIBUTE13 is null) AND (X_ATTRIBUTE13 is null)))
417 AND ((recinfo.ATTRIBUTE14 = X_ATTRIBUTE14)
418 OR ((recinfo.ATTRIBUTE14 is null) AND (X_ATTRIBUTE14 is null)))
419 AND ((recinfo.ATTRIBUTE15 = X_ATTRIBUTE15)
420 OR ((recinfo.ATTRIBUTE15 is null) AND (X_ATTRIBUTE15 is null)))
421 ) then
422 null;
423 else
424 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
425 app_exception.raise_exception;
426 end if;
427
428 for tlinfo in c1 loop
429 if (tlinfo.BASELANG = 'Y') then
430 if ( ((tlinfo.VISIT_NAME = X_VISIT_NAME)
431 OR ((tlinfo.VISIT_NAME is null) AND (X_VISIT_NAME is null)))
432 AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
433 OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
434 ) then
435 null;
436 else
437 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
438 app_exception.raise_exception;
439 end if;
440 end if;
441 end loop;
442 return;
443 end LOCK_ROW;
444
445 procedure UPDATE_ROW (
446 X_VISIT_ID in NUMBER,
447 X_ESTIMATED_PRICE in NUMBER,
448 X_PRIORITY_CODE in VARCHAR2,
449 X_PROJECT_TEMPLATE_ID in NUMBER,
450 X_UNIT_SCHEDULE_ID in NUMBER,
451 X_ACTUAL_PRICE in NUMBER,
452 X_OUTSIDE_PARTY_FLAG in VARCHAR2,
453 X_ANY_TASK_CHG_FLAG in VARCHAR2,
454 X_PRICE_LIST_ID in NUMBER,
455 X_CLOSE_DATE_TIME in DATE,
456 X_SCHEDULE_DESIGNATOR in VARCHAR2,
457 X_SERVICE_REQUEST_ID in NUMBER,
458 X_SPACE_CATEGORY_CODE in VARCHAR2,
459 X_OBJECT_VERSION_NUMBER in NUMBER,
460 X_ORGANIZATION_ID in NUMBER,
461 X_DEPARTMENT_ID in NUMBER,
462 X_STATUS_CODE in VARCHAR2,
463 X_START_DATE_TIME in DATE,
464 X_VISIT_TYPE_CODE in VARCHAR2,
465 X_SIMULATION_PLAN_ID in NUMBER,
466 X_ITEM_INSTANCE_ID in NUMBER,
467 X_INVENTORY_ITEM_ID in NUMBER,
468 X_ASSO_PRIMARY_VISIT_ID in NUMBER,
469 X_SIMULATION_DELETE_FLAG in VARCHAR2,
470 X_TEMPLATE_FLAG in VARCHAR2,
471 X_OUT_OF_SYNC_FLAG in VARCHAR2,
472 X_PROJECT_FLAG in VARCHAR2,
473 X_PROJECT_ID in NUMBER,
474 X_VISIT_NUMBER in NUMBER,
475 X_ITEM_ORGANIZATION_ID in NUMBER,
476 X_ATTRIBUTE_CATEGORY in VARCHAR2,
477 X_ATTRIBUTE1 in VARCHAR2,
478 X_ATTRIBUTE2 in VARCHAR2,
479 X_ATTRIBUTE3 in VARCHAR2,
480 X_ATTRIBUTE4 in VARCHAR2,
481 X_ATTRIBUTE5 in VARCHAR2,
482 X_ATTRIBUTE6 in VARCHAR2,
483 X_ATTRIBUTE7 in VARCHAR2,
484 X_ATTRIBUTE8 in VARCHAR2,
485 X_ATTRIBUTE9 in VARCHAR2,
486 X_ATTRIBUTE10 in VARCHAR2,
487 X_ATTRIBUTE11 in VARCHAR2,
488 X_ATTRIBUTE12 in VARCHAR2,
489 X_ATTRIBUTE13 in VARCHAR2,
490 X_ATTRIBUTE14 in VARCHAR2,
491 X_ATTRIBUTE15 in VARCHAR2,
492 X_VISIT_NAME in VARCHAR2,
493 X_DESCRIPTION in VARCHAR2,
494 X_INV_LOCATOR_ID in NUMBER, --Added by sowsubra
495 X_LAST_UPDATE_DATE in DATE,
496 X_LAST_UPDATED_BY in NUMBER,
497 X_LAST_UPDATE_LOGIN in NUMBER
498 ) is
499 begin
500 update AHL_VISITS_B set
501 ESTIMATED_PRICE = X_ESTIMATED_PRICE,
502 PRIORITY_CODE = X_PRIORITY_CODE,
503 PROJECT_TEMPLATE_ID = X_PROJECT_TEMPLATE_ID,
504 UNIT_SCHEDULE_ID = X_UNIT_SCHEDULE_ID,
505 ACTUAL_PRICE = X_ACTUAL_PRICE,
506 OUTSIDE_PARTY_FLAG = X_OUTSIDE_PARTY_FLAG,
507 ANY_TASK_CHG_FLAG = X_ANY_TASK_CHG_FLAG,
508 PRICE_LIST_ID = X_PRICE_LIST_ID,
509 CLOSE_DATE_TIME = X_CLOSE_DATE_TIME,
510 SCHEDULE_DESIGNATOR = X_SCHEDULE_DESIGNATOR,
511 SERVICE_REQUEST_ID = X_SERVICE_REQUEST_ID,
512 SPACE_CATEGORY_CODE = X_SPACE_CATEGORY_CODE,
513 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
514 ORGANIZATION_ID = X_ORGANIZATION_ID,
515 DEPARTMENT_ID = X_DEPARTMENT_ID,
516 STATUS_CODE = X_STATUS_CODE,
517 START_DATE_TIME = X_START_DATE_TIME,
518 VISIT_TYPE_CODE = X_VISIT_TYPE_CODE,
519 SIMULATION_PLAN_ID = X_SIMULATION_PLAN_ID,
520 ITEM_INSTANCE_ID = X_ITEM_INSTANCE_ID,
521 INVENTORY_ITEM_ID = X_INVENTORY_ITEM_ID,
522 ASSO_PRIMARY_VISIT_ID = X_ASSO_PRIMARY_VISIT_ID,
523 SIMULATION_DELETE_FLAG = X_SIMULATION_DELETE_FLAG,
524 TEMPLATE_FLAG = X_TEMPLATE_FLAG,
525 OUT_OF_SYNC_FLAG = X_OUT_OF_SYNC_FLAG,
526 PROJECT_FLAG = X_PROJECT_FLAG,
527 PROJECT_ID = X_PROJECT_ID,
528 VISIT_NUMBER = X_VISIT_NUMBER,
529 ITEM_ORGANIZATION_ID = X_ITEM_ORGANIZATION_ID,
530 ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
531 ATTRIBUTE1 = X_ATTRIBUTE1,
532 ATTRIBUTE2 = X_ATTRIBUTE2,
533 ATTRIBUTE3 = X_ATTRIBUTE3,
534 ATTRIBUTE4 = X_ATTRIBUTE4,
535 ATTRIBUTE5 = X_ATTRIBUTE5,
536 ATTRIBUTE6 = X_ATTRIBUTE6,
537 ATTRIBUTE7 = X_ATTRIBUTE7,
538 ATTRIBUTE8 = X_ATTRIBUTE8,
539 ATTRIBUTE9 = X_ATTRIBUTE9,
540 ATTRIBUTE10 = X_ATTRIBUTE10,
541 ATTRIBUTE11 = X_ATTRIBUTE11,
542 ATTRIBUTE12 = X_ATTRIBUTE12,
543 ATTRIBUTE13 = X_ATTRIBUTE13,
544 ATTRIBUTE14 = X_ATTRIBUTE14,
545 ATTRIBUTE15 = X_ATTRIBUTE15,
546 INV_LOCATOR_ID = X_INV_LOCATOR_ID, --Added by sowsubra
547 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
548 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
549 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
550 where VISIT_ID = X_VISIT_ID;
551
552 if (sql%notfound) then
553 raise no_data_found;
554 end if;
555
556 update AHL_VISITS_TL set
557 VISIT_NAME = X_VISIT_NAME,
558 DESCRIPTION = X_DESCRIPTION,
559 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
560 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
561 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
562 SOURCE_LANG = userenv('LANG')
563 where VISIT_ID = X_VISIT_ID
564 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
565
566 if (sql%notfound) then
567 raise no_data_found;
568 end if;
569 end UPDATE_ROW;
570
571 procedure DELETE_ROW (
572 X_VISIT_ID in NUMBER
573 ) is
574 begin
575 delete from AHL_VISITS_TL
576 where VISIT_ID = X_VISIT_ID;
577
578 if (sql%notfound) then
579 raise no_data_found;
580 end if;
581
582 delete from AHL_VISITS_B
583 where VISIT_ID = X_VISIT_ID;
584
585 if (sql%notfound) then
586 raise no_data_found;
587 end if;
588 end DELETE_ROW;
589
590 procedure ADD_LANGUAGE
591 is
592 begin
593 delete from AHL_VISITS_TL T
594 where not exists
595 (select NULL
596 from AHL_VISITS_B B
597 where B.VISIT_ID = T.VISIT_ID
598 );
599
600 update AHL_VISITS_TL T set (
601 VISIT_NAME,
602 DESCRIPTION
603 ) = (select
604 B.VISIT_NAME,
605 B.DESCRIPTION
606 from AHL_VISITS_TL B
607 where B.VISIT_ID = T.VISIT_ID
608 and B.LANGUAGE = T.SOURCE_LANG)
609 where (
610 T.VISIT_ID,
611 T.LANGUAGE
612 ) in (select
613 SUBT.VISIT_ID,
614 SUBT.LANGUAGE
615 from AHL_VISITS_TL SUBB, AHL_VISITS_TL SUBT
616 where SUBB.VISIT_ID = SUBT.VISIT_ID
617 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
618 and (SUBB.VISIT_NAME <> SUBT.VISIT_NAME
619 or (SUBB.VISIT_NAME is null and SUBT.VISIT_NAME is not null)
620 or (SUBB.VISIT_NAME is not null and SUBT.VISIT_NAME is null)
621 or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
622 or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
623 or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
624 ));
625
626 insert into AHL_VISITS_TL (
627 VISIT_ID,
628 LAST_UPDATE_DATE,
629 LAST_UPDATED_BY,
630 CREATION_DATE,
631 CREATED_BY,
632 LAST_UPDATE_LOGIN,
633 DESCRIPTION,
634 VISIT_NAME,
635 LANGUAGE,
636 SOURCE_LANG
637 ) select /*+ ORDERED */
638 B.VISIT_ID,
639 B.LAST_UPDATE_DATE,
640 B.LAST_UPDATED_BY,
641 B.CREATION_DATE,
642 B.CREATED_BY,
643 B.LAST_UPDATE_LOGIN,
644 B.DESCRIPTION,
645 B.VISIT_NAME,
646 L.LANGUAGE_CODE,
647 B.SOURCE_LANG
648 from AHL_VISITS_TL B, FND_LANGUAGES L
649 where L.INSTALLED_FLAG in ('I', 'B')
650 and B.LANGUAGE = userenv('LANG')
651 and not exists
652 (select NULL
653 from AHL_VISITS_TL T
654 where T.VISIT_ID = B.VISIT_ID
655 and T.LANGUAGE = L.LANGUAGE_CODE);
656 end ADD_LANGUAGE;
657
658 end AHL_VISITS_PKG;