[Home] [Help]
PACKAGE BODY: APPS.EAM_ISOLATION_VALIDATE_PVT
Source
1 PACKAGE BODY EAM_ISOLATION_VALIDATE_PVT AS
2 /* $Header: EAMVISVB.pls 120.1 2011/03/08 01:35:00 mashah noship $ */
3
4 /***************************************************************************
5 --
6 -- Copyright (c) 2011 Oracle Corporation, Redwood Shores, CA, USA
7 -- All rights reserved.
8 --
9 -- FILENAME: EAMVISVB.pls
10 --
11 -- DESCRIPTION: Body of package EAM_ISOLATION_VALIDATE_PVT
12 --
13 -- NOTES
14 --
15 -- HISTORY
16 --
17
18 ***************************************************************************/
19
20 g_dummy NUMBER;
21
22 /********************************************************************
23 * Procedure : Check_Existence
24 * Purpose : Procedure will query the old isolation record and return it in old record variables.
25 *********************************************************************/
26 PROCEDURE CHECK_EXISTENCE
27 ( p_iso_header_rec IN EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type
28 , x_iso_header_rec OUT NOCOPY EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type
29 , x_mesg_token_Tbl OUT NOCOPY EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type
30 , x_return_Status OUT NOCOPY VARCHAR2
31 )IS
32 l_token_tbl EAM_ERROR_MESSAGE_PVT.Token_Tbl_Type;
33 l_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
34 l_out_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
35 l_return_status VARCHAR2(1);
36 l_isolation_header_rec EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type;
37 BEGIN
38
39 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Quering Isolation'); END IF;
40
41 EAM_ISOLATION_UTILITY_PVT.QUERY_ROW (
42 p_isolation_id => p_iso_header_rec.ISOLATION_ID ,
43 p_organization_id => p_iso_header_rec.organization_id ,
44 x_isolation_header_rec => l_isolation_header_rec ,
45 x_Return_status => l_return_status );
46
47 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Query Row Returned with : ' || l_return_status);
48 END IF;
49
50 IF l_return_status = EAM_PROCESS_WO_PVT.G_RECORD_FOUND AND p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_CREATE THEN
51
52
53 l_out_mesg_token_tbl := l_mesg_token_tbl;
54 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
55 x_Mesg_token_tbl => l_out_Mesg_Token_Tbl ,
56 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
57 p_message_name => 'EAM_SAFETY_ALREADY_EXISTS' ,
58 p_token_tbl => l_token_tbl );
59 l_mesg_token_tbl := l_out_mesg_token_tbl;
60 l_return_status := FND_API.G_RET_STS_ERROR;
61
62 ELSIF l_return_status = EAM_PROCESS_WO_PVT.G_RECORD_NOT_FOUND AND p_iso_header_rec.transaction_type IN (EAM_PROCESS_WO_PVT.G_OPR_UPDATE, EAM_PROCESS_WO_PVT.G_OPR_DELETE) THEN
63 l_token_tbl(1).token_name := 'SAFETY_NAME';
64 l_token_tbl(1).token_value := p_iso_header_rec.ISOLATION_NAME;
65
66 l_out_mesg_token_tbl := l_mesg_token_tbl;
67 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
68 x_Mesg_token_tbl => l_out_Mesg_Token_Tbl ,
69 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
70 p_message_name => 'EAM_SAFETY_EXISTENCE_ERROR' ,
71 p_token_tbl => l_token_tbl );
72 l_mesg_token_tbl := l_out_mesg_token_tbl;
73 l_return_status := FND_API.G_RET_STS_ERROR;
74
75 ELSIF l_Return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
76 l_out_mesg_token_tbl := l_mesg_token_tbl;
77 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
78 x_Mesg_token_tbl => l_out_Mesg_Token_Tbl ,
79 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
80 p_message_name => NULL ,
81 p_message_text => 'Unexpected error' );
82 l_mesg_token_tbl := l_out_mesg_token_tbl;
83 l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
84 ELSE
85 l_return_status := FND_API.G_RET_STS_SUCCESS;
86 x_iso_header_rec :=l_isolation_header_rec;
87 END IF;
88 x_return_status := l_return_status;
89 x_mesg_token_tbl := l_mesg_token_tbl;
90 END CHECK_EXISTENCE;
91
92
93
94 /********************************************************************
95 * Procedure: Check_Attributes
96 * Purpose: Check_Attributes procedure will validate every Revised item attribute in its entirely.
97 *********************************************************************/
98 PROCEDURE CHECK_ATTRIBUTES
99 ( p_iso_header_rec IN EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type
100 , p_old_iso_header_rec IN EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type
101 , x_mesg_token_Tbl OUT NOCOPY EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type
102 , x_return_Status OUT NOCOPY VARCHAR2
103 )IS
104
105 l_err_text VARCHAR2(2000) := NULL;
106 l_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
107 l_out_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
108 l_Token_Tbl EAM_ERROR_MESSAGE_PVT.Token_Tbl_Type;
109 BEGIN
110 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Within Isolation Check Attributes . . . '); END IF;
111
112 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating organization_id of Isolation (EAM enabled) . . . ');
113 END IF;
114 BEGIN
115 SELECT 1
116 INTO g_dummy
117 FROM wip_eam_parameters wep,
118 mtl_parameters mp
119 WHERE wep.organization_id = mp.organization_id
120 AND mp.eam_enabled_flag = 'Y'
121 AND wep.organization_id = p_iso_header_rec.organization_id;
122 x_return_status := FND_API.G_RET_STS_SUCCESS;
123 EXCEPTION
124 WHEN no_data_found THEN
125 l_out_mesg_token_tbl := l_mesg_token_tbl;
126 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
127 p_message_name => 'EAM_SAFETY_ORG_EAM_ENABLED' ,
128 p_token_tbl => l_token_tbl ,
129 p_mesg_token_tbl => l_mesg_token_tbl ,
130 x_mesg_token_tbl => l_out_mesg_token_tbl );
131 l_mesg_token_tbl := l_out_mesg_token_tbl;
132 x_return_status := FND_API.G_RET_STS_ERROR;
133 x_mesg_token_tbl := l_mesg_token_tbl ;
134 RETURN;
135 END;
136
137 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating if Isolation ID already exists for create . . . '); END IF;
138 DECLARE
139 l_count NUMBER;
140 BEGIN
141 IF (p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_CREATE) THEN
142 SELECT COUNT(*)
143 INTO l_count
144 FROM EAM_ISOLATIONS
145 WHERE ISOLATION_ID = p_iso_header_rec.ISOLATION_ID
146 AND organization_id = p_iso_header_rec.organization_id;
147 IF(l_count > 0) THEN
148 raise fnd_api.g_exc_unexpected_error;
149 END IF;
150 END IF;
151 x_return_status := FND_API.G_RET_STS_SUCCESS;
152 EXCEPTION
153 WHEN fnd_api.g_exc_unexpected_error THEN
154 l_out_mesg_token_tbl := l_mesg_token_tbl;
155 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
156 p_message_name => 'EAM_SAFETY_ID_EXISTS' ,
157 p_token_tbl => l_token_tbl ,
158 p_mesg_token_tbl => l_mesg_token_tbl ,
159 x_mesg_token_tbl => l_out_mesg_token_tbl );
160 l_mesg_token_tbl := l_out_mesg_token_tbl;
161 x_return_status := FND_API.G_RET_STS_ERROR;
162 x_mesg_token_tbl := l_mesg_token_tbl ;
163 RETURN;
164 END;
165
166 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating if Isolation ID exists for update . . . '); END IF;
167 DECLARE
168 l_count NUMBER;
169 BEGIN
170 IF (p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_UPDATE) THEN
171 SELECT COUNT(*)
172 INTO l_count
173 FROM EAM_ISOLATIONS
174 WHERE ISOLATION_ID = p_iso_header_rec.ISOLATION_ID
175 AND organization_id = p_iso_header_rec.organization_id;
176
177 IF(l_count <> 1) THEN
178 raise fnd_api.g_exc_unexpected_error;
179 END IF;
180 END IF;
181 x_return_status := FND_API.G_RET_STS_SUCCESS;
182 EXCEPTION
183 WHEN fnd_api.g_exc_unexpected_error THEN
184 l_out_mesg_token_tbl := l_mesg_token_tbl;
185 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
186 p_message_name => 'EAM_SAFETY_ID_NOT_EXIST' ,
187 p_token_tbl => l_token_tbl ,
188 p_mesg_token_tbl => l_mesg_token_tbl ,
189 x_mesg_token_tbl => l_out_mesg_token_tbl );
190 l_mesg_token_tbl := l_out_mesg_token_tbl;
191 x_return_status := FND_API.G_RET_STS_ERROR;
192 x_mesg_token_tbl := l_mesg_token_tbl ;
193 RETURN;
194 END;
195
196 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating Isolation Name . . . '); END IF;
197 DECLARE
198 l_count NUMBER;
199 BEGIN
200 IF (p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_CREATE) THEN
201 SELECT COUNT(*)
202 INTO l_count
203 FROM EAM_ISOLATIONS
204 WHERE ISOLATION_NAME = p_iso_header_rec.ISOLATION_NAME
205 AND organization_id = p_iso_header_rec.organization_id;
206 IF(l_count > 0) THEN
207 raise fnd_api.g_exc_unexpected_error;
208 END IF;
209 END IF;
210 x_return_status := FND_API.G_RET_STS_SUCCESS;
211 EXCEPTION
212 WHEN fnd_api.g_exc_unexpected_error THEN
213 l_out_mesg_token_tbl := l_mesg_token_tbl;
214 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
215 p_message_name => 'EAM_SAFETY_NAME' ,
216 p_token_tbl => l_token_tbl ,
217 p_mesg_token_tbl => l_mesg_token_tbl ,
218 x_mesg_token_tbl => l_out_mesg_token_tbl );
219 l_mesg_token_tbl := l_out_mesg_token_tbl;
220 x_return_status := FND_API.G_RET_STS_ERROR;
221 x_mesg_token_tbl := l_mesg_token_tbl ;
222 RETURN;
223 END;
224
225 -- status_type
226 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating Isolation status_type. . . '); END IF;
227 BEGIN
228 IF (p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_CREATE AND p_iso_header_rec.SYSTEM_STATUS NOT IN (wip_constants.released, wip_constants.draft)) THEN
229 raise fnd_api.g_exc_unexpected_error;
230 -- elsif (p_iso_header_rec.transaction_type = EAM_PROCESS_WO_PVT.G_OPR_UPDATE AND p_iso_header_rec.SYSTEM_STATUS NOT IN (wip_constants.released, wip_constants.cancelled,wip_constants.comp_chrg,wip_constants.comp_nochrg,wip_constants.draft )) THEN
231 -- raise fnd_api.g_exc_unexpected_error;
232 END IF;
233 x_return_status := FND_API.G_RET_STS_SUCCESS;
234 EXCEPTION
235 WHEN fnd_api.g_exc_unexpected_error THEN
236
237 l_out_mesg_token_tbl := l_mesg_token_tbl;
238 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
239 p_message_name => 'EAM_SAFETY_STATUS_TYPE' ,
240 p_token_tbl => l_token_tbl ,
241 p_mesg_token_tbl => l_mesg_token_tbl ,
242 x_mesg_token_tbl => l_out_mesg_token_tbl );
243 l_mesg_token_tbl := l_out_mesg_token_tbl;
244 x_return_status := FND_API.G_RET_STS_ERROR;
245 x_mesg_token_tbl := l_mesg_token_tbl ;
246 RETURN;
247 END;
248
249 /* IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating Isolation status_type for cancelled. . . '); END IF;
250 BEGIN
251 IF (p_iso_header_rec.transaction_type= EAM_PROCESS_WO_PVT.G_OPR_UPDATE AND
252 p_iso_header_rec.SYSTEM_STATUS = wip_constants.cancelled OR
253 p_iso_header_rec.ISOLATION_NAME <> p_old_iso_header_rec.ISOLATION_NAME OR
254 p_iso_header_rec.DESCRIPTION <> p_old_iso_header_rec.DESCRIPTION OR
255 p_iso_header_rec.ORGANIZATION_ID <> p_old_iso_header_rec.ORGANIZATION_ID OR
256 p_iso_header_rec.ISOLATION_TYPE <> p_old_iso_header_rec.ISOLATION_TYPE OR
257 -- p_iso_header_rec.ISOLATION_TYPE_DESCRIPTION <> p_old_iso_header_rec.ISOLATION_TYPE_DESCRIPTION OR
258 p_iso_header_rec.EFFECTIVE_START_DATE <> p_old_iso_header_rec.EFFECTIVE_START_DATE OR
259 p_iso_header_rec.EFFECTIVE_END_DATE <> p_old_iso_header_rec.EFFECTIVE_END_DATE OR
260 p_iso_header_rec.COPY_FROM_ISOLATION <> p_old_iso_header_rec.COPY_FROM_ISOLATION OR
261 p_iso_header_rec.COPY_FROM_WORK_CLEARANCE <> p_old_iso_header_rec.COPY_FROM_WORK_CLEARANCE OR
262 p_iso_header_rec.PERMIT_REQUIRED <> p_old_iso_header_rec.PERMIT_REQUIRED OR
263 p_iso_header_rec.ATTRIBUTE_CATEGORY <> p_old_iso_header_rec.ATTRIBUTE_CATEGORY OR
264 p_iso_header_rec.ATTRIBUTE1 <> p_old_iso_header_rec.ATTRIBUTE1 OR
265 p_iso_header_rec.ATTRIBUTE2 <> p_old_iso_header_rec.ATTRIBUTE2 OR
266 p_iso_header_rec.ATTRIBUTE3 <> p_old_iso_header_rec.ATTRIBUTE3 OR
267 p_iso_header_rec.ATTRIBUTE4 <> p_old_iso_header_rec.ATTRIBUTE4 OR
268 p_iso_header_rec.ATTRIBUTE5 <> p_old_iso_header_rec.ATTRIBUTE5 OR
269 p_iso_header_rec.ATTRIBUTE6 <> p_old_iso_header_rec.ATTRIBUTE6 OR
270 p_iso_header_rec.ATTRIBUTE7 <> p_old_iso_header_rec.ATTRIBUTE7 OR
271 p_iso_header_rec.ATTRIBUTE8 <> p_old_iso_header_rec.ATTRIBUTE8 OR
272 p_iso_header_rec.ATTRIBUTE9 <> p_old_iso_header_rec.ATTRIBUTE9 OR
273 p_iso_header_rec.ATTRIBUTE10 <> p_old_iso_header_rec.ATTRIBUTE10 OR
274 p_iso_header_rec.ATTRIBUTE11 <> p_old_iso_header_rec.ATTRIBUTE11 OR
275 p_iso_header_rec.ATTRIBUTE12 <> p_old_iso_header_rec.ATTRIBUTE12 OR
276 p_iso_header_rec.ATTRIBUTE13 <> p_old_iso_header_rec.ATTRIBUTE13 OR
277 p_iso_header_rec.ATTRIBUTE14 <> p_old_iso_header_rec.ATTRIBUTE14 OR
281 p_iso_header_rec.ATTRIBUTE18 <> p_old_iso_header_rec.ATTRIBUTE3 OR
278 p_iso_header_rec.ATTRIBUTE15 <> p_old_iso_header_rec.ATTRIBUTE15 OR
279 p_iso_header_rec.ATTRIBUTE16 <> p_old_iso_header_rec.ATTRIBUTE1 OR
280 p_iso_header_rec.ATTRIBUTE17 <> p_old_iso_header_rec.ATTRIBUTE2 OR
282 p_iso_header_rec.ATTRIBUTE19 <> p_old_iso_header_rec.ATTRIBUTE4 OR
283 p_iso_header_rec.ATTRIBUTE20 <> p_old_iso_header_rec.ATTRIBUTE5 OR
284 p_iso_header_rec.ATTRIBUTE21 <> p_old_iso_header_rec.ATTRIBUTE6 OR
285 p_iso_header_rec.ATTRIBUTE22 <> p_old_iso_header_rec.ATTRIBUTE7 OR
286 p_iso_header_rec.ATTRIBUTE23 <> p_old_iso_header_rec.ATTRIBUTE8 OR
287 p_iso_header_rec.ATTRIBUTE24 <> p_old_iso_header_rec.ATTRIBUTE9 OR
288 p_iso_header_rec.ATTRIBUTE25 <> p_old_iso_header_rec.ATTRIBUTE10 OR
289 p_iso_header_rec.ATTRIBUTE26 <> p_old_iso_header_rec.ATTRIBUTE11 OR
290 p_iso_header_rec.ATTRIBUTE27 <> p_old_iso_header_rec.ATTRIBUTE12 OR
291 p_iso_header_rec.ATTRIBUTE28 <> p_old_iso_header_rec.ATTRIBUTE13 OR
292 p_iso_header_rec.ATTRIBUTE29 <> p_old_iso_header_rec.ATTRIBUTE14 OR
293 p_iso_header_rec.ATTRIBUTE30 <> p_old_iso_header_rec.ATTRIBUTE15 OR
294 p_iso_header_rec.APPROVED_BY <> p_old_iso_header_rec.APPROVED_BY ) THEN
295 raise fnd_api.g_exc_unexpected_error;
296 END IF;
297 x_return_status := FND_API.G_RET_STS_SUCCESS;
298 EXCEPTION
299 WHEN fnd_api.g_exc_unexpected_error THEN
300 l_token_tbl(1).token_name := 'SAFETY_NAME';
301 l_token_tbl(1).token_value := p_iso_header_rec.ISOLATION_NAME;
302 l_out_mesg_token_tbl := l_mesg_token_tbl;
303 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
304 p_message_name => 'EAM_SAFETY_STATUS_TYPE' ,
305 p_token_tbl => l_token_tbl ,
306 p_mesg_token_tbl => l_mesg_token_tbl ,
307 x_mesg_token_tbl => l_out_mesg_token_tbl );
308 l_mesg_token_tbl := l_out_mesg_token_tbl;
309 x_return_status := FND_API.G_RET_STS_ERROR;
310 x_mesg_token_tbl := l_mesg_token_tbl ;
311 RETURN;
312 END; */
313
314 -- user_id
315 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating user_id . . . '); END IF;
316 BEGIN
317 IF (p_iso_header_rec.user_id IS NOT NULL) THEN
318 SELECT 1
319 INTO g_dummy
320 FROM fnd_user
321 WHERE user_id = p_iso_header_rec.user_id;
322 x_return_status := FND_API.G_RET_STS_SUCCESS;
323 END IF;
324 EXCEPTION
325 WHEN no_data_found THEN
326
327 l_out_mesg_token_tbl := l_mesg_token_tbl;
328 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
329 p_message_name => 'EAM_SAFETY_USER' ,
330 p_token_tbl => l_token_tbl ,
331 p_mesg_token_tbl => l_mesg_token_tbl ,
332 x_mesg_token_tbl => l_out_mesg_token_tbl );
333 l_mesg_token_tbl := l_out_mesg_token_tbl;
334 x_return_status := FND_API.G_RET_STS_ERROR;
335 x_mesg_token_tbl := l_mesg_token_tbl ;
336 RETURN;
337 END;
338
339 -- responsibility_id
340 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Validating responsibility_id . . . '); END IF;
341 BEGIN
342 IF (p_iso_header_rec.responsibility_id IS NOT NULL) THEN
343 SELECT 1
344 INTO g_dummy
345 FROM fnd_responsibility
346 WHERE responsibility_id = p_iso_header_rec.responsibility_id;
347 x_return_status := FND_API.G_RET_STS_SUCCESS;
348 END IF;
349 EXCEPTION
350 WHEN no_data_found THEN
351
352 l_out_mesg_token_tbl := l_mesg_token_tbl;
353 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
354 p_message_name => 'EAM_SAFETY_RESPONSIBILITY' ,
355 p_token_tbl => l_token_tbl ,
356 p_mesg_token_tbl => l_mesg_token_tbl ,
357 x_mesg_token_tbl => l_out_mesg_token_tbl );
358 l_mesg_token_tbl := l_out_mesg_token_tbl;
359 x_return_status := FND_API.G_RET_STS_ERROR;
360 x_mesg_token_tbl := l_mesg_token_tbl ;
361 RETURN;
362 END;
363 END CHECK_ATTRIBUTES;
364
365
366 /********************************************************************
367 * Procedure : Check_Required
368 * Purpose : Check_Required procedure will check the existence of mandatory attributes.
369 *********************************************************************/
370 PROCEDURE CHECK_REQUIRED
371 ( p_iso_header_rec IN EAM_PROCESS_SAFETY_PUB.eam_iso_header_rec_type
372 , x_mesg_token_Tbl OUT NOCOPY EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type
373 , x_return_Status OUT NOCOPY VARCHAR2
374 )IS
375 l_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
376 l_out_Mesg_Token_Tbl EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type;
377 l_Token_Tbl EAM_ERROR_MESSAGE_PVT.Token_Tbl_Type;
378 BEGIN
379 IF EAM_PROCESS_WO_PVT.GET_DEBUG = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Checking required attributes for Isolation . . . '); END IF;
380 x_return_status:= FND_API.G_RET_STS_SUCCESS;
381 IF p_iso_header_rec.ISOLATION_ID IS NULL THEN
382
383 l_out_mesg_token_tbl := l_mesg_token_tbl;
384 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
385 p_message_name => 'EAM_SAFETY_ID_REQUIRED' ,
386 p_token_tbl => l_Token_tbl ,
387 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
388 x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl );
389 l_mesg_token_tbl := l_out_mesg_token_tbl;
390 x_return_status := FND_API.G_RET_STS_ERROR;
391 END IF;
392 IF p_iso_header_rec.ISOLATION_NAME IS NULL THEN
393
394 l_out_mesg_token_tbl := l_mesg_token_tbl;
395 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
396 p_message_name => 'EAM_SAFETY_NAME_REQUIRED' ,
397 p_token_tbl => l_Token_tbl ,
398 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
399 x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl );
400 l_mesg_token_tbl := l_out_mesg_token_tbl;
401 x_return_status := FND_API.G_RET_STS_ERROR;
402 END IF;
403 IF p_iso_header_rec.ISOLATION_TYPE IS NULL THEN
404
405 l_out_mesg_token_tbl := l_mesg_token_tbl;
406 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
407 p_message_name => 'EAM_ISO_TYPE_REQUIRED' ,
408 p_token_tbl => l_Token_tbl ,
409 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
410 x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl );
411 l_mesg_token_tbl := l_out_mesg_token_tbl;
412 x_return_status := FND_API.G_RET_STS_ERROR;
413 END IF;
414 IF p_iso_header_rec.ORGANIZATION_ID IS NULL THEN
415
416 l_out_mesg_token_tbl := l_mesg_token_tbl;
417 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
418 p_message_name => 'EAM_SAFETY_ORG_REQUIRED' ,
419 p_token_tbl => l_Token_tbl ,
420 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
421 x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl );
422 l_mesg_token_tbl := l_out_mesg_token_tbl;
423 x_return_status := FND_API.G_RET_STS_ERROR;
424 END IF;
425 IF p_iso_header_rec.SYSTEM_STATUS IS NULL THEN
426
427 l_out_mesg_token_tbl := l_mesg_token_tbl;
428 EAM_ERROR_MESSAGE_PVT.Add_Error_Token (
429 p_message_name => 'EAM_ISOLATION_STATUS_REQUIRED' ,
430 p_token_tbl => l_Token_tbl ,
431 p_Mesg_Token_Tbl => l_Mesg_Token_Tbl ,
432 x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl );
433 l_mesg_token_tbl := l_out_mesg_token_tbl;
434 x_return_status := FND_API.G_RET_STS_ERROR;
435 END IF;
436
437 IF p_iso_header_rec.USER_ID IS NULL THEN
438
439 l_out_mesg_token_tbl := l_mesg_token_tbl;
440 EAM_ERROR_MESSAGE_PVT.Add_Error_Token
441 ( p_message_name => 'EAM_SAFETY_USERID_REQUIRED'
442 , p_token_tbl => l_Token_tbl
443 , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
444 , x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl
445 );
446 l_mesg_token_tbl := l_out_mesg_token_tbl;
447 x_return_status := FND_API.G_RET_STS_ERROR;
448 END IF;
449 IF p_iso_header_rec.RESPONSIBILITY_ID IS NULL THEN
450
451 l_out_mesg_token_tbl := l_mesg_token_tbl;
452 EAM_ERROR_MESSAGE_PVT.Add_Error_Token
453 ( p_message_name => 'EAM_SAFETY_RESPID_REQUIRED'
454 , p_token_tbl => l_Token_tbl
455 , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
456 , x_Mesg_Token_Tbl => l_out_Mesg_Token_Tbl
457 );
458 l_mesg_token_tbl := l_out_mesg_token_tbl;
459 x_return_status := FND_API.G_RET_STS_ERROR;
460 END IF;
461 x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
462 x_return_status := FND_API.G_RET_STS_SUCCESS;
463 END CHECK_REQUIRED;
464
465
466 END EAM_ISOLATION_VALIDATE_PVT;