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