DBA Data[Home] [Help]

PACKAGE BODY: APPS.EAM_MAT_REQ_DEFAULT_PVT

Source


1 PACKAGE BODY EAM_MAT_REQ_DEFAULT_PVT AS
2 /* $Header: EAMVMRDB.pls 120.1 2005/11/08 02:35:11 mkishore noship $ */
3 /***************************************************************************
4 --
5 --  Copyright (c) 2002 Oracle Corporation, Redwood Shores, CA, USA
6 --  All rights reserved.
7 --
8 --  FILENAME
9 --
10 --      EAMVMRDB.pls
11 --
12 --  DESCRIPTION
13 --
14 --      Spec of package EAM_MAT_REQ_DEFAULT_PVT
15 --
16 --  NOTES
17 --
18 --  HISTORY
19 --
20 --  30-JUN-2002    Kenichi Nagumo     Initial Creation
21 ***************************************************************************/
22 G_PKG_NAME      CONSTANT VARCHAR2(30) := 'EAM_MAT_REQ_DEFAULT_PVT';
23 
24 
25         /********************************************************************
26         * Procedure     : get_flex_eam_mat_req
27         * Return        : NUMBER
28         **********************************************************************/
29 
30 
31         PROCEDURE get_flex_eam_mat_req
32           (  p_eam_mat_req_rec IN  EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
33            , x_eam_mat_req_rec OUT NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
34           )
35         IS
36         BEGIN
37 
38             --  In the future call Flex APIs for defaults
39                 x_eam_mat_req_rec := p_eam_mat_req_rec;
40 
41                 IF p_eam_mat_req_rec.attribute_category =FND_API.G_MISS_CHAR THEN
42                         x_eam_mat_req_rec.attribute_category := NULL;
43                 END IF;
44 
45                 IF p_eam_mat_req_rec.attribute1 = FND_API.G_MISS_CHAR THEN
46                         x_eam_mat_req_rec.attribute1  := NULL;
47                 END IF;
48 
49                 IF p_eam_mat_req_rec.attribute2 = FND_API.G_MISS_CHAR THEN
50                         x_eam_mat_req_rec.attribute2  := NULL;
51                 END IF;
52 
53                 IF p_eam_mat_req_rec.attribute3 = FND_API.G_MISS_CHAR THEN
54                         x_eam_mat_req_rec.attribute3  := NULL;
55                 END IF;
56 
57                 IF p_eam_mat_req_rec.attribute4 = FND_API.G_MISS_CHAR THEN
58                         x_eam_mat_req_rec.attribute4  := NULL;
59                 END IF;
60 
61                 IF p_eam_mat_req_rec.attribute5 = FND_API.G_MISS_CHAR THEN
62                         x_eam_mat_req_rec.attribute5  := NULL;
63                 END IF;
64 
65                 IF p_eam_mat_req_rec.attribute6 = FND_API.G_MISS_CHAR THEN
66                         x_eam_mat_req_rec.attribute6  := NULL;
67                 END IF;
68 
69                 IF p_eam_mat_req_rec.attribute7 = FND_API.G_MISS_CHAR THEN
70                         x_eam_mat_req_rec.attribute7  := NULL;
71                 END IF;
72 
73                 IF p_eam_mat_req_rec.attribute8 = FND_API.G_MISS_CHAR THEN
74                         x_eam_mat_req_rec.attribute8  := NULL;
75                 END IF;
76 
77                 IF p_eam_mat_req_rec.attribute9 = FND_API.G_MISS_CHAR THEN
78                         x_eam_mat_req_rec.attribute9  := NULL;
79                 END IF;
80 
81                 IF p_eam_mat_req_rec.attribute10 = FND_API.G_MISS_CHAR THEN
82                         x_eam_mat_req_rec.attribute10 := NULL;
83                 END IF;
84 
85                 IF p_eam_mat_req_rec.attribute11 = FND_API.G_MISS_CHAR THEN
86                         x_eam_mat_req_rec.attribute11 := NULL;
87                 END IF;
88 
89                 IF p_eam_mat_req_rec.attribute12 = FND_API.G_MISS_CHAR THEN
90                         x_eam_mat_req_rec.attribute12 := NULL;
91                 END IF;
92 
93                 IF p_eam_mat_req_rec.attribute13 = FND_API.G_MISS_CHAR THEN
94                         x_eam_mat_req_rec.attribute13 := NULL;
95                 END IF;
96 
97                 IF p_eam_mat_req_rec.attribute14 = FND_API.G_MISS_CHAR THEN
98                         x_eam_mat_req_rec.attribute14 := NULL;
99                 END IF;
100 
101                 IF p_eam_mat_req_rec.attribute15 = FND_API.G_MISS_CHAR THEN
102                         x_eam_mat_req_rec.attribute15 := NULL;
103                 END IF;
104 
105         END get_flex_eam_mat_req;
106 
107 
108         /*********************************************************************
109         * Procedure     : Attribute_Defaulting
110         * Parameters IN : Material Requirements record
111         * Parameters OUT NOCOPY: Material Requirements record after defaulting
112         *                 Mesg_Token_Table
113         *                 Return_Status
114         * Purpose       : Attribute Defaulting will default the necessary null
115         *                 attribute with appropriate values.
116         **********************************************************************/
117 
118         PROCEDURE Attribute_Defaulting
119         (  p_eam_mat_req_rec              IN  EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
120          , x_eam_mat_req_rec              OUT NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
121          , x_mesg_token_tbl          OUT NOCOPY EAM_ERROR_MESSAGE_PVT.Mesg_Token_Tbl_Type
122          , x_return_status           OUT NOCOPY VARCHAR2
123          )
124         IS
125           l_out_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type;
126         BEGIN
127 
128                 x_eam_mat_req_rec := p_eam_mat_req_rec;
129 --                x_eam_mat_req_rec := p_eam_mat_req_rec;
130                 x_return_status := FND_API.G_RET_STS_SUCCESS;
131 
132                 -- Defaulting AUTO_REQUEST_MATERIAL flag.
133                 IF p_eam_mat_req_rec.auto_request_material IS NULL OR
134                    p_eam_mat_req_rec.auto_request_material = FND_API.G_MISS_CHAR
135                 THEN
136                    x_eam_mat_req_rec.auto_request_material := 'Y';
137                 END IF;
138 
139                 -- Defaulting wip_supply_type
140                 IF p_eam_mat_req_rec.wip_supply_type IS NULL OR
141                    p_eam_mat_req_rec.wip_supply_type = FND_API.G_MISS_NUM OR
142                    p_eam_mat_req_rec.wip_supply_type not in (wip_constants.push, wip_constants.bulk, wip_constants.based_on_bom)  -- Fix for Bug 3438964
143                 THEN
144                    x_eam_mat_req_rec.wip_supply_type := 1;
145                 END IF;
146 
147                 -- Defaulting quantity_per_assembly
148                 IF p_eam_mat_req_rec.quantity_per_assembly IS NULL OR
149                    p_eam_mat_req_rec.quantity_per_assembly = FND_API.G_MISS_NUM
150                 THEN
151                    x_eam_mat_req_rec.quantity_per_assembly := 1;
152                 END IF;
153 
154                 -- Defaulting mrp_net_flag
155                 IF p_eam_mat_req_rec.mrp_net_flag IS NULL OR
156                    p_eam_mat_req_rec.mrp_net_flag = FND_API.G_MISS_NUM
157                 THEN
158                    x_eam_mat_req_rec.mrp_net_flag := 1;
159                 END IF;
160 
161 
162                 -- Defaulting quantity_issued
163                 IF p_eam_mat_req_rec.quantity_issued IS NULL OR
164                    p_eam_mat_req_rec.quantity_issued = FND_API.G_MISS_NUM
165                 THEN
166                    x_eam_mat_req_rec.quantity_issued := 0;
167                 END IF;
168 
169                 -- Defaulting department_id
170                 IF (p_eam_mat_req_rec.department_id IS NULL OR
171                     p_eam_mat_req_rec.department_id = FND_API.G_MISS_NUM) AND
172                    p_eam_mat_req_rec.operation_seq_num is not null AND
173                    p_eam_mat_req_rec.organization_id is not null AND
174                    p_eam_mat_req_rec.wip_entity_id is not null
175                 THEN
176                   IF p_eam_mat_req_rec.operation_seq_num = 1 THEN
177                     x_eam_mat_req_rec.department_id := null;
178                   ELSE
179                     select department_id into x_eam_mat_req_rec.department_id
180                       from wip_operations
181                       where wip_entity_id = p_eam_mat_req_rec.wip_entity_id
182                       and organization_id = p_eam_mat_req_rec.organization_id
183                       and operation_seq_num = p_eam_mat_req_rec.operation_seq_num;
184 
185                   END IF;
186                 END IF;
187 
188                 l_out_eam_mat_req_rec := x_eam_mat_req_rec;
189 
190                 get_flex_eam_mat_req
191                 (  p_eam_mat_req_rec => x_eam_mat_req_rec
192                  , x_eam_mat_req_rec => l_out_eam_mat_req_rec
193                  );
194 
195                 x_eam_mat_req_rec := l_out_eam_mat_req_rec;
196 
197              EXCEPTION
198                 WHEN OTHERS THEN
199                      EAM_ERROR_MESSAGE_PVT.Add_Error_Token
200                      (  p_message_name       => NULL
201                       , p_message_text       => G_PKG_NAME || SQLERRM
202                       , x_mesg_token_Tbl     => x_mesg_token_tbl
203                      );
204 
205                     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
206 
207         END Attribute_Defaulting;
208 
209 
210         /******************************************************************
211         * Procedure     : Populate_Null_Columns
212         * Parameters IN : Material Requirements column record
213         *                 Old Material Requirements Column Record
214         * Parameters OUT NOCOPY: Material Requirements column record after populating
215         * Purpose       : This procedure will look at the columns that the user
216         *                 has not filled in and will assign those columns a
217         *                 value from the old record.
218         *                 This procedure is not called for CREATE
219         ********************************************************************/
220         PROCEDURE Populate_Null_Columns
221         (  p_eam_mat_req_rec           IN  EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
222          , p_old_eam_mat_req_rec       IN  EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
223          , x_eam_mat_req_rec           OUT NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
224         )
225         IS
226         BEGIN
227                 x_eam_mat_req_rec := p_eam_mat_req_rec;
228 --                x_eam_mat_req_rec := p_eam_mat_req_rec;
229 
230 IF EAM_PROCESS_WO_PVT.Get_Debug = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Processing null columns prior update'); END IF;
231 
232                 IF p_eam_mat_req_rec.quantity_per_assembly IS NULL OR
233                    p_eam_mat_req_rec.quantity_per_assembly = FND_API.G_MISS_NUM
234                 THEN
235                    x_eam_mat_req_rec.quantity_per_assembly := p_old_eam_mat_req_rec.quantity_per_assembly;
236                 END IF;
237 
238                 IF p_eam_mat_req_rec.department_id IS NULL OR
239                    p_eam_mat_req_rec.department_id = FND_API.G_MISS_NUM
240                 THEN
241                    x_eam_mat_req_rec.department_id := p_old_eam_mat_req_rec.department_id;
242                 END IF;
243 
244                 IF p_eam_mat_req_rec.wip_supply_type IS NULL OR
245                    p_eam_mat_req_rec.wip_supply_type = FND_API.G_MISS_NUM
246                 THEN
247                    x_eam_mat_req_rec.wip_supply_type := p_old_eam_mat_req_rec.wip_supply_type;
248                 END IF;
249 
250                 IF p_eam_mat_req_rec.date_required IS NULL OR
251                    p_eam_mat_req_rec.date_required = FND_API.G_MISS_DATE
252                 THEN
253                    x_eam_mat_req_rec.date_required := p_old_eam_mat_req_rec.date_required;
254                 END IF;
255 
256                 IF p_eam_mat_req_rec.required_quantity IS NULL OR
257                    p_eam_mat_req_rec.required_quantity = FND_API.G_MISS_NUM
258                 THEN
259                    x_eam_mat_req_rec.required_quantity := p_old_eam_mat_req_rec.required_quantity;
260                 END IF;
261 
262                 IF p_eam_mat_req_rec.quantity_issued IS NULL OR
263                    p_eam_mat_req_rec.quantity_issued = FND_API.G_MISS_NUM
264                 THEN
265                    x_eam_mat_req_rec.quantity_issued := p_old_eam_mat_req_rec.quantity_issued;
266                 END IF;
267 
268 		--fix for 3572280
269                 IF p_eam_mat_req_rec.released_quantity IS NULL OR
270                    p_eam_mat_req_rec.released_quantity = FND_API.G_MISS_NUM
271                 THEN
272                    x_eam_mat_req_rec.released_quantity := p_old_eam_mat_req_rec.released_quantity;
273                 END IF;
274 
275                 IF p_eam_mat_req_rec.supply_subinventory IS NULL OR
276                    p_eam_mat_req_rec.supply_subinventory = FND_API.G_MISS_CHAR
277                 THEN
278                    x_eam_mat_req_rec.supply_subinventory := p_old_eam_mat_req_rec.supply_subinventory;
279                 END IF;
280 
281                 IF p_eam_mat_req_rec.supply_locator_id IS NULL OR
282                    p_eam_mat_req_rec.supply_locator_id = FND_API.G_MISS_NUM
283                 THEN
284                    x_eam_mat_req_rec.supply_locator_id := p_old_eam_mat_req_rec.supply_locator_id;
285                 END IF;
286 
287                 IF p_eam_mat_req_rec.mrp_net_flag IS NULL OR
288                    p_eam_mat_req_rec.mrp_net_flag = FND_API.G_MISS_NUM
289                 THEN
290                    x_eam_mat_req_rec.mrp_net_flag := p_old_eam_mat_req_rec.mrp_net_flag;
291                 END IF;
292 
293                 IF p_eam_mat_req_rec.mps_required_quantity IS NULL OR
294                    p_eam_mat_req_rec.mps_required_quantity = FND_API.G_MISS_NUM
295                 THEN
296                     x_eam_mat_req_rec.mps_required_quantity := p_old_eam_mat_req_rec.mps_required_quantity;
297                 END IF;
298 
299                 IF p_eam_mat_req_rec.mps_date_required IS NULL OR
300                    p_eam_mat_req_rec.mps_date_required = FND_API.G_MISS_DATE
301                 THEN
302                    x_eam_mat_req_rec.mps_date_required := p_old_eam_mat_req_rec.mps_date_required;
303                 END IF;
304 
305                 IF p_eam_mat_req_rec.component_sequence_id IS NULL OR
306                    p_eam_mat_req_rec.component_sequence_id = FND_API.G_MISS_NUM
307                 THEN
308                     x_eam_mat_req_rec.component_sequence_id := p_old_eam_mat_req_rec.component_sequence_id;
309                 END IF;
310 
311                 IF p_eam_mat_req_rec.comments IS NULL OR
312                    p_eam_mat_req_rec.comments = FND_API.G_MISS_CHAR
313                 THEN
314                     x_eam_mat_req_rec.comments := p_old_eam_mat_req_rec.comments;
315                 END IF;
316 
317                 --
318                 -- Populate Null or missng flex field columns
319                 --
320                 IF p_eam_mat_req_rec.attribute_category IS NULL OR
321                    p_eam_mat_req_rec.attribute_category = FND_API.G_MISS_CHAR
322                 THEN
323                         x_eam_mat_req_rec.attribute_category := p_old_eam_mat_req_rec.attribute_category;
324 
325                 END IF;
326 
327                 IF p_eam_mat_req_rec.attribute1 = FND_API.G_MISS_CHAR OR
328                    p_eam_mat_req_rec.attribute1 IS NULL
329                 THEN
330                         x_eam_mat_req_rec.attribute1  := p_old_eam_mat_req_rec.attribute1;
331                 END IF;
332 
333                 IF p_eam_mat_req_rec.attribute2 = FND_API.G_MISS_CHAR OR
334                    p_eam_mat_req_rec.attribute2 IS NULL
335                 THEN
336                         x_eam_mat_req_rec.attribute2  := p_old_eam_mat_req_rec.attribute2;
337                 END IF;
338 
339                 IF p_eam_mat_req_rec.attribute3 = FND_API.G_MISS_CHAR OR
340                    p_eam_mat_req_rec.attribute3 IS NULL
341                 THEN
342                         x_eam_mat_req_rec.attribute3  := p_old_eam_mat_req_rec.attribute3;
343                 END IF;
344 
345                 IF p_eam_mat_req_rec.attribute4 = FND_API.G_MISS_CHAR OR
346                    p_eam_mat_req_rec.attribute4 IS NULL
347                 THEN
348                         x_eam_mat_req_rec.attribute4  := p_old_eam_mat_req_rec.attribute4;
349                 END IF;
350 
351                 IF p_eam_mat_req_rec.attribute5 = FND_API.G_MISS_CHAR OR
352                    p_eam_mat_req_rec.attribute5 IS NULL
353                 THEN
354                         x_eam_mat_req_rec.attribute5  := p_old_eam_mat_req_rec.attribute5;
355                 END IF;
356 
357                 IF p_eam_mat_req_rec.attribute6 = FND_API.G_MISS_CHAR OR
358                    p_eam_mat_req_rec.attribute6 IS NULL
359                 THEN
360                         x_eam_mat_req_rec.attribute6  := p_old_eam_mat_req_rec.attribute6;
361                 END IF;
362 
363                 IF p_eam_mat_req_rec.attribute7 = FND_API.G_MISS_CHAR OR
364                    p_eam_mat_req_rec.attribute7 IS NULL
365                 THEN
366                         x_eam_mat_req_rec.attribute7  := p_old_eam_mat_req_rec.attribute7;
367                 END IF;
368 
369                 IF p_eam_mat_req_rec.attribute8 = FND_API.G_MISS_CHAR OR
370                    p_eam_mat_req_rec.attribute8 IS NULL
371                 THEN
372                         x_eam_mat_req_rec.attribute8  := p_old_eam_mat_req_rec.attribute8;
373                 END IF;
374 
375                 IF p_eam_mat_req_rec.attribute9 = FND_API.G_MISS_CHAR OR
376                    p_eam_mat_req_rec.attribute9 IS NULL
377                 THEN
378                         x_eam_mat_req_rec.attribute9  := p_old_eam_mat_req_rec.attribute9;
379                 END IF;
380 
381                 IF p_eam_mat_req_rec.attribute10 = FND_API.G_MISS_CHAR OR
382                    p_eam_mat_req_rec.attribute10 IS NULL
383                 THEN
384                         x_eam_mat_req_rec.attribute10 := p_old_eam_mat_req_rec.attribute10;
385                 END IF;
386 
387                 IF p_eam_mat_req_rec.attribute11 = FND_API.G_MISS_CHAR OR
388                    p_eam_mat_req_rec.attribute11 IS NULL
389                 THEN
390                         x_eam_mat_req_rec.attribute11 := p_old_eam_mat_req_rec.attribute11;
391                 END IF;
392 
393                 IF p_eam_mat_req_rec.attribute12 = FND_API.G_MISS_CHAR OR
394                    p_eam_mat_req_rec.attribute12 IS NULL
395                 THEN
396                         x_eam_mat_req_rec.attribute12 := p_old_eam_mat_req_rec.attribute12;
397                 END IF;
398 
399                 IF p_eam_mat_req_rec.attribute13 = FND_API.G_MISS_CHAR OR
400                    p_eam_mat_req_rec.attribute13 IS NULL
401                 THEN
402                         x_eam_mat_req_rec.attribute13 := p_old_eam_mat_req_rec.attribute13;
403                 END IF;
404 
405                 IF p_eam_mat_req_rec.attribute14 = FND_API.G_MISS_CHAR OR
406                    p_eam_mat_req_rec.attribute14 IS NULL
407                 THEN
408                         x_eam_mat_req_rec.attribute14 := p_old_eam_mat_req_rec.attribute14;
409                 END IF;
410 
411                 IF p_eam_mat_req_rec.attribute15 = FND_API.G_MISS_CHAR OR
412                    p_eam_mat_req_rec.attribute15 IS NULL
413                 THEN
414                         x_eam_mat_req_rec.attribute15 := p_old_eam_mat_req_rec.attribute15;
415                 END IF;
416 
417                 IF p_eam_mat_req_rec.auto_request_material = FND_API.G_MISS_CHAR OR
418                    p_eam_mat_req_rec.auto_request_material IS NULL
419                 THEN
420                         x_eam_mat_req_rec.auto_request_material := p_old_eam_mat_req_rec.auto_request_material;
421                 END IF;
422 
423                 IF  p_eam_mat_req_rec.unit_price IS NULL OR
424                     p_eam_mat_req_rec.unit_price = FND_API.G_MISS_NUM
425                 THEN
426                    x_eam_mat_req_rec.unit_price := p_old_eam_mat_req_rec.unit_price;
427                 END IF;
428 
429   		IF  p_eam_mat_req_rec.suggested_vendor_name IS NULL OR
430                     p_eam_mat_req_rec.suggested_vendor_name = FND_API.G_MISS_CHAR
431                 THEN
432                    x_eam_mat_req_rec.suggested_vendor_name := p_old_eam_mat_req_rec.suggested_vendor_name;
433                 END IF;
434 
435                 IF  p_eam_mat_req_rec.vendor_id IS NULL OR
436                     p_eam_mat_req_rec.vendor_id = FND_API.G_MISS_NUM
437                 THEN
438                    x_eam_mat_req_rec.vendor_id := p_old_eam_mat_req_rec.vendor_id;
439                 END IF;
440 
441 IF EAM_PROCESS_WO_PVT.Get_Debug = 'Y' THEN EAM_ERROR_MESSAGE_PVT.Write_Debug('Done processing null columns prior update'); END IF;
442 
443 
444         END Populate_Null_Columns;
445 
446 
447 
448         /******************************************************************
449         * Procedure     : GetMaterials_In_Op1
450         * Parameters IN : Material Requirements table
451         *                       Organization_ID
452 		                         Wip_Entity_Id
453         * Parameters OUT NOCOPY: Material Requirements table after populating
454         * Purpose       : This procedure will find all the materials that are
455         *                     in operation seq num 1 and append them to the
456         *                     table.
457 		*                     This procedure is called only when there exists any material in operation 1
458         ********************************************************************/
459 
460        PROCEDURE GetMaterials_In_Op1
461         (   p_eam_mat_req_tbl     IN  EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type
462           , p_organization_id         IN  NUMBER
463           , p_wip_entity_id           IN  NUMBER
464           , x_eam_mat_req_tbl      OUT  NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type
465         )
466 		IS
467 		l_eam_mat_req_tbl  EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type := p_eam_mat_req_tbl;
468 		k            NUMBER :=  l_eam_mat_req_tbl.COUNT ;
469 
470 		CURSOR MaterialREQ IS
471 		SELECT
472 		      WIP_ENTITY_ID                 WIP_ENTITY_ID
473 			, ORGANIZATION_ID               ORGANIZATION_ID
474 			, OPERATION_SEQ_NUM             OPERATION_SEQ_NUM
475 			, INVENTORY_ITEM_ID             INVENTORY_ITEM_ID
476 			, 2                                   TRANSACTION_TYPE
477 	     FROM wip_requirement_operations
478 		 WHERE organization_id = p_organization_id
479 		 and wip_entity_id = p_wip_entity_id
480 		 and operation_seq_num = 1;
481 
482 
483 		BEGIN
484 
485 		   FOR matreq IN MaterialREQ LOOP
486 		      k := k + 1 ;
487 
488 		      l_eam_mat_req_tbl(k).WIP_ENTITY_ID := matreq.WIP_ENTITY_ID;
489 			  l_eam_mat_req_tbl(k).ORGANIZATION_ID := matreq.ORGANIZATION_ID;
490 			  l_eam_mat_req_tbl(k).OPERATION_SEQ_NUM := matreq.OPERATION_SEQ_NUM;
491               l_eam_mat_req_tbl(k).INVENTORY_ITEM_ID := matreq.INVENTORY_ITEM_ID;
492 			  l_eam_mat_req_tbl(k).TRANSACTION_TYPE := matreq.TRANSACTION_TYPE ;
493 
494 		   END LOOP;
495            x_eam_mat_req_tbl := l_eam_mat_req_tbl ;
496 
497 		END GetMaterials_In_Op1 ;
498 
499 
500         /******************************************************************
501         * Procedure     : Change_OpSeqNum1
502         * Parameters IN : Material Requirements column record
503         *                       Operation Sequence Number
504 		                         Department Id
505         * Parameters OUT NOCOPY: Material Requirements column record after changing
506         * Purpose       : This procedure will change the operation seq num from 1
507         *                     to the newly created operation ( p_operation_seq_num )
508         *                     and accordingly the department id
509         *                     This procedure is called only when there exists any material in operation 1
510         ********************************************************************/
511 		PROCEDURE Change_OpSeqNum1
512 	    (   p_eam_mat_req_rec     IN  EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
513 		  , p_operation_seq_num   IN   NUMBER
514 	      , p_department_id          IN NUMBER
515 		  , x_eam_mat_req_rec      OUT  NOCOPY EAM_PROCESS_WO_PUB.eam_mat_req_rec_type
516         )
517         IS
518         l_eam_mat_req_rec EAM_PROCESS_WO_PUB.eam_mat_req_rec_type := p_eam_mat_req_rec;
519 
520 		BEGIN
521 
522             IF ( l_eam_mat_req_rec.operation_seq_num = 1 ) THEN
523                 l_eam_mat_req_rec.operation_seq_num := p_operation_seq_num ;
524                 l_eam_mat_req_rec.department_id := p_department_id ;
525             END IF;
526 
527             x_eam_mat_req_rec := l_eam_mat_req_rec ;
528 
529         END Change_OpSeqNum1;
530 
531 
532 
533 END EAM_MAT_REQ_DEFAULT_PVT;