DBA Data[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;