[Home] [Help]
PACKAGE BODY: APPS.IGS_PS_UNIT_REF_HIST_PKG
Source
1 package body IGS_PS_UNIT_REF_HIST_PKG as
2 /* $Header: IGSPI89B.pls 115.7 2002/11/29 02:41:17 nsidana ship $ */
3
4 l_rowid VARCHAR2(25);
5 old_references IGS_PS_UNIT_REF_HIST_ALL%RowType;
6 new_references IGS_PS_UNIT_REF_HIST_ALL%RowType;
7
8 PROCEDURE Set_Column_Values (
9 p_action IN VARCHAR2,
10 x_rowid IN VARCHAR2 DEFAULT NULL,
11 x_unit_cd IN VARCHAR2 DEFAULT NULL,
12 x_version_number IN NUMBER DEFAULT NULL,
13 x_reference_cd_type IN VARCHAR2 DEFAULT NULL,
14 x_reference_cd IN VARCHAR2 DEFAULT NULL,
15 x_hist_start_dt IN DATE DEFAULT NULL,
16 x_hist_end_dt IN DATE DEFAULT NULL,
17 x_hist_who IN NUMBER DEFAULT NULL,
18 x_description IN VARCHAR2 DEFAULT NULL,
19 x_creation_date IN DATE DEFAULT NULL,
20 x_created_by IN NUMBER DEFAULT NULL,
21 x_last_update_date IN DATE DEFAULT NULL,
22 x_last_updated_by IN NUMBER DEFAULT NULL,
23 x_last_update_login IN NUMBER DEFAULT NULL ,
24 x_org_id IN NUMBER DEFAULT NULL
25 ) AS
26
27 CURSOR cur_old_ref_values IS
28 SELECT *
29 FROM IGS_PS_UNIT_REF_HIST_ALL
30 WHERE rowid = x_rowid;
31
32 BEGIN
33
34 l_rowid := x_rowid;
35
36 -- Code for setting the Old and New Reference Values.
37 -- Populate Old Values.
38 Open cur_old_ref_values;
39 Fetch cur_old_ref_values INTO old_references;
40 IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
41 Close cur_old_ref_values;
42 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
43 IGS_GE_MSG_STACK.ADD;
44 App_Exception.Raise_Exception;
45 Return;
46 END IF;
47 Close cur_old_ref_values;
48
49 -- Populate New Values.
50 new_references.unit_cd := x_unit_cd;
51 new_references.version_number := x_version_number;
52 new_references.reference_cd_type := x_reference_cd_type;
53 new_references.reference_cd := x_reference_cd;
54 new_references.hist_start_dt := x_hist_start_dt;
55 new_references.hist_end_dt := x_hist_end_dt;
56 new_references.hist_who := x_hist_who;
57 new_references.description := x_description;
58 IF (p_action = 'UPDATE') THEN
59 new_references.creation_date := old_references.creation_date;
60 new_references.created_by := old_references.created_by;
61 ELSE
62 new_references.creation_date := x_creation_date;
63 new_references.created_by := x_created_by;
64 END IF;
65 new_references.last_update_date := x_last_update_date;
66 new_references.last_updated_by := x_last_updated_by;
67 new_references.last_update_login := x_last_update_login;
68 new_references.org_id := x_org_id;
69
70 END Set_Column_Values;
71
72 PROCEDURE Check_Constraints(
73 Column_Name IN VARCHAR2 DEFAULT NULL,
74 Column_Value IN VARCHAR2 DEFAULT NULL)
75 AS
76 BEGIN
77
78 IF Column_Name IS NULL Then
79 NULL;
80 ELSIF Upper(Column_Name)='REFERENCE_CD' Then
81 New_References.Reference_Cd := Column_Value;
82 ELSIF Upper(Column_Name)='REFERENCE_CD_TYPE' Then
83 New_References.Reference_Cd_Type := Column_Value;
84 ELSIF Upper(Column_Name)='UNIT_CD' Then
85 New_References.Unit_Cd := Column_Value;
86 END IF;
87
88
89 IF Upper(Column_Name)='REFERENCE_CD' OR Column_Name IS NULL Then
90 IF New_References.Reference_Cd <> UPPER(New_References.Reference_Cd) Then
91 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
92 IGS_GE_MSG_STACK.ADD;
93 App_Exception.Raise_Exception;
94 END IF;
95 END IF;
96
97 IF Upper(Column_Name)='REFERENCE_CD_TYPE' OR Column_Name IS NULL Then
98 IF New_References.Reference_Cd_Type <> UPPER(New_References.Reference_Cd_Type) Then
99 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
100 IGS_GE_MSG_STACK.ADD;
101 App_Exception.Raise_Exception;
102 END IF;
103 END IF;
104
105
106 IF Upper(Column_Name)='UNIT_CD' OR Column_Name IS NULL Then
107 IF New_References.Unit_Cd <> UPPER(New_References.Unit_CD) Then
108 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
109 IGS_GE_MSG_STACK.ADD;
110 App_Exception.Raise_Exception;
111 END IF;
112 END IF;
113
114 END Check_Constraints;
115
116 PROCEDURE Check_Parent_Existance AS
117 BEGIN
118
119 IF (((old_references.reference_cd_type = new_references.reference_cd_type)) OR
120 ((new_references.reference_cd_type IS NULL))) THEN
121 NULL;
122 ELSE
123 IF NOT IGS_GE_REF_CD_TYPE_PKG.Get_PK_For_Validation (
124 new_references.reference_cd_type) THEN
125 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
126 IGS_GE_MSG_STACK.ADD;
127 App_Exception.Raise_Exception;
128 END IF;
129
130
131 END IF;
132
133 IF (((old_references.unit_cd = new_references.unit_cd) AND
134 (old_references.version_number = new_references.version_number)) OR
135 ((new_references.unit_cd IS NULL) OR
136 (new_references.version_number IS NULL))) THEN
137 NULL;
138 ELSE
139 IF NOT IGS_PS_UNIT_VER_PKG.Get_PK_For_Validation (
140 new_references.unit_cd,
141 new_references.version_number) THEN
142 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
143 IGS_GE_MSG_STACK.ADD;
144 App_Exception.Raise_Exception;
145 END IF;
146
147
148 END IF;
149
150 END Check_Parent_Existance;
151
152 FUNCTION Get_PK_For_Validation (
153 x_unit_cd IN VARCHAR2,
154 x_version_number IN NUMBER,
155 x_reference_cd_type IN VARCHAR2,
156 x_reference_cd IN VARCHAR2,
157 x_hist_start_dt IN DATE
158 ) RETURN BOOLEAN AS
159
160 CURSOR cur_rowid IS
161 SELECT rowid
162 FROM IGS_PS_UNIT_REF_HIST_ALL
163 WHERE unit_cd = x_unit_cd
164 AND version_number = x_version_number
165 AND reference_cd_type = x_reference_cd_type
166 AND reference_cd = x_reference_cd
167 AND hist_start_dt = x_hist_start_dt
168 FOR UPDATE NOWAIT;
169
170 lv_rowid cur_rowid%RowType;
171
172 BEGIN
173
174 Open cur_rowid;
175 Fetch cur_rowid INTO lv_rowid;
176 IF (cur_rowid%FOUND) THEN
177 Close cur_rowid;
178 Return(TRUE);
179 ELSE
180 Close cur_rowid;
181 Return(FALSE);
182 END IF;
183
184 END Get_PK_For_Validation;
185
186 PROCEDURE GET_FK_IGS_GE_REF_CD_TYPE (
187 x_reference_cd_type IN VARCHAR2
188 ) AS
189
190 CURSOR cur_rowid IS
191 SELECT rowid
192 FROM IGS_PS_UNIT_REF_HIST_ALL
193 WHERE reference_cd_type = x_reference_cd_type ;
194
195 lv_rowid cur_rowid%RowType;
196
197 BEGIN
198
199 Open cur_rowid;
200 Fetch cur_rowid INTO lv_rowid;
201 IF (cur_rowid%FOUND) THEN
202 Close cur_rowid;
203 Fnd_Message.Set_Name ('IGS', 'IGS_PS_URCH_RCT_FK');
204 IGS_GE_MSG_STACK.ADD;
205 App_Exception.Raise_Exception;
206 Return;
207 END IF;
208 Close cur_rowid;
209
210 END GET_FK_IGS_GE_REF_CD_TYPE;
211
212 PROCEDURE GET_FK_IGS_PS_UNIT_VER (
213 x_unit_cd IN VARCHAR2,
214 x_version_number IN NUMBER
215 ) AS
216
217 CURSOR cur_rowid IS
218 SELECT rowid
219 FROM IGS_PS_UNIT_REF_HIST_ALL
220 WHERE unit_cd = x_unit_cd
221 AND version_number = x_version_number ;
222
223 lv_rowid cur_rowid%RowType;
224
225 BEGIN
226
227 Open cur_rowid;
228 Fetch cur_rowid INTO lv_rowid;
229 IF (cur_rowid%FOUND) THEN
230 Close cur_rowid;
231 Fnd_Message.Set_Name ('IGS', 'IGS_PS_URCH_UV_FK');
232 IGS_GE_MSG_STACK.ADD;
233 App_Exception.Raise_Exception;
234 Return;
235 END IF;
236 Close cur_rowid;
237
238 END GET_FK_IGS_PS_UNIT_VER;
239
240 PROCEDURE Before_DML (
241 p_action IN VARCHAR2,
242 x_rowid IN VARCHAR2 DEFAULT NULL,
243 x_unit_cd IN VARCHAR2 DEFAULT NULL,
244 x_version_number IN NUMBER DEFAULT NULL,
245 x_reference_cd_type IN VARCHAR2 DEFAULT NULL,
246 x_reference_cd IN VARCHAR2 DEFAULT NULL,
247 x_hist_start_dt IN DATE DEFAULT NULL,
248 x_hist_end_dt IN DATE DEFAULT NULL,
249 x_hist_who IN NUMBER DEFAULT NULL,
250 x_description IN VARCHAR2 DEFAULT NULL,
251 x_creation_date IN DATE DEFAULT NULL,
252 x_created_by IN NUMBER DEFAULT NULL,
253 x_last_update_date IN DATE DEFAULT NULL,
254 x_last_updated_by IN NUMBER DEFAULT NULL,
255 x_last_update_login IN NUMBER DEFAULT NULL,
256 x_org_id IN NUMBER DEFAULT NULL
257 ) AS
258 BEGIN
259
260 Set_Column_Values (
261 p_action,
262 x_rowid,
263 x_unit_cd,
264 x_version_number,
265 x_reference_cd_type,
266 x_reference_cd,
267 x_hist_start_dt,
268 x_hist_end_dt,
269 x_hist_who,
270 x_description,
271 x_creation_date,
272 x_created_by,
273 x_last_update_date,
274 x_last_updated_by,
275 x_last_update_login ,
276 x_org_id
277 );
278
279 IF (p_action = 'INSERT') THEN
280 -- Call all the procedures related to Before Insert.
281 IF Get_PK_For_Validation (New_References.unit_cd,
282 New_References.version_number,
283 New_References.reference_cd_type,
284 New_References.reference_cd,
285 New_References.hist_start_dt) THEN
286 Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
287 IGS_GE_MSG_STACK.ADD;
288 App_Exception.Raise_Exception;
289 END IF;
290 Check_Constraints;
291 Check_Parent_Existance;
292 ELSIF (p_action = 'UPDATE') THEN
293 -- Call all the procedures related to Before Update.
294 Check_Constraints;
295 Check_Parent_Existance;
296
297 ELSIF (p_action = 'VALIDATE_INSERT') THEN
298 IF Get_PK_For_Validation (New_References.unit_cd,
299 New_References.version_number,
300 New_References.reference_cd_type,
301 New_References.reference_cd,
302 New_References.hist_start_dt) THEN
303 Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
304 IGS_GE_MSG_STACK.ADD;
305 App_Exception.Raise_Exception;
306 END IF;
307 Check_Constraints;
308 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
309 Check_Constraints;
310
311 END IF;
312
313 END Before_DML;
314
315 PROCEDURE After_DML (
316 p_action IN VARCHAR2,
317 x_rowid IN VARCHAR2
318 ) AS
319 BEGIN
320
321 l_rowid := x_rowid;
322
323
324 END After_DML;
325
326 procedure INSERT_ROW (
327 X_ROWID in out NOCOPY VARCHAR2,
328 X_UNIT_CD in VARCHAR2,
329 X_HIST_START_DT in DATE,
330 X_REFERENCE_CD in VARCHAR2,
331 X_VERSION_NUMBER in NUMBER,
332 X_REFERENCE_CD_TYPE in VARCHAR2,
333 X_HIST_END_DT in DATE,
334 X_HIST_WHO in NUMBER,
335 X_DESCRIPTION in VARCHAR2,
336 X_MODE in VARCHAR2 default 'R',
337 X_ORG_ID in NUMBER
338 ) AS
339 cursor C is select ROWID from IGS_PS_UNIT_REF_HIST_ALL
340 where UNIT_CD = X_UNIT_CD
341 and HIST_START_DT = X_HIST_START_DT
342 and REFERENCE_CD = X_REFERENCE_CD
343 and VERSION_NUMBER = X_VERSION_NUMBER
344 and REFERENCE_CD_TYPE = X_REFERENCE_CD_TYPE;
345 X_LAST_UPDATE_DATE DATE;
346 X_LAST_UPDATED_BY NUMBER;
347 X_LAST_UPDATE_LOGIN NUMBER;
348 begin
349 X_LAST_UPDATE_DATE := SYSDATE;
350 if(X_MODE = 'I') then
351 X_LAST_UPDATED_BY := 1;
352 X_LAST_UPDATE_LOGIN := 0;
353 elsif (X_MODE = 'R') then
354 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
355 if X_LAST_UPDATED_BY is NULL then
356 X_LAST_UPDATED_BY := -1;
357 end if;
358 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
359 if X_LAST_UPDATE_LOGIN is NULL then
360 X_LAST_UPDATE_LOGIN := -1;
361 end if;
362 else
363 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
364 IGS_GE_MSG_STACK.ADD;
365 app_exception.raise_exception;
366 end if;
367
368 Before_DML(
369 p_action => 'INSERT',
370 x_rowid => X_ROWID,
371 x_unit_cd => X_UNIT_CD,
372 x_version_number => X_VERSION_NUMBER,
373 x_reference_cd_type => X_REFERENCE_CD_TYPE,
374 x_reference_cd => X_REFERENCE_CD,
375 x_hist_start_dt => X_HIST_START_DT,
376 x_hist_end_dt => X_HIST_END_DT,
377 x_hist_who => X_HIST_WHO,
378 x_description => X_DESCRIPTION,
379 x_creation_date => X_LAST_UPDATE_DATE,
380 x_created_by => X_LAST_UPDATED_BY,
381 x_last_update_date => X_LAST_UPDATE_DATE,
382 x_last_updated_by => X_LAST_UPDATED_BY,
383 x_last_update_login => X_LAST_UPDATE_LOGIN,
384 x_org_id => igs_ge_gen_003.get_org_id
385 );
386
387 insert into IGS_PS_UNIT_REF_HIST_ALL (
388 UNIT_CD,
389 VERSION_NUMBER,
390 REFERENCE_CD_TYPE,
391 REFERENCE_CD,
392 HIST_START_DT,
393 HIST_END_DT,
394 HIST_WHO,
395 DESCRIPTION,
396 CREATION_DATE,
397 CREATED_BY,
398 LAST_UPDATE_DATE,
399 LAST_UPDATED_BY,
400 LAST_UPDATE_LOGIN,
401 ORG_ID
402 ) values (
403 NEW_REFERENCES.UNIT_CD,
404 NEW_REFERENCES.VERSION_NUMBER,
405 NEW_REFERENCES.REFERENCE_CD_TYPE,
406 NEW_REFERENCES.REFERENCE_CD,
407 NEW_REFERENCES.HIST_START_DT,
408 NEW_REFERENCES.HIST_END_DT,
409 NEW_REFERENCES.HIST_WHO,
410 NEW_REFERENCES.DESCRIPTION,
411 X_LAST_UPDATE_DATE,
412 X_LAST_UPDATED_BY,
413 X_LAST_UPDATE_DATE,
414 X_LAST_UPDATED_BY,
415 X_LAST_UPDATE_LOGIN,
416 NEW_REFERENCES.ORG_ID
417 );
418
419 open c;
420 fetch c into X_ROWID;
421 if (c%notfound) then
422 close c;
423 raise no_data_found;
424 end if;
425 close c;
426 After_DML (
427 p_action => 'INSERT',
428 x_rowid => X_ROWID
429 );
430
431 end INSERT_ROW;
432
433 procedure LOCK_ROW (
434 X_ROWID in VARCHAR2,
435 X_UNIT_CD in VARCHAR2,
436 X_HIST_START_DT in DATE,
437 X_REFERENCE_CD in VARCHAR2,
438 X_VERSION_NUMBER in NUMBER,
439 X_REFERENCE_CD_TYPE in VARCHAR2,
440 X_HIST_END_DT in DATE,
441 X_HIST_WHO in NUMBER,
442 X_DESCRIPTION in VARCHAR2
443 ) AS
444 cursor c1 is select
445 HIST_END_DT,
446 HIST_WHO,
447 DESCRIPTION
448 from IGS_PS_UNIT_REF_HIST_ALL
449 where ROWID = X_ROWID
450 for update nowait;
451 tlinfo c1%rowtype;
452
453 begin
454 open c1;
455 fetch c1 into tlinfo;
456 if (c1%notfound) then
457 close c1;
458 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
459 IGS_GE_MSG_STACK.ADD;
460 app_exception.raise_exception;
461 return;
462 end if;
463 close c1;
464
465 if ( (tlinfo.HIST_END_DT = X_HIST_END_DT)
466 AND (tlinfo.HIST_WHO = X_HIST_WHO)
467 AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
468 OR ((tlinfo.DESCRIPTION is null)
469 AND (X_DESCRIPTION is null)))
470 ) then
471 null;
472 else
473 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
474 IGS_GE_MSG_STACK.ADD;
475 app_exception.raise_exception;
476 end if;
477 return;
478 end LOCK_ROW;
479
480 procedure UPDATE_ROW (
481 X_ROWID in VARCHAR2,
482 X_UNIT_CD in VARCHAR2,
483 X_HIST_START_DT in DATE,
484 X_REFERENCE_CD in VARCHAR2,
485 X_VERSION_NUMBER in NUMBER,
486 X_REFERENCE_CD_TYPE in VARCHAR2,
487 X_HIST_END_DT in DATE,
488 X_HIST_WHO in NUMBER,
489 X_DESCRIPTION in VARCHAR2,
490 X_MODE in VARCHAR2 default 'R'
491 ) AS
492 X_LAST_UPDATE_DATE DATE;
493 X_LAST_UPDATED_BY NUMBER;
494 X_LAST_UPDATE_LOGIN NUMBER;
495 begin
496 X_LAST_UPDATE_DATE := SYSDATE;
497 if(X_MODE = 'I') then
498 X_LAST_UPDATED_BY := 1;
499 X_LAST_UPDATE_LOGIN := 0;
500 elsif (X_MODE = 'R') then
501 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
502 if X_LAST_UPDATED_BY is NULL then
503 X_LAST_UPDATED_BY := -1;
504 end if;
505 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
506 if X_LAST_UPDATE_LOGIN is NULL then
507 X_LAST_UPDATE_LOGIN := -1;
508 end if;
509 else
510 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
511 IGS_GE_MSG_STACK.ADD;
512 app_exception.raise_exception;
513 end if;
514
515 Before_DML(
516 p_action => 'UPDATE',
517 x_rowid => X_ROWID,
518 x_unit_cd => X_UNIT_CD,
519 x_version_number => X_VERSION_NUMBER,
520 x_reference_cd_type => X_REFERENCE_CD_TYPE,
521 x_reference_cd => X_REFERENCE_CD,
522 x_hist_start_dt => X_HIST_START_DT,
523 x_hist_end_dt => X_HIST_END_DT,
524 x_hist_who => X_HIST_WHO,
525 x_description => X_DESCRIPTION,
526 x_creation_date => X_LAST_UPDATE_DATE,
527 x_created_by => X_LAST_UPDATED_BY,
528 x_last_update_date => X_LAST_UPDATE_DATE,
529 x_last_updated_by => X_LAST_UPDATED_BY,
530 x_last_update_login => X_LAST_UPDATE_LOGIN
531 );
532
533 update IGS_PS_UNIT_REF_HIST_ALL set
534 HIST_END_DT = NEW_REFERENCES.HIST_END_DT,
535 HIST_WHO = NEW_REFERENCES.HIST_WHO,
536 DESCRIPTION = NEW_REFERENCES.DESCRIPTION,
537 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
538 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
539 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
540 where ROWID = X_ROWID
541 ;
542 if (sql%notfound) then
543 raise no_data_found;
544 end if;
545 After_DML (
546 p_action => 'UPDATE',
547 x_rowid => X_ROWID
548 );
549 end UPDATE_ROW;
550
551 procedure ADD_ROW (
552 X_ROWID in out NOCOPY VARCHAR2,
553 X_UNIT_CD in VARCHAR2,
554 X_HIST_START_DT in DATE,
555 X_REFERENCE_CD in VARCHAR2,
556 X_VERSION_NUMBER in NUMBER,
557 X_REFERENCE_CD_TYPE in VARCHAR2,
558 X_HIST_END_DT in DATE,
559 X_HIST_WHO in NUMBER,
560 X_DESCRIPTION in VARCHAR2,
561 X_MODE in VARCHAR2 default 'R',
562 X_ORG_ID in NUMBER
563 ) AS
564 cursor c1 is select rowid from IGS_PS_UNIT_REF_HIST_ALL
565 where UNIT_CD = X_UNIT_CD
566 and HIST_START_DT = X_HIST_START_DT
567 and REFERENCE_CD = X_REFERENCE_CD
568 and VERSION_NUMBER = X_VERSION_NUMBER
569 and REFERENCE_CD_TYPE = X_REFERENCE_CD_TYPE
570 ;
571 begin
572 open c1;
573 fetch c1 into X_ROWID;
574 if (c1%notfound) then
575 close c1;
576 INSERT_ROW (
577 X_ROWID,
578 X_UNIT_CD,
579 X_HIST_START_DT,
580 X_REFERENCE_CD,
581 X_VERSION_NUMBER,
582 X_REFERENCE_CD_TYPE,
583 X_HIST_END_DT,
584 X_HIST_WHO,
585 X_DESCRIPTION,
586 X_MODE,
587 X_ORG_ID);
588 return;
589 end if;
590 close c1;
591 UPDATE_ROW (
592 X_ROWID,
593 X_UNIT_CD,
594 X_HIST_START_DT,
595 X_REFERENCE_CD,
596 X_VERSION_NUMBER,
597 X_REFERENCE_CD_TYPE,
598 X_HIST_END_DT,
599 X_HIST_WHO,
600 X_DESCRIPTION,
601 X_MODE
602 );
603 end ADD_ROW;
604
605 procedure DELETE_ROW (
606 X_ROWID in VARCHAR2
607 ) AS
608 begin
609 Before_DML (
610 p_action => 'DELETE',
611 x_rowid => X_ROWID
612 );
613 delete from IGS_PS_UNIT_REF_HIST_ALL
614 where ROWID = X_ROWID
615 ;
616 if (sql%notfound) then
617 raise no_data_found;
618 end if;
619 After_DML (
620 p_action => 'DELETE',
621 x_rowid => X_ROWID
622 );
623 end DELETE_ROW;
624
625 end IGS_PS_UNIT_REF_HIST_PKG;