DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_FI_FUND_SRC_PKG

Source


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