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