DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGW_EXP_TYPES_PKG

Source


1 package body IGW_EXP_TYPES_PKG as
2 -- $Header: igwstetb.pls 115.4 2002/11/14 18:45:25 vmedikon ship $
3 procedure INSERT_ROW (
4   X_ROWID in out NOCOPY VARCHAR2,
5   X_EXPENDITURE_CATEGORY in VARCHAR2,
6   X_EXPENDITURE_TYPE in VARCHAR2,
7   X_DESCRIPTION in VARCHAR2,
8   X_START_DATE_ACTIVE in DATE,
9   X_END_DATE_ACTIVE in DATE,
10   X_MODE in VARCHAR2 default 'R'
11   ) is
12     cursor C is select ROWID from IGW_EXPENDITURE_TYPES
13       where EXPENDITURE_TYPE = X_EXPENDITURE_TYPE;
14     X_LAST_UPDATE_DATE DATE;
15     X_LAST_UPDATED_BY NUMBER;
16     X_LAST_UPDATE_LOGIN NUMBER;
17 begin
18   X_LAST_UPDATE_DATE := SYSDATE;
19   if(X_MODE = 'I') then
20     X_LAST_UPDATED_BY := 1;
21     X_LAST_UPDATE_LOGIN := 0;
22   elsif (X_MODE = 'R') then
23     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
24     if X_LAST_UPDATED_BY is NULL then
25       X_LAST_UPDATED_BY := -1;
26     end if;
27     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
28     if X_LAST_UPDATE_LOGIN is NULL then
29       X_LAST_UPDATE_LOGIN := -1;
30     end if;
31   else
32     FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
33     app_exception.raise_exception;
34   end if;
35   insert into IGW_EXPENDITURE_TYPES (
36     EXPENDITURE_CATEGORY,
37     EXPENDITURE_TYPE,
38     DESCRIPTION,
39     START_DATE_ACTIVE,
40     END_DATE_ACTIVE,
41     CREATION_DATE,
42     CREATED_BY,
43     LAST_UPDATE_DATE,
44     LAST_UPDATED_BY,
45     LAST_UPDATE_LOGIN
46   ) values (
47     X_EXPENDITURE_CATEGORY,
48     X_EXPENDITURE_TYPE,
49     X_DESCRIPTION,
50     X_START_DATE_ACTIVE,
51     X_END_DATE_ACTIVE,
52     X_LAST_UPDATE_DATE,
53     X_LAST_UPDATED_BY,
54     X_LAST_UPDATE_DATE,
55     X_LAST_UPDATED_BY,
56     X_LAST_UPDATE_LOGIN
57   );
58 
59   open c;
60   fetch c into X_ROWID;
61   if (c%notfound) then
62     close c;
63     raise no_data_found;
64   end if;
65   close c;
66 
67 end INSERT_ROW;
68 
69 procedure LOCK_ROW (
70   X_ROWID in out NOCOPY VARCHAR2,
71   X_EXPENDITURE_CATEGORY in VARCHAR2,
72   X_EXPENDITURE_TYPE in VARCHAR2,
73   X_DESCRIPTION in VARCHAR2,
74   X_START_DATE_ACTIVE in DATE,
75   X_END_DATE_ACTIVE in DATE
76 ) is
77   cursor c1 is select *
78     from IGW_EXPENDITURE_TYPES
79     where ROWID = X_ROWID
80     for update of EXPENDITURE_TYPE nowait;
81   tlinfo c1%rowtype;
82 
83 begin
84   open c1;
85   fetch c1 into tlinfo;
86   if (c1%notfound) then
87     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
88     app_exception.raise_exception;
89     close c1;
90     return;
91   end if;
92   close c1;
93 
94       if (
95           (tlinfo.EXPENDITURE_CATEGORY = X_EXPENDITURE_CATEGORY)
96       AND (tlinfo.EXPENDITURE_TYPE = X_EXPENDITURE_TYPE)
97       AND (tlinfo.DESCRIPTION = X_DESCRIPTION)
98       AND (tlinfo.START_DATE_ACTIVE = X_START_DATE_ACTIVE)
99       AND ((tlinfo.END_DATE_ACTIVE = X_END_DATE_ACTIVE)
100                 OR ((tlinfo.END_DATE_ACTIVE is null) AND (X_END_DATE_ACTIVE is null)))
101   ) then
102     null;
103   else
104     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
105     app_exception.raise_exception;
106   end if;
107   return;
108 end LOCK_ROW;
109 
110 procedure UPDATE_ROW (
111   X_ROWID in out NOCOPY VARCHAR2,
112   X_EXPENDITURE_CATEGORY in VARCHAR2,
113   X_EXPENDITURE_TYPE in VARCHAR2,
114   X_DESCRIPTION in VARCHAR2,
115   X_START_DATE_ACTIVE in DATE,
116   X_END_DATE_ACTIVE in DATE,
117   X_MODE in VARCHAR2 default 'R'
118   ) is
119     X_LAST_UPDATE_DATE DATE;
120     X_LAST_UPDATED_BY NUMBER;
121     X_LAST_UPDATE_LOGIN NUMBER;
122 begin
123   X_LAST_UPDATE_DATE := SYSDATE;
124   if (X_MODE = 'I') then
125     X_LAST_UPDATED_BY := 1;
126     X_LAST_UPDATE_LOGIN := 0;
127   elsif (X_MODE = 'R') then
128     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
129     if X_LAST_UPDATED_BY is NULL then
130       X_LAST_UPDATED_BY := -1;
131     end if;
132     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
133     if X_LAST_UPDATE_LOGIN is NULL then
134       X_LAST_UPDATE_LOGIN := -1;
135     end if;
136   else
137     FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
138     app_exception.raise_exception;
139   end if;
140   update IGW_EXPENDITURE_TYPES set
141     EXPENDITURE_CATEGORY = X_EXPENDITURE_CATEGORY,
142     EXPENDITURE_TYPE = X_EXPENDITURE_TYPE,
143     DESCRIPTION = X_DESCRIPTION,
144     START_DATE_ACTIVE = X_START_DATE_ACTIVE,
145     END_DATE_ACTIVE = X_END_DATE_ACTIVE,
146     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
147     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
148     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
149   where ROWID = X_ROWID
150   ;
151   if (sql%notfound) then
152     raise no_data_found;
153   end if;
154 end UPDATE_ROW;
155 
156 /* procedure ADD_ROW (
157   X_ROWID in out NOCOPY VARCHAR2,
158   X_RULE_ID in NUMBER,
159   X_RULE_SEQUENCE_NUMBER in NUMBER,
160   X_ORGANIZATION_ID in NUMBER,
161   X_RULE_NAME in VARCHAR2,
162   X_RULE_TYPE in VARCHAR2,
163   X_MAP_ID in NUMBER,
164   X_VALID_FLAG in VARCHAR2,
165   X_START_DATE_ACTIVE in DATE,
166   X_END_DATE_ACTIVE in DATE,
167   X_MODE in VARCHAR2 default 'R'
168   ) is
169   cursor c1 is select rowid from IGW_BUSINESS_RULES_ALL
170      where RULE_ID = X_RULE_ID
171   ;
172   dummy c1%rowtype;
173 begin
174   open c1;
175   fetch c1 into dummy;
176   if (c1%notfound) then
177     close c1;
178     INSERT_ROW (
179      X_ROWID,
180      X_RULE_ID,
181      X_RULE_SEQUENCE_NUMBER,
182      X_ORGANIZATION_ID,
183      X_RULE_NAME,
184      X_RULE_TYPE,
185      X_MAP_ID,
186      X_VALID_FLAG,
187      X_START_DATE_ACTIVE,
188      X_END_DATE_ACTIVE,
189      X_MODE);
190     return;
191   end if;
192   close c1;
193   UPDATE_ROW (
194    X_RULE_ID,
195    X_RULE_SEQUENCE_NUMBER,
196    X_ORGANIZATION_ID,
197    X_RULE_NAME,
198    X_RULE_TYPE,
199    X_MAP_ID,
200    X_VALID_FLAG,
201    X_START_DATE_ACTIVE,
202    X_END_DATE_ACTIVE,
203    X_MODE);
204 end ADD_ROW; */
205 
206 procedure DELETE_ROW (
207   X_ROWID in VARCHAR2
208 ) is
209 begin
210   delete from IGW_EXPENDITURE_TYPES
211   where ROWID = X_ROWID;
212   if (sql%notfound) then
213     raise no_data_found;
214   end if;
215 end DELETE_ROW;
216 
217 end IGW_EXP_TYPES_PKG;