[Home] [Help]
PACKAGE BODY: APPS.GR_VALIDATE
Source
1 PACKAGE BODY GR_VALIDATE AS
2 /* $Header: GRVALIDB.pls 120.0 2005/06/24 11:08:22 mgrosser noship $ */
3
4 ---------------------------------------------------------------------
5 -- Function: Validate_item
6 --
7 -- Description:
8 -- Validate the item if its a valid item or not
9 --
10 -- History:
11 -- 29-APR-2005 Preetam Bamb Created.
12 -- M. Grosser 23-May-2005 Modified code for Inventory Convergence.
13 -- Added IN parameter p_organization_id and OUT parameter
14 -- x_inventory_item_id and modified code to check values against
15 -- the appropriate tables.
16 ---------------------------------------------------------------------
17 FUNCTION validate_item
18 ( p_organization_id IN NUMBER,
19 p_item IN VARCHAR2,
20 x_inventory_item_id OUT NOCOPY NUMBER
21 ) RETURN BOOLEAN IS
22
23 -- Cursor used to validate item
24 CURSOR c_val_item IS
25 SELECT inventory_item_id
26 FROM mtl_system_items_kfv
27 WHERE concatenated_segments = p_item and
28 organization_id = p_organization_id;
29
30
31 -- Local Variables
32 l_inventory_item_id MTL_SYSTEM_ITEMS_B.inventory_item_id%TYPE;
33
34 BEGIN
35
36 OPEN c_val_item;
37 FETCH c_val_item into l_inventory_item_id;
38 IF (c_val_item%NOTFOUND) THEN
39 CLOSE c_val_item;
40 RAISE NO_DATA_FOUND;
41 ELSE
42 CLOSE c_val_item;
43 x_inventory_item_id := l_inventory_item_id;
44 RETURN G_TRUE;
45 END IF;
46
47 EXCEPTION
48 WHEN NO_DATA_FOUND THEN
49 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
50 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_ITEM');
51 FND_MESSAGE.SET_TOKEN('ITEM', p_item);
52 FND_MSG_PUB.Add;
53 END IF;
54 RETURN G_FALSE;
55
56 WHEN OTHERS THEN
57 RETURN G_FALSE;
58
59 END validate_item;
60
61 ---------------------------------------------------------------------
62 -- Function: validate cas_number
63 --
64 -- Description:
65 -- Validate the cas number is valid for the item or not.
66 --
67 -- History:
68 -- 29-APR-2005 Preetam Bamb Created.
69 -- M. Grosser 23-May-2005 Modified code for Inventory Convergence.
70 -- Added IN parameter p_organization_id and OUT parameter
71 -- x_inventory_item_id and modified code to check values against
72 -- the appropriate tables.
73 ---------------------------------------------------------------------
74 FUNCTION validate_cas_number
75 ( p_organization_id IN NUMBER,
76 p_cas_number IN VARCHAR2,
77 x_item OUT NOCOPY VARCHAR2,
78 x_inventory_item_id OUT NOCOPY NUMBER
79 ) RETURN BOOLEAN IS
80
81
82 -- Cursor used to validate cas_number
83 CURSOR c_val_cas_number IS
84 SELECT inventory_item_id, concatenated_segments
85 FROM mtl_system_items_kfv
86 WHERE cas_number = p_cas_number and
87 organization_id = p_organization_id;
88
89 -- Local Variables
90 l_inventory_item_id MTL_SYSTEM_ITEMS_B.inventory_item_id%TYPE;
91 l_item VARCHAR2(240);
92
93 BEGIN
94 OPEN c_val_cas_number;
95 FETCH c_val_cas_number into l_inventory_item_id, l_item;
96 IF (c_val_cas_number%NOTFOUND) THEN
97 CLOSE c_val_cas_number;
98 RAISE NO_DATA_FOUND;
99 ELSE
100 CLOSE c_val_cas_number;
101 x_inventory_item_id := l_inventory_item_id;
102 x_item := l_item;
103 RETURN G_TRUE;
104 END IF;
105
106 EXCEPTION
107 WHEN NO_DATA_FOUND THEN
108 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
109 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_CAS_NUMBER');
110 FND_MESSAGE.SET_TOKEN('CAS_NUMBER', p_cas_number);
111 FND_MSG_PUB.Add;
112 END IF;
113 RETURN G_FALSE;
114
115 WHEN OTHERS THEN
116 RETURN G_FALSE;
117
118 END validate_cas_number;
119
120 ---------------------------------------------------------------------
121 -- Function: validate_document_code
122 --
123 -- Description:
124 -- Validate the document code.
125 --
126 -- History:
127 -- 29-APR-2005 Preetam Bamb Created.
128 --
129 ---------------------------------------------------------------------
130 FUNCTION validate_document_code (p_document_code IN VARCHAR2) RETURN BOOLEAN IS
131
132 --Cursor used to validate document code
133 CURSOR c_val_document_code IS
134 SELECT 1
135 FROM fnd_lookup_values
136 WHERE LANGUAGE = USERENV('LANG')
137 AND view_application_id BETWEEN 550 AND 559
138 AND security_group_id = 0
139 AND lookup_code = p_document_code
140 AND lookup_type = 'GR_DOCUMENT_CODE';
141
142 --Local Variables
143 l_temp NUMBER;
144
145 BEGIN
146
147 OPEN c_val_document_code;
148 FETCH c_val_document_code into l_temp;
149 IF (c_val_document_code%NOTFOUND) THEN
150 CLOSE c_val_document_code;
151 RAISE NO_DATA_FOUND;
152 ELSE
153 CLOSE c_val_document_code;
154 RETURN G_TRUE;
155 END IF;
156
157 EXCEPTION
158 WHEN NO_DATA_FOUND THEN
159 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
160 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_DOCUMENT_CODE');
161 FND_MESSAGE.SET_TOKEN('CODE', p_document_code);
162 FND_MSG_PUB.Add;
163 END IF;
164 RETURN G_FALSE;
165
166 WHEN OTHERS THEN
167 RETURN G_FALSE;
168
169 END validate_document_code;
170
171
172 ---------------------------------------------------------------------
173 -- Function: validate_disclosure_code
174 --
175 -- Description:
176 -- Validate the disclosure code.
177 --
178 -- History:
179 -- 29-APR-2005 Preetam Bamb Created.
180 --
181 ---------------------------------------------------------------------
182 FUNCTION validate_disclosure_code(p_disclosure_code IN VARCHAR2) RETURN BOOLEAN IS
183
184 --Cursor used to validate document code
185 CURSOR c_val_disclosure_code IS
186 SELECT 1
187 FROM gr_disclosures
188 WHERE disclosure_code = p_disclosure_code;
189
190 --Local Variables
191 l_temp NUMBER;
192
193 BEGIN
194
195 OPEN c_val_disclosure_code;
196 FETCH c_val_disclosure_code into l_temp;
197 IF (c_val_disclosure_code%NOTFOUND) THEN
198 CLOSE c_val_disclosure_code;
199 RAISE NO_DATA_FOUND;
200 ELSE
201 CLOSE c_val_disclosure_code;
202 RETURN G_TRUE;
203 END IF;
204
205 EXCEPTION
206 WHEN NO_DATA_FOUND THEN
207 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
208 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_DISCLOSURE_CODE');
209 FND_MESSAGE.SET_TOKEN('DISCLOSURE_CODE', p_disclosure_code);
210 FND_MSG_PUB.Add;
211 END IF;
212 RETURN G_FALSE;
213
214 WHEN OTHERS THEN
215 RETURN G_FALSE;
216
217 END validate_disclosure_code;
218
219
220 ---------------------------------------------------------------------
221 -- Function: validate_dispatch_method_code
222 --
223 -- Description:
224 -- Validate the dispatch method code.
225 --
226 -- History:
227 -- 29-APR-2005 Preetam Bamb Created.
228 --
229 ---------------------------------------------------------------------
230 FUNCTION validate_dispatch_method_code(p_dispatch_method_code IN VARCHAR2) RETURN BOOLEAN IS
231
232 --Cursor used to validate document code
233 CURSOR c_val_dispatch_method_code IS
234 SELECT 1
235 FROM fnd_lookup_values
236 WHERE LANGUAGE = USERENV('LANG')
237 AND view_application_id BETWEEN 550 AND 559
238 AND security_group_id = 0
239 AND lookup_code = p_dispatch_method_code
240 AND lookup_type = 'GR_DISPATCH_METHOD_CODE';
241
242 --Local Variables
243 l_temp NUMBER;
244
245 BEGIN
246
247 OPEN c_val_dispatch_method_code;
248 FETCH c_val_dispatch_method_code into l_temp;
249 IF (c_val_dispatch_method_code%NOTFOUND) THEN
250 CLOSE c_val_dispatch_method_code;
251 RAISE NO_DATA_FOUND;
252 ELSE
253 CLOSE c_val_dispatch_method_code;
254 RETURN G_TRUE;
255 END IF;
256
257 EXCEPTION
258 WHEN NO_DATA_FOUND THEN
259 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
260 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_DISPATCH_METHOD');
261 FND_MESSAGE.SET_TOKEN('DISPATCH_METHOD_CODE', p_dispatch_method_code);
262 FND_MSG_PUB.Add;
263 END IF;
264
265 RETURN G_FALSE;
266
267 WHEN OTHERS THEN
268 RETURN G_FALSE;
269
270 END validate_dispatch_method_code;
271
272 ---------------------------------------------------------------------
273 -- Function: validate_recipient_id
274 --
275 -- Description:
276 -- Validate the recipient_id.
277 --
278 -- History:
279 -- 29-APR-2005 Preetam Bamb Created.
280 --
281 ---------------------------------------------------------------------
282 FUNCTION validate_recipient_id(p_recipient_id IN NUMBER) RETURN BOOLEAN IS
283
284 --Cursor used to validate recipient id
285 CURSOR c_val_recipient_id IS
286 SELECT 1
287 FROM hz_parties
288 WHERE party_id = p_recipient_id;
289
290 --Local Variables
291 l_temp NUMBER;
292
293 BEGIN
294
295 OPEN c_val_recipient_id;
296 FETCH c_val_recipient_id into l_temp;
297 IF (c_val_recipient_id%NOTFOUND) THEN
298 CLOSE c_val_recipient_id;
299 RAISE NO_DATA_FOUND;
300 ELSE
301 CLOSE c_val_recipient_id;
302 RETURN G_TRUE;
303 END IF;
304
305 EXCEPTION
306 WHEN NO_DATA_FOUND THEN
307 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
308 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_RECIPIENT');
309 FND_MESSAGE.SET_TOKEN('RECIPIENT_ID', p_recipient_id);
310 FND_MSG_PUB.Add;
311 END IF;
312
313 RETURN G_FALSE;
314
315 WHEN OTHERS THEN
316 RETURN G_FALSE;
317
318 END validate_recipient_id;
319
320 ---------------------------------------------------------------------
321 -- Function: validate_recipient_site_id
322 --
323 -- Description:
324 -- Validate the recipient_site_id.
325 --
326 -- History:
327 -- 29-APR-2005 Preetam Bamb Created.
328 --
329 ---------------------------------------------------------------------
330 FUNCTION validate_recipient_site_id(p_recipient_id IN NUMBER, p_recipient_site_id IN NUMBER) RETURN BOOLEAN IS
331
332 --Cursor used to validate recipient site id
333 CURSOR c_val_recipient_site_id IS
334 SELECT 1
335 FROM hz_party_sites
336 WHERE party_id = p_recipient_id and
337 party_site_id = p_recipient_site_id;
338
339 --Local Variables
340 l_temp NUMBER;
341
342 BEGIN
343
344 OPEN c_val_recipient_site_id;
345 FETCH c_val_recipient_site_id into l_temp;
346 IF (c_val_recipient_site_id%NOTFOUND) THEN
347 CLOSE c_val_recipient_site_id;
348 RAISE NO_DATA_FOUND;
349 ELSE
350 CLOSE c_val_recipient_site_id;
351 RETURN G_TRUE;
352 END IF;
353
354 EXCEPTION
355 WHEN NO_DATA_FOUND THEN
356 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
357 FND_MESSAGE.SET_NAME('GR', 'GR_INVALID_RECIPIENT_SITE');
358 FND_MESSAGE.SET_TOKEN('RECIPIENT_SITE_ID', p_recipient_site_id);
359 FND_MSG_PUB.Add;
360 END IF;
361 RETURN G_FALSE;
362
363 WHEN OTHERS THEN
364 RETURN G_FALSE;
365
366 END validate_recipient_site_id;
367
368
369 END GR_VALIDATE;