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