DBA Data[Home] [Help]

PACKAGE BODY: APPS.BOM_DEFAULT_COMP_OPERATION

Source


1 PACKAGE BODY BOM_Default_Comp_Operation AS
2 /* $Header: BOMDCOPB.pls 120.0.12010000.2 2010/01/20 19:34:54 umajumde ship $ */
3 /***************************************************************************
4 --
5 --  Copyright (c) 1996 Oracle Corporation, Redwood Shores, CA, USA
6 --  All rights reserved.
7 --
8 --  FILENAME
9 --
10 --      BOMDCOPB.pls
11 --
12 --  DESCRIPTION
13 --
14 --      Body of package BOM_Default_Comp_Operation
15 --
16 --  NOTES
17 --
18 --  HISTORY
19 --  27-AUG-2001		Refai Farook	Initial Creation
20 --
21 --
22 ***************************************************************************/
23 --  Global constant holding the package name
24 
25 G_PKG_NAME                    CONSTANT VARCHAR2(30) :=
26 			      'BOM_Default_Comp_Operation';
27 
28 ret_code		      NUMBER;
29 
30 --  Package global used within the package.
31 
32 g_bom_comp_ops_rec           Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type;
33 
34 PROCEDURE Get_Flex_Comp_Operations IS
35 BEGIN
36 
37     IF g_bom_comp_ops_rec.attribute1 = FND_API.G_MISS_CHAR THEN
38         g_bom_comp_ops_rec.attribute1 := NULL;
39     END IF;
40 
41     IF g_bom_comp_ops_rec.attribute_category = FND_API.G_MISS_CHAR THEN
42         g_bom_comp_ops_rec.attribute_category := NULL;
43     END IF;
44 
45     IF g_bom_comp_ops_rec.attribute1 = FND_API.G_MISS_CHAR THEN
46         g_bom_comp_ops_rec.attribute1 := NULL;
47     END IF;
48 
49     IF g_bom_comp_ops_rec.attribute2 = FND_API.G_MISS_CHAR THEN
50         g_bom_comp_ops_rec.attribute2 := NULL;
51     END IF;
52 
53     IF g_bom_comp_ops_rec.attribute3 = FND_API.G_MISS_CHAR THEN
54         g_bom_comp_ops_rec.attribute3 := NULL;
55     END IF;
56 
57     IF g_bom_comp_ops_rec.attribute4 = FND_API.G_MISS_CHAR THEN
58         g_bom_comp_ops_rec.attribute4 := NULL;
59     END IF;
60     IF g_bom_comp_ops_rec.attribute5 = FND_API.G_MISS_CHAR THEN
61         g_bom_comp_ops_rec.attribute5 := NULL;
62     END IF;
63 
64     IF g_bom_comp_ops_rec.attribute6 = FND_API.G_MISS_CHAR THEN
65         g_bom_comp_ops_rec.attribute6 := NULL;
66     END IF;
67 
68     IF g_bom_comp_ops_rec.attribute7 = FND_API.G_MISS_CHAR THEN
69         g_bom_comp_ops_rec.attribute7 := NULL;
70     END IF;
71 
72     IF g_bom_comp_ops_rec.attribute8 = FND_API.G_MISS_CHAR THEN
73         g_bom_comp_ops_rec.attribute8 := NULL;
74     END IF;
75 
76     IF g_bom_comp_ops_rec.attribute9 = FND_API.G_MISS_CHAR THEN
77         g_bom_comp_ops_rec.attribute9 := NULL;
78     END IF;
79 
80     IF g_bom_comp_ops_rec.attribute10 = FND_API.G_MISS_CHAR THEN
81         g_bom_comp_ops_rec.attribute10 := NULL;
82     END IF;
83 
84     IF g_bom_comp_ops_rec.attribute11 = FND_API.G_MISS_CHAR THEN
85         g_bom_comp_ops_rec.attribute11 := NULL;
86     END IF;
87 
88     IF g_bom_comp_ops_rec.attribute12 = FND_API.G_MISS_CHAR THEN
89         g_bom_comp_ops_rec.attribute12 := NULL;
90     END IF;
91 
92     IF g_bom_comp_ops_rec.attribute13 = FND_API.G_MISS_CHAR THEN
93         g_bom_comp_ops_rec.attribute13 := NULL;
94     END IF;
95 
96     IF g_bom_comp_ops_rec.attribute14 = FND_API.G_MISS_CHAR THEN
97         g_bom_comp_ops_rec.attribute14 := NULL;
98     END IF;
99 
100     IF g_bom_comp_ops_rec.attribute15 = FND_API.G_MISS_CHAR THEN
101         g_bom_comp_ops_rec.attribute15 := NULL;
102     END IF;
103 
104 END;
105 
106 /******************************************************************
107 * Procedure	: Attribute_Defaulting
108 * Parameter IN  : Component ops unexposed Record
109 *		  Component ops Record
110 * Parameter IN OUT NOCOPY : Return_Status
111 *                 Mesg_Token_Tbl
112 *		  Component ops Record
113 *		  Component ops Unexposed Record
114 * Purpose       : Attributes will call get functions for all columns
115 *		  that need to be defaulted.
116 *		  Defualting can happen for exposed as well as
117 *		  unexposed columns.
118 *******************************************************************/
119 
120 PROCEDURE Attribute_Defaulting
121 (   p_bom_comp_ops_rec             IN  Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type :=
122                                         Bom_Bo_Pub.G_MISS_BOM_COMP_OPS_REC
123 ,   p_bom_comp_ops_unexp_Rec	   IN  Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type
124 ,   x_bom_comp_ops_rec             IN OUT NOCOPY Bom_Bo_Pub.Bom_COmp_Ops_Rec_Type
125 ,   x_bom_comp_ops_unexp_Rec	   IN OUT NOCOPY Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type
126 ,   x_Mesg_Token_Tbl		   IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
127 ,   x_return_status		   IN OUT NOCOPY VARCHAR2
128 )
129 IS
130 l_bom_comp_ops_rec                  Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type;
131 stmt_num                            NUMBER := 0;
132 l_err_text			    VARCHAR2(255);
133 l_return_status			    VARCHAR2(10);
134 l_Mesg_Token_Tbl		    Error_Handler.Mesg_Token_Tbl_Type;
135 BEGIN
136 
137     l_bom_comp_ops_rec := p_bom_comp_ops_rec;
138 
139     IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Comp Ops in attrib Defaulting ' || p_bom_comp_ops_Rec.operation_sequence_number); END IF;
140 
141     IF l_bom_comp_ops_rec.from_end_item_unit_number = FND_API.G_MISS_CHAR THEN
142 	l_bom_comp_ops_rec.from_end_item_unit_number := NULL;
143     END IF;
144 
145     IF l_bom_comp_ops_rec.to_end_item_unit_number = FND_API.G_MISS_CHAR THEN
146         l_bom_comp_ops_rec.to_end_item_unit_number := NULL;
147     END IF;
148 
149 /*
150     IF l_bom_comp_ops_rec.alternate_bom_code = FND_API.G_MISS_CHAR THEN
151         l_bom_comp_ops_rec.alternate_bom_code := NULL;
152     END IF;
153 */
154     g_bom_comp_ops_rec := l_bom_comp_ops_rec;
155     Get_Flex_Comp_Operations;
156     l_bom_comp_ops_rec := g_bom_comp_ops_rec;
157 
158     x_return_status   := FND_API.G_RET_STS_SUCCESS;
159     x_Mesg_Token_Tbl  := l_Mesg_Token_Tbl;
160 
161     x_bom_comp_ops_rec       := l_bom_comp_ops_rec;
162     x_bom_comp_ops_unexp_Rec := p_bom_comp_ops_unexp_rec;
163 
164 
165 IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Comp Ops Attrib Defaulting Done . . .'); END IF;
166 
167 EXCEPTION
168 
169     WHEN OTHERS THEN
170     	x_bom_comp_ops_rec       := l_bom_comp_ops_rec;
171     	x_bom_comp_ops_unexp_Rec := p_bom_comp_ops_unexp_rec;
172         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
173 	x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
174 
175 END Attribute_Defaulting;
176 
177 /******************************************************************************
178 * Procedure     : Populate_Null_Columns
179 * Parameters IN : Component ops exposed column record
180 *                 Component ops DB record of exposed columns
181 *                 Component ops unexposed column record
182 *                 Component ops DB record of unexposed columns
183 * Parameters OUT: Component ops exposed Record
184 *                 Component ops Unexposed Record
185 * Purpose       : Complete record will compare the database record with the
186 *                 user given record and will complete the user record with
187 *                 values from the database record, for all columns that the
188 *                 user has left NULL.
189 ******************************************************************************/
190 PROCEDURE Populate_Null_Columns
191 ( p_bom_comp_ops_rec                IN  Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type
192 , p_old_bom_comp_ops_rec            IN  Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type
193 , p_bom_comp_ops_unexp_rec          IN  Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type
194 , p_old_bom_comp_ops_unexp_rec      IN  Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type
195 , x_bom_comp_ops_rec               IN OUT NOCOPY  Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type
196 , x_bom_comp_ops_unexp_rec         IN OUT NOCOPY  Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type
197 )
198 IS
199 	l_bom_comp_ops_rec 	Bom_Bo_Pub.Bom_Comp_Ops_Rec_Type :=
200 				p_bom_comp_ops_rec;
201 	l_bom_comp_ops_unexp_rec 	Bom_Bo_Pub.Bom_Comp_Ops_Unexp_Rec_Type :=
202 				p_bom_comp_ops_unexp_rec;
203 BEGIN
204 
205     IF l_bom_comp_ops_rec.from_end_item_unit_number IS NULL  THEN
206         l_bom_comp_ops_rec.from_end_item_unit_number :=
207           p_old_bom_comp_ops_rec.from_end_item_unit_number;
208     END IF;
209 
210     IF l_bom_comp_ops_rec.to_end_item_unit_number IS NULL  THEN
211         l_bom_comp_ops_rec.to_end_item_unit_number :=
212                    p_old_bom_comp_ops_rec.to_end_item_unit_number;
213     END IF;
214 
215     IF l_bom_comp_ops_rec.alternate_bom_code IS NULL  THEN
216         l_bom_comp_ops_rec.alternate_bom_code :=
217             p_old_bom_comp_ops_rec.alternate_bom_code;
218     END IF;
219 
220     IF l_bom_comp_ops_rec.attribute_category IS NULL  THEN
221         l_bom_comp_ops_rec.attribute_category :=
222         p_old_bom_comp_ops_rec.attribute_category;
223     END IF;
224 
225     IF l_bom_comp_ops_rec.attribute1 IS NULL  THEN
226         l_bom_comp_ops_rec.attribute1 :=
227         p_old_bom_comp_ops_rec.attribute1;
228     END IF;
229 
230     IF l_bom_comp_ops_rec.attribute2 IS NULL  THEN
231         l_bom_comp_ops_rec.attribute2 := p_old_bom_comp_ops_rec.attribute2;
232     END IF;
233 
234     IF l_bom_comp_ops_rec.attribute3 IS NULL  THEN
235         l_bom_comp_ops_rec.attribute3 := p_old_bom_comp_ops_rec.attribute3;
236     END IF;
237 
238     IF l_bom_comp_ops_rec.attribute4 IS NULL  THEN
239         l_bom_comp_ops_rec.attribute4 := p_old_bom_comp_ops_rec.attribute4;
240     END IF;
241 
242     IF l_bom_comp_ops_rec.attribute5 IS NULL  THEN
243         l_bom_comp_ops_rec.attribute5 := p_old_bom_comp_ops_rec.attribute5;
244     END IF;
245 
246     IF l_bom_comp_ops_rec.attribute6 IS NULL  THEN
247         l_bom_comp_ops_rec.attribute6 := p_old_bom_comp_ops_rec.attribute6;
248     END IF;
249 
250     IF l_bom_comp_ops_rec.attribute7 IS NULL  THEN
251         l_bom_comp_ops_rec.attribute7 := p_old_bom_comp_ops_rec.attribute7;
252     END IF;
253 
254     IF l_bom_comp_ops_rec.attribute8 IS NULL  THEN
255         l_bom_comp_ops_rec.attribute8 := p_old_bom_comp_ops_rec.attribute8;
256     END IF;
257 
258     IF l_bom_comp_ops_rec.attribute9 IS NULL  THEN
259         l_bom_comp_ops_rec.attribute9 := p_old_bom_comp_ops_rec.attribute9;
260     END IF;
261 
262     IF l_bom_comp_ops_rec.attribute10 IS NULL  THEN
263         l_bom_comp_ops_rec.attribute10 := p_old_bom_comp_ops_rec.attribute10;
264     END IF;
265 
266     IF l_bom_comp_ops_rec.attribute11 IS NULL  THEN
267         l_bom_comp_ops_rec.attribute11 := p_old_bom_comp_ops_rec.attribute11;
268     END IF;
269 
270     IF l_bom_comp_ops_rec.attribute12 IS NULL  THEN
271         l_bom_comp_ops_rec.attribute12 := p_old_bom_comp_ops_rec.attribute12;
272     END IF;
273 
274     IF l_bom_comp_ops_rec.attribute13 IS NULL  THEN
275         l_bom_comp_ops_rec.attribute13 := p_old_bom_comp_ops_rec.attribute13;
276     END IF;
277 
278     IF l_bom_comp_ops_rec.attribute14 IS NULL  THEN
279         l_bom_comp_ops_rec.attribute14 := p_old_bom_comp_ops_rec.attribute14;
280     END IF;
281 
282     IF l_bom_comp_ops_rec.attribute15 IS NULL  THEN
283         l_bom_comp_ops_rec.attribute15 := p_old_bom_comp_ops_rec.attribute15;
284     END IF;
285 
286     g_bom_comp_ops_rec := l_bom_comp_ops_rec;
287     Get_Flex_Comp_Operations;
288     l_bom_comp_ops_rec := g_bom_comp_ops_rec;
289 
290     l_bom_comp_ops_unexp_rec := p_bom_comp_ops_unexp_Rec;
291     if(p_bom_comp_ops_unexp_rec.additional_operation_seq_id is null  or
292       p_bom_comp_ops_unexp_rec.additional_operation_seq_id = FND_API.G_MISS_NUM) then
293      l_bom_comp_ops_unexp_rec.additional_operation_seq_id :=
294 			p_old_bom_comp_ops_unexp_rec.additional_operation_seq_id;
295     end if;
296     if(p_bom_comp_ops_unexp_rec.comp_operation_seq_id is null  or
297       p_bom_comp_ops_unexp_rec.comp_operation_seq_id = FND_API.G_MISS_NUM) then
298      l_bom_comp_ops_unexp_rec.comp_operation_seq_id :=
299 			p_old_bom_comp_ops_unexp_rec.comp_operation_seq_id;
300     end if;
301     --bug 8850425 changes
302     --commenting out the following since rowid is a db column
303     /*if(p_bom_comp_ops_unexp_rec.rowid is null  or
304       p_bom_comp_ops_unexp_rec.rowid = FND_API.G_MISS_NUM) then
305      l_bom_comp_ops_unexp_rec.rowid :=
306 			p_old_bom_comp_ops_unexp_rec.rowid ;
307     end if; */
308     if(p_bom_comp_ops_unexp_rec.component_sequence_id is null  or
309       p_bom_comp_ops_unexp_rec.component_sequence_id = FND_API.G_MISS_NUM) then
310      l_bom_comp_ops_unexp_rec.component_sequence_id :=
311 			p_old_bom_comp_ops_unexp_rec.component_sequence_id ;
312     end if;
313     if(p_bom_comp_ops_unexp_rec.bill_sequence_id is null  or
314       p_bom_comp_ops_unexp_rec.bill_sequence_id = FND_API.G_MISS_NUM) then
315      l_bom_comp_ops_unexp_rec.bill_sequence_id :=
316 			p_old_bom_comp_ops_unexp_rec.bill_sequence_id;
317     end if;
318 
319     x_bom_comp_ops_unexp_rec := l_bom_comp_ops_unexp_Rec;
320     x_bom_comp_ops_Rec       := l_bom_comp_ops_rec;
321 
322 END Populate_Null_Columns;
323 
324 
325 END BOM_Default_Comp_Operation;