DBA Data[Home] [Help]

PACKAGE BODY: APPS.INV_VALIDATE_TROHDR

Source


1 PACKAGE BODY INV_Validate_Trohdr AS
2 /* $Header: INVLTRHB.pls 120.1 2005/06/17 14:23:04 appldev  $ */
3 
4 --  Global constant holding the package name
5 
6 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'INV_Validate_Trohdr';
7 
8 -- Header validations
9 
10 -- ---------------------------------------------------------------------
11 -- ---------------------------------------------------------------------
12 FUNCTION Date_Required ( p_date_required IN DATE )
13 RETURN NUMBER
14 IS
15 BEGIN
16 
17      return inv_validate.check_date(p_date_required,'INV_DATE_REQUIRED');
18 
19 END Date_Required;
20 
21 
22 -- ---------------------------------------------------------------------
23 -- ---------------------------------------------------------------------
24 FUNCTION Header ( p_header_id IN NUMBER )
25 RETURN NUMBER
26 IS
27 l_dummy                       VARCHAR2(10);
28 BEGIN
29 
30     IF p_header_id IS NULL OR
31         p_header_id = FND_API.G_MISS_NUM
32     THEN
33         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
34         THEN
35             FND_MESSAGE.SET_NAME('INV','INV_ATTRIBUTE_REQUIRED');
36             FND_MESSAGE.SET_TOKEN('ATTRIBUTE',FND_MESSAGE.GET_STRING('INV','INV_HEADER_ID'),FALSE);   -- ND
37             FND_MSG_PUB.Add;
38         END IF;
39         RETURN F;
40     END IF;
41     return T;
42 END Header;
43 
44 
45 -- ---------------------------------------------------------------------
46 -- ---------------------------------------------------------------------
47 FUNCTION Header_Status ( p_header_status IN NUMBER )
48 RETURN NUMBER
49 IS
50 l_dummy                       VARCHAR2(10);
51 BEGIN
52 
53     IF p_header_status IS NULL OR
54         p_header_status = FND_API.G_MISS_NUM
55     THEN
56         RETURN T;
57     END IF;
58 
59     SELECT  'VALID'
60     INTO    l_dummy
61     FROM    MFG_LOOKUPS
62     WHERE   LOOKUP_TYPE = 'MTL_TXN_REQUEST_STATUS'
63       AND   p_header_status IN (1,7)
64       AND   LOOKUP_CODE = p_header_status;
65 
66     RETURN T;
67 
68 EXCEPTION
69 
70     WHEN NO_DATA_FOUND THEN
71 
72         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
73         THEN
74 
75             FND_MESSAGE.SET_NAME('INV','INV_INVALID_ATTRIBUTE');
76             FND_MESSAGE.SET_TOKEN('ATTRIBUTE',FND_MESSAGE.GET_STRING('INV','INV_HEADER_STATUS'),FALSE); -- ND
77             FND_MSG_PUB.Add;
78 
79         END IF;
80 
81         RETURN F;
82 
83     WHEN OTHERS THEN
84 
85         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
86         THEN
87             FND_MSG_PUB.Add_Exc_Msg
88             (   G_PKG_NAME
89             ,   'Header_Status'
90             );
91         END IF;
92 
93         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
94 
95 END Header_Status;
96 
97 
98 
99 -- ---------------------------------------------------------------------
100 -- ---------------------------------------------------------------------
101 FUNCTION Request ( p_request_id IN NUMBER )
102 RETURN NUMBER
103 IS
104 l_dummy                       VARCHAR2(10);
105 BEGIN
106      RETURN T;
107 END Request;
108 
109 
110 -- ---------------------------------------------------------------------
111 -- ---------------------------------------------------------------------
112 FUNCTION Request_Number ( p_request_number IN VARCHAR2, p_org IN ORG )
113 RETURN NUMBER
114 IS
115 l_dummy                       VARCHAR2(10);
116 l_ret_val 		      boolean;
117 BEGIN
118 
119     IF p_request_number IS NULL OR
120         p_request_number = FND_API.G_MISS_CHAR
121     THEN
122         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
123         THEN
124             FND_MESSAGE.SET_NAME('INV','INV_ATTRIBUTE_REQUIRED');
125             FND_MESSAGE.SET_TOKEN('ATTRIBUTE',FND_MESSAGE.GET_STRING('INV','INV_REQUEST_NUMBER'),FALSE); -- ND
126             FND_MSG_PUB.Add;
127         END IF;
128         RETURN F;
129 
130 
131     END IF;
132 
133     l_ret_val := INV_Transfer_Order_PVT.Unique_Order(p_org.organization_id,p_request_number);
134 
135     if l_ret_val then
136 	RETURN T;
137     else
138 	return F;
139     end if;
140 
141 END Request_Number;
142 
143 
144 -- ---------------------------------------------------------------------
145 -- ---------------------------------------------------------------------
146 FUNCTION Status_Date ( p_status_date IN DATE )
147 RETURN NUMBER
148 IS
149 BEGIN
150 
151      return inv_validate.check_date(p_status_date,'INV_STATUS_DATE');
152 
153 END Status_Date;
154 
155 
156 -- ---------------------------------------------------------------------
157 -- ---------------------------------------------------------------------
158 -- ---------------------------------------------------------------------
159 -- ---------------------------------------------------------------------
160 
161 
162 --  Procedure Entity
163 
164 PROCEDURE Entity
165 (   x_return_status                 OUT NOCOPY VARCHAR2
166 ,   p_trohdr_rec                    IN  INV_Move_Order_PUB.Trohdr_Rec_Type
167 ,   p_old_trohdr_rec                IN  INV_Move_Order_PUB.Trohdr_Rec_Type :=
168                                         INV_Move_Order_PUB.G_MISS_TROHDR_REC
169 )
170 IS
171 l_return_status               VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
172 BEGIN
173 
174 
175    --  Check required attributes.
176 
177     -- inv_debug.message('Org:'||to_char(p_trohdr_rec.organization_id));  */
178     IF  p_trohdr_rec.organization_id IS NULL
179     THEN
180         l_return_status := FND_API.G_RET_STS_ERROR;
181 
182         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
183         THEN
184             FND_MESSAGE.SET_NAME('INV','INV_ATTRIBUTE_REQUIRED');
185             FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Organization_id ');
186             FND_MSG_PUB.Add;
187         END IF;
188     END IF;
189 
190     IF  p_trohdr_rec.header_id IS NULL
191     THEN
192         l_return_status := FND_API.G_RET_STS_ERROR;
193 
194         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
195         THEN
196             FND_MESSAGE.SET_NAME('INV','INV_ATTRIBUTE_REQUIRED');
197             FND_MESSAGE.SET_TOKEN('ATTRIBUTE','Header Id');
198             FND_MSG_PUB.Add;
199         END IF;
200     END IF;
201 
202     --
203     --  Check rest of required attributes here.
204     --
205     -- if the transaction type is account transfer, then check
206     --   if to_account and required date is not null
207 
208 
209     --  Return Error if a required attribute is missing.
210 
211     IF l_return_status = FND_API.G_RET_STS_ERROR THEN
212 
213         RAISE FND_API.G_EXC_ERROR;
214 
215     END IF;
216 
217     --
218     --  Check conditionally required attributes here.
219     --
220 
221 
222     --
223     --  Validate attribute dependencies here.
224     --
225 
226     IF l_return_status = FND_API.G_RET_STS_ERROR THEN
227 
228         RAISE FND_API.G_EXC_ERROR;
229 
230     END IF;
231 
232     --  Done validating entity
233 
234     x_return_status := l_return_status;
235 
236 
237 EXCEPTION
238 
239     WHEN FND_API.G_EXC_ERROR THEN
240 
241         x_return_status := FND_API.G_RET_STS_ERROR;
242 
243     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
244 
245         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
246 
247     WHEN OTHERS THEN
248 
249         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
250 
251         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
252         THEN
253             FND_MSG_PUB.Add_Exc_Msg
254             (   G_PKG_NAME
255             ,   'Entity'
256             );
257         END IF;
258 
259 END Entity;
260 
261 --  Procedure Attributes
262 
263 PROCEDURE Attributes
264 (   x_return_status                 OUT NOCOPY VARCHAR2
265 ,   p_trohdr_rec                    IN OUT NOCOPY  INV_Move_Order_PUB.Trohdr_Rec_Type
266 ,   p_trohdr_val_rec                    IN  INV_Move_Order_PUB.Trohdr_Val_Rec_Type
267 ,   p_old_trohdr_rec                IN  INV_Move_Order_PUB.Trohdr_Rec_Type :=
268                                         INV_Move_Order_PUB.G_MISS_TROHDR_REC
269 )
270 IS
271 BEGIN
272 
273 
274    x_return_status := FND_API.G_RET_STS_SUCCESS;
275 
276     --  Validate trohdr attributes
277     -- inv_debug.message('Calling validate org 1');
278 
279     IF  p_trohdr_rec.organization_id IS NULL
280       AND p_trohdr_val_rec.organization IS NOT NULL
281     THEN
282        p_trohdr_rec.organization_id := INV_Value_To_Id.Organization(p_trohdr_val_rec.organization);
283     END IF;
284 
285     --inv_debug.message('Calling validate org '||to_char(p_trohdr_rec.organization_id));
286     IF  p_trohdr_rec.organization_id IS NOT NULL --AND
287 /*        (   p_trohdr_rec.organization_id <>
288             p_old_trohdr_rec.organization_id OR
289             p_old_trohdr_rec.organization_id IS NULL )*/
290     THEN
291        g_org.organization_id := p_trohdr_rec.organization_id;
292        IF INV_Validate.Organization(g_org) = inv_validate.F THEN
293             x_return_status := FND_API.G_RET_STS_ERROR;
294        END IF;
295     END IF;
296 
297 
298     IF  p_trohdr_rec.transaction_type_id IS NOT NULL AND
299       (   p_trohdr_rec.transaction_type_id <>
300 	  p_old_trohdr_rec.transaction_type_id OR
301 	  p_old_trohdr_rec.transaction_type_id IS NULL )
302     THEN
303        g_transaction.transaction_type_id := p_trohdr_rec.transaction_type_id;
304        IF INV_Validate.Transaction_type(g_transaction) = inv_validate.F THEN
305             x_return_status := FND_API.G_RET_STS_ERROR;
306        END IF;
307     END IF;
308 
309 
310     -- inv_debug.message('Calling validate created_by');
311     IF  p_trohdr_rec.created_by IS NOT NULL AND
312         (   p_trohdr_rec.created_by <>
313             p_old_trohdr_rec.created_by OR
314             p_old_trohdr_rec.created_by IS NULL )
315     THEN
316        IF INV_Validate.Created_By(p_trohdr_rec.created_by) = inv_validate.F
317 	 THEN
318 	  x_return_status := FND_API.G_RET_STS_ERROR;
319        END IF;
320     END IF;
321 
322 
323 
324 
325     -- inv_debug.message('Calling validate created_date');
326     IF  p_trohdr_rec.creation_date IS NOT NULL AND
327         (   p_trohdr_rec.creation_date <>
328             p_old_trohdr_rec.creation_date OR
329             p_old_trohdr_rec.creation_date IS NULL )
330     THEN
331         IF INV_Validate.Creation_Date(p_trohdr_rec.creation_date) = inv_validate.F
332 	  THEN
333             x_return_status := FND_API.G_RET_STS_ERROR;
334         END IF;
335     END IF;
336 
337 
338     -- inv_debug.message('Calling validate date required');
339     IF  p_trohdr_rec.date_required IS NOT NULL AND
340         (   p_trohdr_rec.date_required <>
341             p_old_trohdr_rec.date_required OR
342             p_old_trohdr_rec.date_required IS NULL )
343     THEN
344         IF Date_Required(p_trohdr_rec.date_required) = F THEN
345             x_return_status := FND_API.G_RET_STS_ERROR;
346         END IF;
347     END IF;
348 
349 
350     -- inv_debug.message('Calling validate description');
351     IF  p_trohdr_rec.description IS NOT NULL AND
352         (   p_trohdr_rec.description <>
353             p_old_trohdr_rec.description OR
354             p_old_trohdr_rec.description IS NULL )
355     THEN
356         IF INV_Validate.Description(p_trohdr_rec.description) =
357 	  inv_validate.F
358 	  THEN
359 	   x_return_status := FND_API.G_RET_STS_ERROR;
360         END IF;
361     END IF;
362 
363 
364     -- inv_debug.message('Calling validate transaction type');
365     IF  p_trohdr_rec.move_order_type IS NOT NULL AND
366         (   p_trohdr_rec.move_order_type <>
367             p_old_trohdr_rec.move_order_type OR
368             p_old_trohdr_rec.move_order_type IS NULL )
369     THEN
370         --IF NOT INV_Validate.Move_Order_Type(p_trohdr_rec.move_order_type) THEN
371         --    x_return_status := FND_API.G_RET_STS_ERROR;
372         --END IF;
373 	x_return_status := FND_API.G_RET_STS_SUCCESS;
374     END IF;
375 
376 
377     -- inv_debug.message('Calling validate header id');
378     IF  p_trohdr_rec.header_id IS NOT NULL AND
379         (   p_trohdr_rec.header_id <>
380             p_old_trohdr_rec.header_id OR
381             p_old_trohdr_rec.header_id IS NULL )
382     THEN
383         IF Header(p_trohdr_rec.header_id) = F THEN
384             x_return_status := FND_API.G_RET_STS_ERROR;
385         END IF;
386     END IF;
387 
388     -- inv_debug.message('Calling validate header status');
389     IF  p_trohdr_rec.header_status IS NOT NULL AND
390         (   p_trohdr_rec.header_status <>
391             p_old_trohdr_rec.header_status OR
392             p_old_trohdr_rec.header_status IS NULL )
393     THEN
394         IF Header_Status(p_trohdr_rec.header_status) = F THEN
395             x_return_status := FND_API.G_RET_STS_ERROR;
396         END IF;
397     END IF;
398 
399 
400     -- inv_debug.message('Calling validate last updated by');
401     IF  p_trohdr_rec.last_updated_by IS NOT NULL AND
402         (   p_trohdr_rec.last_updated_by <>
403             p_old_trohdr_rec.last_updated_by OR
404             p_old_trohdr_rec.last_updated_by IS NULL )
405     THEN
406         IF INV_Validate.Last_Updated_By(p_trohdr_rec.last_updated_by) = inv_validate.F THEN
407             x_return_status := FND_API.G_RET_STS_ERROR;
408         END IF;
409     END IF;
410 
411 
412     -- inv_debug.message('Calling validate last update date');
413     IF  p_trohdr_rec.last_update_date IS NOT NULL AND
414         (   p_trohdr_rec.last_update_date <>
415             p_old_trohdr_rec.last_update_date OR
416             p_old_trohdr_rec.last_update_date IS NULL )
417     THEN
418         IF INV_Validate.Last_Update_Date(p_trohdr_rec.last_update_date) =
419 	  inv_validate.F THEN
420             x_return_status := FND_API.G_RET_STS_ERROR;
421         END IF;
422     END IF;
423 
424 
425     -- inv_debug.message('Calling validate last update login');
426     IF  p_trohdr_rec.last_update_login IS NOT NULL AND
427         (   p_trohdr_rec.last_update_login <>
428             p_old_trohdr_rec.last_update_login OR
429             p_old_trohdr_rec.last_update_login IS NULL )
430     THEN
431        IF
432 	 INV_Validate.Last_Update_Login(p_trohdr_rec.last_update_login)=
433 	 inv_validate.F
434        	 THEN
435             x_return_status := FND_API.G_RET_STS_ERROR;
436         END IF;
437     END IF;
438 
439 
440     IF  p_trohdr_rec.program_application_id IS NOT NULL AND
441         (   p_trohdr_rec.program_application_id <>
442             p_old_trohdr_rec.program_application_id OR
443             p_old_trohdr_rec.program_application_id IS NULL )
444     THEN
445         IF
446 	  INV_Validate.Program_Application(p_trohdr_rec.program_application_id)  = inv_validate.F THEN
447             x_return_status := FND_API.G_RET_STS_ERROR;
448         END IF;
449     END IF;
450 
451     IF  p_trohdr_rec.program_id IS NOT NULL AND
452         (   p_trohdr_rec.program_id <>
453             p_old_trohdr_rec.program_id OR
454             p_old_trohdr_rec.program_id IS NULL )
455     THEN
456         IF INV_Validate.Program(p_trohdr_rec.program_id) = inv_validate.F THEN
457             x_return_status := FND_API.G_RET_STS_ERROR;
458         END IF;
459     END IF;
460 
461 
462     IF  p_trohdr_rec.program_update_date IS NOT NULL AND
463         (   p_trohdr_rec.program_update_date <>
464             p_old_trohdr_rec.program_update_date OR
465             p_old_trohdr_rec.program_update_date IS NULL )
466     THEN
467         IF
468 	  INV_Validate.Program_Update_Date(p_trohdr_rec.program_update_date)= inv_validate.F THEN
469 	   x_return_status := FND_API.G_RET_STS_ERROR;
470         END IF;
471     END IF;
472 
473 
474     IF  p_trohdr_rec.request_id IS NOT NULL AND
475         (   p_trohdr_rec.request_id <>
476             p_old_trohdr_rec.request_id OR
477             p_old_trohdr_rec.request_id IS NULL )
478     THEN
479         IF Request(p_trohdr_rec.request_id) = F THEN
480             x_return_status := FND_API.G_RET_STS_ERROR;
481         END IF;
482     END IF;
483 
484 
485     -- inv_debug.message('Calling validate request number');
486     IF  p_trohdr_rec.request_number IS NOT NULL AND
487         (   p_trohdr_rec.request_number <>
488             p_old_trohdr_rec.request_number OR
489             p_old_trohdr_rec.request_number IS NULL )
490     THEN
491         IF Request_Number(p_trohdr_rec.request_number,g_org) = F THEN
492             x_return_status := FND_API.G_RET_STS_ERROR;
493         END IF;
494     END IF;
495 
496     IF  p_trohdr_rec.status_date IS NOT NULL AND
497         (   p_trohdr_rec.status_date <>
498             p_old_trohdr_rec.status_date OR
499             p_old_trohdr_rec.status_date IS NULL )
500     THEN
501         IF Status_Date(p_trohdr_rec.status_date) =  F THEN
502             x_return_status := FND_API.G_RET_STS_ERROR;
503         END IF;
504     END IF;
505 
506     IF  p_trohdr_rec.to_account_id IS NULL
507         AND p_trohdr_val_rec.to_account IS NOT NULL
508     THEN
509        p_trohdr_rec.to_account_id := INV_Value_To_Id.To_Account(p_trohdr_rec.organization_id,
510                                                              p_trohdr_val_rec.to_account);
511     END IF;
512 
513     IF  p_trohdr_rec.to_account_id IS NOT NULL AND
514         (   p_trohdr_rec.to_account_id <>
515             p_old_trohdr_rec.to_account_id OR
516             p_old_trohdr_rec.to_account_id IS NULL )
517     THEN
518         IF INV_Validate.To_Account(p_trohdr_rec.to_account_id) = inv_validate.F THEN
519             x_return_status := FND_API.G_RET_STS_ERROR;
520         END IF;
521     END IF;
522 
523     IF p_trohdr_rec.ship_to_location_id IS NOT NULL AND
524         (   p_trohdr_rec.ship_to_location_id <>
525             p_old_trohdr_rec.ship_to_location_id OR
526             p_old_trohdr_rec.ship_to_location_id IS NULL )
527     THEN
528         IF INV_Validate.hr_location(p_trohdr_rec.ship_to_location_id) = INV_Validate.F
529         THEN
530           x_return_status := FND_API.G_RET_STS_ERROR;
531         END IF;
532     END IF;
533 
534     IF  (p_trohdr_rec.attribute1 IS NOT NULL AND
535         (   p_trohdr_rec.attribute1 <>
536             p_old_trohdr_rec.attribute1 OR
537             p_old_trohdr_rec.attribute1 IS NULL ))
538     OR  (p_trohdr_rec.attribute10 IS NOT NULL AND
539         (   p_trohdr_rec.attribute10 <>
540             p_old_trohdr_rec.attribute10 OR
541             p_old_trohdr_rec.attribute10 IS NULL ))
542     OR  (p_trohdr_rec.attribute11 IS NOT NULL AND
543         (   p_trohdr_rec.attribute11 <>
544             p_old_trohdr_rec.attribute11 OR
545             p_old_trohdr_rec.attribute11 IS NULL ))
546     OR  (p_trohdr_rec.attribute12 IS NOT NULL AND
547         (   p_trohdr_rec.attribute12 <>
548             p_old_trohdr_rec.attribute12 OR
549             p_old_trohdr_rec.attribute12 IS NULL ))
550     OR  (p_trohdr_rec.attribute13 IS NOT NULL AND
551         (   p_trohdr_rec.attribute13 <>
552             p_old_trohdr_rec.attribute13 OR
553             p_old_trohdr_rec.attribute13 IS NULL ))
554     OR  (p_trohdr_rec.attribute14 IS NOT NULL AND
555         (   p_trohdr_rec.attribute14 <>
556             p_old_trohdr_rec.attribute14 OR
557             p_old_trohdr_rec.attribute14 IS NULL ))
558     OR  (p_trohdr_rec.attribute15 IS NOT NULL AND
559         (   p_trohdr_rec.attribute15 <>
560             p_old_trohdr_rec.attribute15 OR
561             p_old_trohdr_rec.attribute15 IS NULL ))
562     OR  (p_trohdr_rec.attribute2 IS NOT NULL AND
563         (   p_trohdr_rec.attribute2 <>
564             p_old_trohdr_rec.attribute2 OR
565             p_old_trohdr_rec.attribute2 IS NULL ))
566     OR  (p_trohdr_rec.attribute3 IS NOT NULL AND
567         (   p_trohdr_rec.attribute3 <>
568             p_old_trohdr_rec.attribute3 OR
569             p_old_trohdr_rec.attribute3 IS NULL ))
570     OR  (p_trohdr_rec.attribute4 IS NOT NULL AND
571         (   p_trohdr_rec.attribute4 <>
572             p_old_trohdr_rec.attribute4 OR
573             p_old_trohdr_rec.attribute4 IS NULL ))
574     OR  (p_trohdr_rec.attribute5 IS NOT NULL AND
575         (   p_trohdr_rec.attribute5 <>
576             p_old_trohdr_rec.attribute5 OR
577             p_old_trohdr_rec.attribute5 IS NULL ))
578     OR  (p_trohdr_rec.attribute6 IS NOT NULL AND
579         (   p_trohdr_rec.attribute6 <>
580             p_old_trohdr_rec.attribute6 OR
581             p_old_trohdr_rec.attribute6 IS NULL ))
582     OR  (p_trohdr_rec.attribute7 IS NOT NULL AND
583         (   p_trohdr_rec.attribute7 <>
584             p_old_trohdr_rec.attribute7 OR
585             p_old_trohdr_rec.attribute7 IS NULL ))
586     OR  (p_trohdr_rec.attribute8 IS NOT NULL AND
587         (   p_trohdr_rec.attribute8 <>
588             p_old_trohdr_rec.attribute8 OR
589             p_old_trohdr_rec.attribute8 IS NULL ))
590     OR  (p_trohdr_rec.attribute9 IS NOT NULL AND
591         (   p_trohdr_rec.attribute9 <>
592             p_old_trohdr_rec.attribute9 OR
593             p_old_trohdr_rec.attribute9 IS NULL ))
594     OR  (p_trohdr_rec.attribute_category IS NOT NULL AND
595         (   p_trohdr_rec.attribute_category <>
596             p_old_trohdr_rec.attribute_category OR
597             p_old_trohdr_rec.attribute_category IS NULL ))
598     THEN
599 
600     --  These calls are temporarily commented out
601 
602         --  Validate descriptive flexfield.
603 
604         IF INV_Validate.Desc_Flex( 'TROHDR' ) = inv_validate.F THEN
605             x_return_status := FND_API.G_RET_STS_ERROR;
606         END IF;
607 
608     END IF;
609 
610     --  Done validating attributes
611 
612 EXCEPTION
613 
614     WHEN FND_API.G_EXC_ERROR THEN
615 
616         x_return_status := FND_API.G_RET_STS_ERROR;
617 
618     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
619 
620         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
621 
622     WHEN OTHERS THEN
623 
624         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
625 
626         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
627         THEN
628             FND_MSG_PUB.Add_Exc_Msg
629             (   G_PKG_NAME
630             ,   'Attributes'
631             );
632         END IF;
633 
634 END Attributes;
635 
636 --  Procedure Entity_Delete
637 
638 PROCEDURE Entity_Delete
639 (   x_return_status                 OUT NOCOPY VARCHAR2
640 ,   p_trohdr_rec                    IN  INV_Move_Order_PUB.Trohdr_Rec_Type
641 )
642 IS
643 l_return_status               VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
644 BEGIN
645 
646     --  Validate entity delete.
647 
648     NULL;
649 
650     --  Done.
651 
652     x_return_status := l_return_status;
653 
654 EXCEPTION
655 
656     WHEN FND_API.G_EXC_ERROR THEN
657 
658         x_return_status := FND_API.G_RET_STS_ERROR;
659 
660     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
661 
662         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
663 
664     WHEN OTHERS THEN
665 
666         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
667 
668         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
669         THEN
670             FND_MSG_PUB.Add_Exc_Msg
671             (   G_PKG_NAME
672             ,   'Entity_Delete'
673             );
674         END IF;
675 
676 END Entity_Delete;
677 
678 END INV_Validate_Trohdr;