DBA Data[Home] [Help]

PACKAGE BODY: APPS.INV_PULLSEQUENCE_PKG

Source


1 PACKAGE BODY INV_PullSequence_PKG as
2 /* $Header: INVKPSQB.pls 120.4 2011/04/12 18:56:21 yaoli ship $ */
3 
4 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'INV_PullSequence_PKG';
5 
6 PROCEDURE   Update_Row(x_return_status        OUT NOCOPY     	VARCHAR2,
7                        p_Pull_Sequence_Id               NUMBER,
8                        p_Inventory_item_id              NUMBER,
9                        p_Organization_id       		NUMBER,
10                        p_Subinventory_name              VARCHAR2,
11                        p_Kanban_Plan_id        		NUMBER,
12                        p_Source_type           		NUMBER,
13                        p_Last_Update_Date               DATE,
14                        p_Last_Updated_By                NUMBER,
15                        p_Creation_Date                  DATE,
16                        p_Created_By                     NUMBER,
17                        p_Last_Update_Login              NUMBER,
18                        p_Locator_id              	NUMBER,
19                        p_Supplier_id           		NUMBER,
20                        p_Supplier_site_id      		NUMBER,
21                        p_Source_Organization_id		NUMBER,
22                        p_Source_Subinventory            VARCHAR2,
23                        p_Source_Locator_id		NUMBER,
24                        p_Wip_Line_id		        NUMBER,
25                        p_Release_Kanban_flag 		NUMBER,
26                        p_Calculate_Kanban_flag 		NUMBER,
27                        p_Kanban_size        		NUMBER,
28                        p_Number_of_cards       		NUMBER,
29                        p_Minimum_order_quantity		NUMBER,
30                        p_Aggregation_Type		NUMBER,
31                        p_Allocation_Percent		NUMBER,
32                        p_Replenishment_lead_time        NUMBER,
33                        p_Fixed_Lot_multiplier           NUMBER,
34                        p_Safety_Stock_Days              NUMBER,
35                        p_Updated_Flag           	NUMBER,
36                        p_Attribute_Category             VARCHAR2,
37                        p_Attribute1                     VARCHAR2,
38                        p_Attribute2                     VARCHAR2,
39                        p_Attribute3                     VARCHAR2,
40                        p_Attribute4                     VARCHAR2,
41                        p_Attribute5                     VARCHAR2,
42                        p_Attribute6                     VARCHAR2,
43                        p_Attribute7                     VARCHAR2,
44                        p_Attribute8                     VARCHAR2,
45                        p_Attribute9                     VARCHAR2,
46                        p_Attribute10                    VARCHAR2,
47                        p_Attribute11                    VARCHAR2,
48                        p_Attribute12                    VARCHAR2,
49                        p_Attribute13                    VARCHAR2,
50                        p_Attribute14                    VARCHAR2,
51                        p_Attribute15                    VARCHAR2,
52 		                     p_point_of_use_x			NUMBER DEFAULT NULL,
53        	               p_point_of_use_y			NUMBER DEFAULT NULL,
54 		                     p_point_of_supply_x		NUMBER DEFAULT NULL,
55        	               p_point_of_supply_y		NUMBER DEFAULT NULL,
56 		                     p_planning_update_status		NUMBER DEFAULT NULL,
57               		       p_auto_request                   VARCHAR2 DEFAULT NULL,
58                        p_Auto_Allocate_Flag             NUMBER DEFAULT NULL,  --Bug3905884
59                        --eKanban Changes
60                        p_replenishment_type             NUMBER DEFAULT NULL,
61                        p_future_card_size               NUMBER DEFAULT NULL,
62                        p_future_no_of_cards             NUMBER DEFAULT NULL,
63                        p_planning_effectivity           DATE   DEFAULT NULL,
64                        p_consolidation                  NUMBER DEFAULT NULL,
65                        p_consolidation_group            VARCHAR2 DEFAULT NULL,
66                        p_avg_dependent_demand           NUMBER DEFAULT NULL,
67                        p_avg_independent_demand         NUMBER DEFAULT NULL,
68                        p_last_imp_plan                  VARCHAR2 DEFAULT NULL,
69                        p_imp_plan_start_date            DATE DEFAULT NULL,
70                        p_imp_plan_end_date              DATE DEFAULT NULL,
71                        p_no_of_temp_card                NUMBER DEFAULT NULL,
72                        p_no_of_temp_cycle               NUMBER DEFAULT NULL,
73                        p_temp_exp_date                  DATE DEFAULT NULL)
74 IS
75 
76 l_return_status 	varchar2(1)     := FND_API.G_RET_STS_SUCCESS;
77 --add for Ekanban business
78 l_msg_data    VARCHAR2(1000);
79 
80 BEGIN
81         FND_MSG_PUB.Initialize;
82 	UPDATE MTL_KANBAN_PULL_SEQUENCES
83 	SET
84    Inventory_item_id 	     =	p_Inventory_item_id,
85    Organization_Id 	       =	p_Organization_Id,
86  		Subinventory_name       =	p_Subinventory_name,
87 	 	Kanban_Plan_id         	=	p_Kanban_Plan_id,
88  		Source_type             =	p_Source_type,
89  		Last_Update_Date        =	p_Last_Update_Date,
90  		Last_Updated_By         =	p_Last_Updated_By,
91  		Creation_Date           =	p_Creation_Date,
92  		Created_By              =	p_Created_By,
93  		Last_Update_Login       =	p_Last_Update_Login,
94  		Locator_id              =	p_Locator_id,
95  		Supplier_id             =	p_Supplier_id,
96  		Supplier_site_id        =	p_Supplier_site_id,
97  		Source_Organization_id  =	p_Source_Organization_id,
98  		Source_Subinventory     =	p_Source_Subinventory,
99  		Source_Locator_id       =	p_Source_Locator_id,
100  		Wip_Line_id             =	p_Wip_Line_id,
101  		Release_Kanban_Flag     =	p_Release_Kanban_flag,
102  		Calculate_Kanban_Flag   =	p_Calculate_Kanban_flag,
103  		Kanban_size             =	p_Kanban_size,
104  		Number_of_cards         =	p_Number_of_cards,
105  		Minimum_order_quantity  =	p_Minimum_order_quantity,
106  		Aggregation_Type        =	p_Aggregation_Type,
107  		Allocation_Percent      =	p_Allocation_Percent,
108  		Replenishment_lead_time =	p_Replenishment_lead_time,
109  		Fixed_Lot_multiplier    =	p_Fixed_Lot_multiplier,
110  		Safety_Stock_Days       =	p_Safety_Stock_Days,
111  		Updated_Flag            =	p_Updated_Flag,
112  		Attribute_Category      =	p_Attribute_Category,
113  		Attribute1              =	p_Attribute1,
114  		Attribute2              =	p_Attribute2,
115  		Attribute3              =	p_Attribute3,
116  		Attribute4              =	p_Attribute4,
117  		Attribute5              =	p_Attribute5,
118  		Attribute6              =	p_Attribute6,
119  		Attribute7              =	p_Attribute7,
120  		Attribute8              =	p_Attribute8,
121  		Attribute9              =	p_Attribute9,
122  		Attribute10             =	p_Attribute10,
123  		Attribute11             =	p_Attribute11,
124  		Attribute12             =	p_Attribute12,
125  		Attribute13             =	p_Attribute13,
126  		Attribute14             =	p_Attribute14,
127  		Attribute15             =	p_Attribute15,
128 		point_of_use_x		         =	p_point_of_use_x,
129 		point_of_use_y		         =	p_point_of_use_y,
130 	 point_of_supply_x	       =	p_point_of_supply_x,
131   point_of_supply_y        =	p_point_of_supply_y,
132 	 planning_update_status   =	p_planning_update_status,
133 		auto_request             =       p_auto_request,
134 		Auto_Allocate_Flag       =       p_Auto_Allocate_Flag,
135 		--eKanban Changes
136 		replenishment_type       =       p_replenishment_type,
137 		future_card_size         =       p_future_card_size,
138 		future_no_of_cards       =       p_future_no_of_cards,
139 		planning_effectivity     =       p_planning_effectivity,
140 		consolidation            =       p_consolidation,
141 		consolidation_group      =       p_consolidation_group,
142 		avg_dependent_demand     =       p_avg_dependent_demand,
143   avg_independent_demand   =       p_avg_independent_demand,
144   last_implemented_plan    =       p_last_imp_plan,
145   plan_start_date          =       p_imp_plan_start_date,
146   plan_end_date            =       p_imp_plan_end_date,
147   no_of_temp_cards         =       p_no_of_temp_card,
148   no_of_temp_cycles        =       p_no_of_temp_cycle,
149   temp_expiry_date         =       p_temp_exp_date
150     WHERE pull_sequence_id = p_pull_sequence_id;
151 
152     if (SQL%NOTFOUND) then
153       Raise NO_DATA_FOUND;
154     end if;
155     x_return_status := l_return_status;
156 
157 --raising business event for pullSequenceUpdation when ekanban is enabled
158     if nvl(fnd_profile.VALUE('FLM_EKB_OPS_FLAG'),0) = 1 then
159         FLM_EKB_BUSINESS_EVENT_PKG.Raise_Pull_Sequence_Event(p_pull_Sequence_id => p_pull_sequence_id,
160                                                                 p_txn_type => 2,
161                                                                 p_from_planning => 'N',
162                                                                 x_msg_data   =>l_msg_data,
163                                                                 x_return_status =>l_return_status);
164 
165 
166    end if;
167 EXCEPTION
168 
169     WHEN FND_API.G_EXC_ERROR THEN
170 
171         x_return_status := FND_API.G_RET_STS_ERROR;
172 
173     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
174 
175         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
176 
177     WHEN OTHERS THEN
178 
179         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
180         THEN
181             FND_MSG_PUB.Add_Exc_Msg
182             (   G_PKG_NAME
183             ,   'Update_Row'
184             );
185         END IF;
186 
187         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
188 
189 END Update_Row;
190 
191 PROCEDURE   Insert_Row(x_return_status        OUT NOCOPY    Varchar2,
192                        p_pull_sequence_id     IN Out NOCOPY NUMBER,
193                        p_Inventory_item_id              NUMBER,
194                        p_Organization_id       		NUMBER,
195                        p_Subinventory_name              VARCHAR2,
196                        p_Kanban_Plan_id       		NUMBER,
197                        p_Source_type           		NUMBER,
198                        p_Last_Update_Date               DATE,
199                        p_Last_Updated_By                NUMBER,
200                        p_Creation_Date                  DATE,
201                        p_Created_By                     NUMBER,
202                        p_Last_Update_Login              NUMBER,
203                        p_Locator_id              	NUMBER,
204                        p_Supplier_id           		NUMBER,
205                        p_Supplier_site_id      		NUMBER,
206                        p_Source_Organization_id		NUMBER,
207                        p_Source_Subinventory            VARCHAR2,
208                        p_Source_Locator_id		NUMBER,
209                        p_Wip_Line_id		        NUMBER,
210                        p_Release_Kanban_Flag 		NUMBER,
211                        p_Calculate_Kanban_Flag 		NUMBER,
212                        p_Kanban_size        		NUMBER,
213                        p_Number_of_cards       		NUMBER,
214                        p_Minimum_order_quantity		NUMBER,
215                        p_Aggregation_type		NUMBER,
216                        p_Allocation_Percent		NUMBER,
217                        p_Replenishment_lead_time        NUMBER,
218                        p_Fixed_Lot_multiplier           NUMBER,
219                        p_Safety_Stock_Days              NUMBER,
220                        p_Updated_Flag          		NUMBER,
221                        p_Attribute_Category             VARCHAR2,
222                        p_Attribute1                     VARCHAR2,
223                        p_Attribute2                     VARCHAR2,
224                        p_Attribute3                     VARCHAR2,
225                        p_Attribute4                     VARCHAR2,
226                        p_Attribute5                     VARCHAR2,
227                        p_Attribute6                     VARCHAR2,
228                        p_Attribute7                     VARCHAR2,
229                        p_Attribute8                     VARCHAR2,
230                        p_Attribute9                     VARCHAR2,
231                        p_Attribute10                    VARCHAR2,
232                        p_Attribute11                    VARCHAR2,
233                        p_Attribute12                    VARCHAR2,
234                        p_Attribute13                    VARCHAR2,
235                        p_Attribute14                    VARCHAR2,
236                        p_Attribute15                    VARCHAR2,
237                        p_Request_Id        		NUMBER,
238                        p_Program_application_Id		NUMBER,
239                        p_Program_Id        		NUMBER,
240                        p_Program_Update_date        	DATE,
241 		       p_point_of_use_x			NUMBER DEFAULT NULL,
242 	               p_point_of_use_y			NUMBER DEFAULT NULL,
243 		       p_point_of_supply_x		NUMBER DEFAULT NULL,
244 	               p_point_of_supply_y		NUMBER DEFAULT NULL,
245 		       p_planning_update_status		NUMBER DEFAULT NULL,
246 		       p_auto_request                   VARCHAR2 DEFAULT NULL,
247                        p_Auto_Allocate_Flag  NUMBER DEFAULT NULL,  --Bug3905884
248                        --eKanban Changes
249 		       p_replenishment_type             NUMBER DEFAULT NULL,
250 		       p_future_card_size               NUMBER DEFAULT NULL,
251 		       p_future_no_of_cards             NUMBER DEFAULT NULL,
252 		       p_planning_effectivity           DATE   DEFAULT NULL,
253 		       p_consolidation                  NUMBER DEFAULT NULL,
254 		       p_consolidation_group            VARCHAR2 DEFAULT NULL,
255 		       p_avg_dependent_demand           NUMBER DEFAULT NULL,
256 		       p_avg_independent_demand         NUMBER DEFAULT NULL,
257          p_last_imp_plan                  VARCHAR2 DEFAULT NULL,
258          p_imp_plan_start_date            DATE DEFAULT NULL,
259          p_imp_plan_end_date              DATE DEFAULT NULL,
260          p_no_of_temp_card                NUMBER DEFAULT NULL,
261          p_no_of_temp_cycle               NUMBER DEFAULT NULL,
262          p_temp_exp_date                  DATE DEFAULT NULL)
263 
264    is
265    l_pull_sequence_Id     MTL_Kanban_Pull_Sequences.Pull_Sequence_Id%Type;
266    l_return_status        Varchar2(1) := FND_API.G_RET_STS_SUCCESS;
267    --add for Ekanban business event
268    l_msg_data    VARCHAR2(1000);
269 BEGIN
270        FND_MSG_PUB.Initialize;
271        If nvl(p_Pull_sequence_Id,0) <= 0
272        Then
273        	Select MTL_KANBAN_PULL_SEQUENCES_S.NEXTVAL
274        	into l_pull_sequence_Id
275        	from dual;
276        Else
277         l_pull_sequence_Id := p_Pull_sequence_Id;
278        End If;
279 
280        INSERT INTO MTL_KANBAN_PULL_SEQUENCES
281              (
282               Pull_sequence_id,
283               Inventory_item_id,
284               Organization_id,
285               Subinventory_name,
286               Kanban_Plan_id,
287               Source_type,
288               Last_Update_Date,
289               Last_Updated_By,
290               Creation_Date,
291               Created_By,
292               Last_Update_Login,
293               Locator_id,
294               Supplier_id,
295               Supplier_site_id,
296               Source_Organization_id,
297               Source_Subinventory,
298               Source_Locator_id,
299               Wip_Line_id,
300               Release_Kanban_flag,
301               Calculate_Kanban_flag,
302               Kanban_size,
303               Number_of_cards,
304               Minimum_order_quantity,
305               Aggregation_type,
306               Allocation_Percent,
307               Replenishment_lead_time,
308               Fixed_Lot_multiplier,
309               Safety_Stock_Days,
310               Updated_Flag,
311               Attribute_Category,
312               Attribute1,
313               Attribute2,
314               Attribute3,
315               Attribute4,
316               Attribute5,
317               Attribute6,
318               Attribute7,
319               Attribute8,
320               Attribute9,
321               Attribute10,
322               Attribute11,
323               Attribute12,
324               Attribute13,
325               Attribute14,
326               Attribute15,
327               Request_Id,
328               Program_application_Id,
329               Program_Id,
330               Program_Update_date,
331               point_of_use_x,
332               point_of_use_y,
333 	      point_of_supply_x,
334               point_of_supply_y,
335 	      planning_update_status,
336 	      auto_request,
337               Auto_Allocate_Flag, --Bug3905884
338               --eKanban Changes
339 	      replenishment_type,
340 	      future_card_size,
341 	      future_no_of_cards,
342 	      planning_effectivity,
343 	      consolidation,
344 	      consolidation_group,
345 	      avg_dependent_demand,
346 	      avg_independent_demand,
347        last_implemented_plan,
348        plan_start_date,
349        plan_end_date,
350        no_of_temp_cards,
351        no_of_temp_cycles,
352        temp_expiry_date)
353         Values
354               (
355               l_Pull_sequence_id,
356               p_Inventory_item_id,
357               p_Organization_id,
358               p_Subinventory_name,
359               p_Kanban_Plan_id,
360               p_Source_type,
361               p_Last_Update_Date,
362               p_Last_Updated_By,
363               p_Creation_Date,
364               p_Created_By,
365               p_Last_Update_Login,
366               p_Locator_id,
367               p_Supplier_id,
368               p_Supplier_site_id,
369               p_Source_Organization_id,
370               p_Source_Subinventory,
371               p_Source_Locator_id,
372               p_Wip_Line_id,
373               p_Release_Kanban_flag,
374               p_Calculate_Kanban_flag,
375               p_Kanban_size,
376               p_Number_of_cards,
377               p_Minimum_order_quantity,
378               p_Aggregation_type,
379               p_Allocation_Percent,
380               p_Replenishment_lead_time,
381               p_Fixed_Lot_multiplier,
382               p_Safety_Stock_Days,
383               p_Updated_Flag,
384               p_Attribute_Category,
385               p_Attribute1,
386               p_Attribute2,
387               p_Attribute3,
388               p_Attribute4,
389               p_Attribute5,
390               p_Attribute6,
391               p_Attribute7,
392               p_Attribute8,
393               p_Attribute9,
394               p_Attribute10,
395               p_Attribute11,
396               p_Attribute12,
397               p_Attribute13,
398               p_Attribute14,
399               p_Attribute15,
400               p_Request_Id,
401               p_Program_application_Id,
402               p_Program_Id,
403               p_Program_Update_Date,
404 	      p_point_of_use_x,
405 	      p_point_of_use_y,
406 	      p_point_of_supply_x,
407               p_point_of_supply_y,
408 	      p_planning_update_status,
409 	      p_auto_request,
410               p_Auto_Allocate_Flag, --Bug3905884
411               --eKanban Changes
412 	      p_replenishment_type,
413 	      p_future_card_size,
414 	      p_future_no_of_cards,
415 	      p_planning_effectivity,
416 	      p_consolidation,
417 	      p_consolidation_group,
418 	      p_avg_dependent_demand,
419 	      p_avg_independent_demand,
420        p_last_imp_plan,
421        p_imp_plan_start_date,
422        p_imp_plan_end_date,
423        p_no_of_temp_card,
424        p_no_of_temp_cycle,
425        p_temp_exp_date );
426 
427               p_pull_sequence_id := l_Pull_Sequence_id;
428 
429               x_return_status := l_return_status;
430 --raising business event for pullSequenceUpdation when ekanban is enabled
431     if nvl(fnd_profile.VALUE('FLM_EKB_OPS_FLAG'),0) = 1 then
432         FLM_EKB_BUSINESS_EVENT_PKG.Raise_Pull_Sequence_Event(p_pull_Sequence_id => l_Pull_sequence_id,
433                                                              p_txn_type => 1,
434                                                              x_msg_data   =>l_msg_data,
435                                                              x_return_status =>l_return_status);
436     end if;
437 EXCEPTION
438     WHEN FND_API.G_EXC_ERROR THEN
439 
440         x_return_status := FND_API.G_RET_STS_ERROR;
441 
442     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
443 
444         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
445 
446     WHEN OTHERS THEN
447         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
448         THEN
449             FND_MSG_PUB.Add_Exc_Msg
450             (   G_PKG_NAME
451             ,   'Insert_Row'
452             );
453         END IF;
454 
455         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
456 
457 End Insert_Row;
458 
459 
460 FUNCTION  Check_Unique( p_Pull_Sequence_Id IN OUT NOCOPY  NUMBER,
461                         p_Organization_Id          NUMBER,
462                         p_Kanban_Plan_Id           NUMBER,
463                         p_Inventory_item_id        NUMBER,
464                         p_Subinventory_Name        VARCHAR2,
465                         p_Locator_Id               NUMBER)
466 RETURN BOOLEAN IS
467     l_Dummy Varchar2(1);
468 BEGIN
469     Select 'x'
470     Into l_Dummy
471     From MTL_KANBAN_PULL_SEQUENCES
472     Where organization_id = p_Organization_Id
473     And   kanban_plan_id = p_kanban_plan_id
474     And   inventory_item_id = p_inventory_item_id
475     And   subinventory_name = p_Subinventory_Name
476     And   nvl(locator_id,-1)= nvl(p_locator_id,-1)
477     And ((p_Pull_Sequence_Id is NULL ) Or
478          (Pull_Sequence_Id <> p_Pull_Sequence_Id));
479 	Raise too_Many_Rows;
480 
481 Exception
482 When No_Data_found
483 Then
484 	return True;
485 When Too_Many_Rows
486 Then
487        FND_MESSAGE.SET_NAME('INV', 'INV_PULLSEQ_EXISTS');
488        Return FALSE;
489 When Others
490 Then
491         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
492         THEN
493             FND_MSG_PUB.Add_Exc_Msg
494             (   G_PKG_NAME
495             ,   'Check_Unique'
496             );
497         END IF;
498        Return FALSE;
499 
500 END Check_Unique;
501 
502 Procedure commit_row is
503 BEGIN
504    commit;
505 end commit_row;
506 
507 Procedure rollback_row is
508 BEGIN
509   rollback;
510 end rollback_row;
511 
512 FUNCTION Query_Row
513 (   p_pull_sequence_id              IN  NUMBER
514 ) RETURN INV_Kanban_PVT.Pull_Sequence_Rec_Type
515 IS
516 l_pull_sequence_rec           INV_Kanban_PVT.Pull_Sequence_Rec_Type;
517 BEGIN
518 
519     SELECT  PULL_SEQUENCE_ID
520     ,       INVENTORY_ITEM_ID
521     ,       ORGANIZATION_ID
522     ,       SUBINVENTORY_NAME
523     ,       KANBAN_PLAN_ID
524     ,       SOURCE_TYPE
525     ,       LAST_UPDATE_DATE
526     ,       LAST_UPDATED_BY
527     ,       CREATION_DATE
528     ,       CREATED_BY
529     ,       LOCATOR_ID
530     ,       SUPPLIER_ID
531     ,       SUPPLIER_SITE_ID
532     ,       SOURCE_ORGANIZATION_ID
533     ,       SOURCE_SUBINVENTORY
534     ,       SOURCE_LOCATOR_ID
535     ,       WIP_LINE_ID
536     ,       REPLENISHMENT_LEAD_TIME
537     ,       RELEASE_KANBAN_FLAG
538     ,       CALCULATE_KANBAN_FLAG
539     ,       KANBAN_SIZE
540     ,       FIXED_LOT_MULTIPLIER
541     ,       SAFETY_STOCK_DAYS
542     ,       NUMBER_OF_CARDS
543     ,       MINIMUM_ORDER_QUANTITY
544     ,       AGGREGATION_TYPE
545     ,       ALLOCATION_PERCENT
546     ,       LAST_UPDATE_LOGIN
547     ,       UPDATED_FLAG
548     ,       ATTRIBUTE_CATEGORY
549     ,       ATTRIBUTE1
550     ,       ATTRIBUTE2
551     ,       ATTRIBUTE3
552     ,       ATTRIBUTE4
553     ,       ATTRIBUTE5
554     ,       ATTRIBUTE6
555     ,       ATTRIBUTE7
556     ,       ATTRIBUTE8
557     ,       ATTRIBUTE9
558     ,       ATTRIBUTE10
559     ,       ATTRIBUTE11
560     ,       ATTRIBUTE12
561     ,       ATTRIBUTE13
562     ,       ATTRIBUTE14
563     ,       ATTRIBUTE15
564     ,       REQUEST_ID
565     ,       PROGRAM_APPLICATION_ID
566     ,       PROGRAM_ID
567     ,       PROGRAM_UPDATE_DATE
568     ,	    POINT_OF_USE_X
569     ,	    POINT_OF_USE_Y
570     ,	    POINT_OF_SUPPLY_X
571     ,       POINT_OF_SUPPLY_Y
572     ,	    PLANNING_UPDATE_STATUS
573     ,       AUTO_REQUEST
574     ,       AUTO_ALLOCATE_FLAG  --Added for 3905884
575     -- eKanban Changes
576     , REPLENISHMENT_TYPE
577     , FUTURE_CARD_SIZE
578     , FUTURE_NO_OF_CARDS
579     , nvl(PLANNING_EFFECTIVITY,sysdate+1)
580     , CONSOLIDATION
581     , CONSOLIDATION_GROUP
582     , AVG_DEPENDENT_DEMAND
583     , AVG_INDEPENDENT_DEMAND
584     INTO    l_pull_sequence_rec.pull_sequence_id
585     ,       l_pull_sequence_rec.inventory_item_id
586     ,       l_pull_sequence_rec.organization_id
587     ,       l_pull_sequence_rec.subinventory_name
588     ,       l_pull_sequence_rec.Kanban_plan_id
589     ,       l_pull_sequence_rec.source_type
590     ,       l_pull_sequence_rec.last_update_date
591     ,       l_pull_sequence_rec.last_updated_by
592     ,       l_pull_sequence_rec.creation_date
593     ,       l_pull_sequence_rec.created_by
594     ,       l_pull_sequence_rec.locator_id
595     ,       l_pull_sequence_rec.supplier_id
596     ,       l_pull_sequence_rec.supplier_site_id
597     ,       l_pull_sequence_rec.source_organization_id
598     ,       l_pull_sequence_rec.source_subinventory
599     ,       l_pull_sequence_rec.source_locator_id
600     ,       l_pull_sequence_rec.Wip_line_id
601     ,       l_pull_sequence_rec.replenishment_lead_time
602     ,       l_pull_sequence_rec.Release_Kanban_Flag
603     ,       l_pull_sequence_rec.Calculate_Kanban_Flag
604     ,       l_pull_sequence_rec.kanban_size
605     ,       l_pull_sequence_rec.fixed_lot_multiplier
606     ,       l_pull_sequence_rec.safety_stock_days
607     ,       l_pull_sequence_rec.number_of_cards
608     ,       l_pull_sequence_rec.minimum_order_quantity
609     ,       l_pull_sequence_rec.aggregation_Type
610     ,       l_pull_sequence_rec.Allocation_Percent
611     ,       l_pull_sequence_rec.last_update_login
612     ,       l_pull_sequence_rec.updated_flag
613     ,       l_pull_sequence_rec.attribute_category
614     ,       l_pull_sequence_rec.attribute1
615     ,       l_pull_sequence_rec.attribute2
616     ,       l_pull_sequence_rec.attribute3
617     ,       l_pull_sequence_rec.attribute4
618     ,       l_pull_sequence_rec.attribute5
619     ,       l_pull_sequence_rec.attribute6
620     ,       l_pull_sequence_rec.attribute7
621     ,       l_pull_sequence_rec.attribute8
622     ,       l_pull_sequence_rec.attribute9
623     ,       l_pull_sequence_rec.attribute10
624     ,       l_pull_sequence_rec.attribute11
625     ,       l_pull_sequence_rec.attribute12
626     ,       l_pull_sequence_rec.attribute13
627     ,       l_pull_sequence_rec.attribute14
628     ,       l_pull_sequence_rec.attribute15
629     ,       l_pull_sequence_rec.request_id
630     ,       l_pull_sequence_rec.program_application_id
631     ,       l_pull_sequence_rec.program_id
632     ,       l_pull_sequence_rec.program_update_date
633     ,	    l_pull_sequence_rec.point_of_use_x
634     ,	    l_pull_sequence_rec.point_of_use_y
635     ,	    l_pull_sequence_rec.point_of_supply_x
636     ,       l_pull_sequence_rec.point_of_supply_y
637     ,       l_pull_sequence_rec.planning_update_status
638     ,       l_pull_sequence_rec.auto_request
639     ,       l_pull_sequence_rec.auto_allocate_flag  --Added for3905884
640     ,       l_pull_sequence_rec.REPLENISHMENT_TYPE
641     ,       l_pull_sequence_rec.FUTURE_CARD_SIZE
642     ,       l_pull_sequence_rec.FUTURE_NO_OF_CARDS
643     ,       l_pull_sequence_rec.PLANNING_EFFECTIVITY
644     ,       l_pull_sequence_rec.CONSOLIDATION
645     ,       l_pull_sequence_rec.CONSOLIDATION_GROUP
646     ,       l_pull_sequence_rec.AVG_DEPENDENT_DEMAND
647     ,       l_pull_sequence_rec.AVG_INDEPENDENT_DEMAND
648     FROM    MTL_KANBAN_PULL_SEQUENCES
649     WHERE   PULL_SEQUENCE_ID = p_pull_sequence_id  ;
650 
651     RETURN l_pull_sequence_rec;
652 
653 EXCEPTION
654 
655     WHEN OTHERS THEN
656 
657         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
658         THEN
659             FND_MSG_PUB.Add_Exc_Msg
660             (   G_PKG_NAME
661             ,   'Query_Row'
662             );
663         END IF;
664 
665         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
666 
667 END Query_Row;
668 
669 FUNCTION Convert_Miss_To_Null
670 (   p_pull_sequence_rec             IN  INV_Kanban_PVT.Pull_Sequence_Rec_Type
671 ) RETURN INV_Kanban_PVT.Pull_Sequence_Rec_Type
672 IS
673 l_pull_sequence_rec INV_Kanban_PVT.Pull_Sequence_Rec_Type := p_pull_sequence_rec;
674 BEGIN
675 
676     IF l_pull_sequence_rec.pull_sequence_id = FND_API.G_MISS_NUM THEN
677         l_pull_sequence_rec.pull_sequence_id := NULL;
678     END IF;
679 
680     IF l_pull_sequence_rec.inventory_item_id = FND_API.G_MISS_NUM THEN
681         l_pull_sequence_rec.inventory_item_id := NULL;
682     END IF;
683 
684     IF l_pull_sequence_rec.organization_id = FND_API.G_MISS_NUM THEN
685         l_pull_sequence_rec.organization_id := NULL;
686     END IF;
687 
688     IF l_pull_sequence_rec.subinventory_name = FND_API.G_MISS_CHAR THEN
689         l_pull_sequence_rec.subinventory_name := NULL;
690     END IF;
691 
692     IF l_pull_sequence_rec.kanban_plan_id = FND_API.G_MISS_NUM THEN
693         l_pull_sequence_rec.kanban_plan_id := NULL;
694     END IF;
695 
696     IF l_pull_sequence_rec.source_type = FND_API.G_MISS_NUM THEN
697         l_pull_sequence_rec.source_type := NULL;
698     END IF;
699 
700     IF l_pull_sequence_rec.last_update_date = FND_API.G_MISS_DATE THEN
701         l_pull_sequence_rec.last_update_date := NULL;
702     END IF;
703 
704     IF l_pull_sequence_rec.last_updated_by = FND_API.G_MISS_NUM THEN
705         l_pull_sequence_rec.last_updated_by := NULL;
706     END IF;
707 
708     IF l_pull_sequence_rec.creation_date = FND_API.G_MISS_DATE THEN
709         l_pull_sequence_rec.creation_date := NULL;
710     END IF;
711 
712     IF l_pull_sequence_rec.created_by = FND_API.G_MISS_NUM THEN
713         l_pull_sequence_rec.created_by := NULL;
714     END IF;
715 
716     IF l_pull_sequence_rec.last_update_login = FND_API.G_MISS_NUM THEN
717         l_pull_sequence_rec.last_update_login := NULL;
718     END IF;
719 
720     IF l_pull_sequence_rec.locator_id = FND_API.G_MISS_NUM THEN
721         l_pull_sequence_rec.locator_id := NULL;
722     END IF;
723 
724     IF l_pull_sequence_rec.supplier_id = FND_API.G_MISS_NUM THEN
725         l_pull_sequence_rec.supplier_id := NULL;
726     END IF;
727 
728     IF l_pull_sequence_rec.source_organization_id = FND_API.G_MISS_NUM THEN
729         l_pull_sequence_rec.source_organization_id := NULL;
730     END IF;
731 
732     IF l_pull_sequence_rec.source_subinventory = FND_API.G_MISS_CHAR THEN
733         l_pull_sequence_rec.source_subinventory := NULL;
734     END IF;
735 
736     IF l_pull_sequence_rec.source_locator_id = FND_API.G_MISS_NUM THEN
737         l_pull_sequence_rec.source_locator_id := NULL;
738     END IF;
739 
740     IF l_pull_sequence_rec.wip_line_id = FND_API.G_MISS_NUM THEN
741         l_pull_sequence_rec.wip_line_id := NULL;
742     END IF;
743 
744     IF l_pull_sequence_rec.release_kanban_flag = FND_API.G_MISS_NUM THEN
745         l_pull_sequence_rec.release_kanban_flag := NULL;
746     END IF;
747 
748     IF l_pull_sequence_rec.calculate_kanban_flag = FND_API.G_MISS_NUM THEN
749         l_pull_sequence_rec.calculate_kanban_flag := NULL;
750     END IF;
751 
752     IF l_pull_sequence_rec.kanban_size = FND_API.G_MISS_NUM THEN
753         l_pull_sequence_rec.kanban_size := NULL;
754     END IF;
755 
756     IF l_pull_sequence_rec.replenishment_lead_time = FND_API.G_MISS_NUM THEN
757         l_pull_sequence_rec.replenishment_lead_time := NULL;
758     END IF;
759 
760     IF l_pull_sequence_rec.fixed_lot_multiplier = FND_API.G_MISS_NUM THEN
761         l_pull_sequence_rec.fixed_lot_multiplier := NULL;
762     END IF;
763 
764     IF l_pull_sequence_rec.safety_stock_days = FND_API.G_MISS_NUM THEN
765         l_pull_sequence_rec.safety_stock_days := NULL;
766     END IF;
767 
768     IF l_pull_sequence_rec.number_of_cards = FND_API.G_MISS_NUM THEN
769         l_pull_sequence_rec.number_of_cards := NULL;
770     END IF;
771 
772     IF l_pull_sequence_rec.minimum_order_quantity = FND_API.G_MISS_NUM THEN
773         l_pull_sequence_rec.minimum_order_quantity := NULL;
774     END IF;
775 
776     IF l_pull_sequence_rec.aggregation_type = FND_API.G_MISS_NUM THEN
777         l_pull_sequence_rec.aggregation_type := NULL;
778     END IF;
779 
780     IF l_pull_sequence_rec.allocation_percent = FND_API.G_MISS_NUM THEN
781         l_pull_sequence_rec.allocation_percent := NULL;
782     END IF;
783 
784     IF l_pull_sequence_rec.last_update_login = FND_API.G_MISS_NUM THEN
785         l_pull_sequence_rec.last_update_login := NULL;
786     END IF;
787 
788     IF l_pull_sequence_rec.updated_flag = FND_API.G_MISS_NUM THEN
789         l_pull_sequence_rec.updated_flag := NULL;
790     END IF;
791 
792     IF l_pull_sequence_rec.attribute_category = FND_API.G_MISS_CHAR THEN
793         l_pull_sequence_rec.attribute_category := NULL;
794     END IF;
795 
796     IF l_pull_sequence_rec.attribute1 = FND_API.G_MISS_CHAR THEN
797         l_pull_sequence_rec.attribute1 := NULL;
798     END IF;
799 
800     IF l_pull_sequence_rec.attribute2 = FND_API.G_MISS_CHAR THEN
801         l_pull_sequence_rec.attribute2 := NULL;
802     END IF;
803 
804     IF l_pull_sequence_rec.attribute3 = FND_API.G_MISS_CHAR THEN
805         l_pull_sequence_rec.attribute3 := NULL;
806     END IF;
807 
808     IF l_pull_sequence_rec.attribute4 = FND_API.G_MISS_CHAR THEN
809         l_pull_sequence_rec.attribute4 := NULL;
810     END IF;
811 
812     IF l_pull_sequence_rec.attribute5 = FND_API.G_MISS_CHAR THEN
813         l_pull_sequence_rec.attribute5 := NULL;
814     END IF;
815 
816     IF l_pull_sequence_rec.attribute6 = FND_API.G_MISS_CHAR THEN
817         l_pull_sequence_rec.attribute6 := NULL;
818     END IF;
819 
820     IF l_pull_sequence_rec.attribute7 = FND_API.G_MISS_CHAR THEN
821         l_pull_sequence_rec.attribute7 := NULL;
822     END IF;
823 
824     IF l_pull_sequence_rec.attribute8 = FND_API.G_MISS_CHAR THEN
825         l_pull_sequence_rec.attribute8 := NULL;
826     END IF;
827 
828     IF l_pull_sequence_rec.attribute9 = FND_API.G_MISS_CHAR THEN
829         l_pull_sequence_rec.attribute9 := NULL;
830     END IF;
831 
832     IF l_pull_sequence_rec.attribute10 = FND_API.G_MISS_CHAR THEN
833         l_pull_sequence_rec.attribute10 := NULL;
834     END IF;
835 
836     IF l_pull_sequence_rec.attribute11 = FND_API.G_MISS_CHAR THEN
837         l_pull_sequence_rec.attribute11 := NULL;
838     END IF;
839 
840     IF l_pull_sequence_rec.attribute12 = FND_API.G_MISS_CHAR THEN
841         l_pull_sequence_rec.attribute12 := NULL;
842     END IF;
843 
844     IF l_pull_sequence_rec.attribute13 = FND_API.G_MISS_CHAR THEN
845         l_pull_sequence_rec.attribute13 := NULL;
846     END IF;
847 
848     IF l_pull_sequence_rec.attribute14 = FND_API.G_MISS_CHAR THEN
849         l_pull_sequence_rec.attribute14 := NULL;
850     END IF;
851 
852     IF l_pull_sequence_rec.attribute15 = FND_API.G_MISS_CHAR THEN
853         l_pull_sequence_rec.attribute15 := NULL;
854     END IF;
855 
856     IF l_pull_sequence_rec.request_id = FND_API.G_MISS_NUM THEN
857         l_pull_sequence_rec.request_id := NULL;
858     END IF;
859 
860     IF l_pull_sequence_rec.program_application_id = FND_API.G_MISS_NUM THEN
861         l_pull_sequence_rec.program_application_id := NULL;
862     END IF;
863 
864     IF l_pull_sequence_rec.program_id = FND_API.G_MISS_NUM THEN
865         l_pull_sequence_rec.program_id := NULL;
866     END IF;
867 
868     IF l_pull_sequence_rec.program_update_date = FND_API.G_MISS_DATE THEN
869         l_pull_sequence_rec.program_update_date := NULL;
870     END IF;
871 
872     IF l_pull_sequence_rec.point_of_use_x= FND_API.G_MISS_NUM THEN
873         l_pull_sequence_rec.point_of_use_x := NULL;
874     END IF;
875 
876     IF l_pull_sequence_rec.point_of_use_y = FND_API.G_MISS_NUM THEN
877         l_pull_sequence_rec.point_of_use_y := NULL;
878     END IF;
879 
880     IF l_pull_sequence_rec.point_of_supply_x = FND_API.G_MISS_NUM THEN
881         l_pull_sequence_rec.point_of_supply_x := NULL;
882     END IF;
883 
884     IF l_pull_sequence_rec.point_of_supply_y = FND_API.G_MISS_NUM THEN
885         l_pull_sequence_rec.point_of_supply_y := NULL;
886     END IF;
887 
888     IF l_pull_sequence_rec.planning_update_status = FND_API.G_MISS_NUM THEN
889         l_pull_sequence_rec.planning_update_status := NULL;
890     END IF;
891 
892     IF l_pull_sequence_rec.auto_request = FND_API.G_MISS_CHAR THEN
893         l_pull_sequence_rec.auto_request := NULL;
894     END IF;
895 
896     /*Added the following IF statement for 3905884.*/
897     IF l_pull_sequence_rec.auto_allocate_flag = FND_API.G_MISS_NUM THEN
898         l_pull_sequence_rec.auto_allocate_flag := NULL;
899     END IF;
900 
901     RETURN l_pull_sequence_rec;
902 
903 END Convert_Miss_To_Null;
904 
905 FUNCTION Complete_Record
906 (   p_pull_sequence_rec             IN  INV_Kanban_PVT.Pull_Sequence_Rec_Type
907 ,   p_old_pull_sequence_rec         IN  INV_Kanban_PVT.Pull_Sequence_Rec_Type
908 ) RETURN INV_Kanban_PVT.Pull_Sequence_Rec_Type
909 IS
910 l_pull_sequence_rec INV_Kanban_PVT.Pull_Sequence_Rec_Type := p_pull_sequence_rec;
911 BEGIN
912 
913     IF l_pull_sequence_rec.pull_sequence_id = FND_API.G_MISS_NUM THEN
914         l_pull_sequence_rec.pull_sequence_id := p_old_pull_sequence_rec.pull_sequence_id;
915     END IF;
916 
917     IF l_pull_sequence_rec.inventory_item_id = FND_API.G_MISS_NUM THEN
918         l_pull_sequence_rec.inventory_item_id := p_old_pull_sequence_rec.inventory_item_id;
919     END IF;
920 
921     IF l_pull_sequence_rec.organization_id = FND_API.G_MISS_NUM THEN
922         l_pull_sequence_rec.organization_id := p_old_pull_sequence_rec.organization_id;
923     END IF;
924 
925     IF l_pull_sequence_rec.subinventory_name = FND_API.G_MISS_CHAR THEN
926         l_pull_sequence_rec.subinventory_name := p_old_pull_sequence_rec.subinventory_name;
927     END IF;
928 
929     IF l_pull_sequence_rec.Kanban_plan_id = FND_API.G_MISS_NUM THEN
930         l_pull_sequence_rec.Kanban_plan_id := p_old_pull_sequence_rec.Kanban_plan_id;
931     END IF;
932 
933     IF l_pull_sequence_rec.source_type = FND_API.G_MISS_NUM THEN
934         l_pull_sequence_rec.source_type := p_old_pull_sequence_rec.source_type;
935     END IF;
936 
937     IF l_pull_sequence_rec.last_update_date = FND_API.G_MISS_DATE THEN
938         l_pull_sequence_rec.last_update_date := p_old_pull_sequence_rec.last_update_date;
939     END IF;
940 
941     IF l_pull_sequence_rec.last_updated_by = FND_API.G_MISS_NUM THEN
942         l_pull_sequence_rec.last_updated_by := p_old_pull_sequence_rec.last_updated_by;
943     END IF;
944 
945     IF l_pull_sequence_rec.creation_date = FND_API.G_MISS_DATE THEN
946         l_pull_sequence_rec.creation_date := p_old_pull_sequence_rec.creation_date;
947     END IF;
948 
949     IF l_pull_sequence_rec.created_by = FND_API.G_MISS_NUM THEN
950         l_pull_sequence_rec.created_by := p_old_pull_sequence_rec.created_by;
951     END IF;
952 
953     IF l_pull_sequence_rec.locator_id = FND_API.G_MISS_NUM THEN
954         l_pull_sequence_rec.locator_id := p_old_pull_sequence_rec.locator_id;
955     END IF;
956 
957     IF l_pull_sequence_rec.supplier_id = FND_API.G_MISS_NUM THEN
958         l_pull_sequence_rec.supplier_id := p_old_pull_sequence_rec.supplier_id;
959     END IF;
960 
961     IF l_pull_sequence_rec.supplier_site_id = FND_API.G_MISS_NUM THEN
962         l_pull_sequence_rec.supplier_site_id := p_old_pull_sequence_rec.supplier_site_id;
963     END IF;
964 
965     IF l_pull_sequence_rec.source_organization_id = FND_API.G_MISS_NUM THEN
966         l_pull_sequence_rec.source_organization_id := p_old_pull_sequence_rec.source_organization_id;
967     END IF;
968 
969     IF l_pull_sequence_rec.source_subinventory = FND_API.G_MISS_CHAR THEN
970         l_pull_sequence_rec.source_subinventory := p_old_pull_sequence_rec.source_subinventory;
971     END IF;
972 
973     IF l_pull_sequence_rec.source_locator_id = FND_API.G_MISS_NUM THEN
974         l_pull_sequence_rec.source_locator_id := p_old_pull_sequence_rec.source_locator_id;
975     END IF;
976 
977     IF l_pull_sequence_rec.wip_line_id = FND_API.G_MISS_NUM THEN
978         l_pull_sequence_rec.wip_line_id := p_old_pull_sequence_rec.wip_line_id;
979     END IF;
980 
981     IF l_pull_sequence_rec.replenishment_lead_time = FND_API.G_MISS_NUM THEN
982         l_pull_sequence_rec.replenishment_lead_time := p_old_pull_sequence_rec.replenishment_lead_time;
983     END IF;
984 
985     IF l_pull_sequence_rec.Release_Kanban_Flag = FND_API.G_MISS_NUM THEN
986         l_pull_sequence_rec.Release_Kanban_Flag := p_old_pull_sequence_rec.Release_Kanban_Flag;
987 
988     END IF;
989     IF l_pull_sequence_rec.Calculate_Kanban_Flag = FND_API.G_MISS_NUM THEN
990         l_pull_sequence_rec.Calculate_Kanban_Flag := p_old_pull_sequence_rec.Calculate_Kanban_Flag;
991     END IF;
992 
993     IF l_pull_sequence_rec.kanban_size = FND_API.G_MISS_NUM THEN
994         l_pull_sequence_rec.kanban_size := p_old_pull_sequence_rec.kanban_size;
995     END IF;
996 
997     IF l_pull_sequence_rec.fixed_lot_multiplier = FND_API.G_MISS_NUM THEN
998         l_pull_sequence_rec.fixed_lot_multiplier := p_old_pull_sequence_rec.fixed_lot_multiplier;
999     END IF;
1000 
1001     IF l_pull_sequence_rec.safety_stock_days = FND_API.G_MISS_NUM THEN
1002         l_pull_sequence_rec.safety_stock_days := p_old_pull_sequence_rec.safety_stock_days;
1003     END IF;
1004 
1005     IF l_pull_sequence_rec.number_of_cards = FND_API.G_MISS_NUM THEN
1006         l_pull_sequence_rec.number_of_cards := p_old_pull_sequence_rec.number_of_cards;
1007     END IF;
1008 
1009     IF l_pull_sequence_rec.minimum_order_quantity = FND_API.G_MISS_NUM THEN
1010         l_pull_sequence_rec.minimum_order_quantity := p_old_pull_sequence_rec.minimum_order_quantity;
1011     END IF;
1012 
1013     IF l_pull_sequence_rec.aggregation_type = FND_API.G_MISS_NUM THEN
1014         l_pull_sequence_rec.aggregation_type := p_old_pull_sequence_rec.aggregation_type;
1015     END IF;
1016 
1017     IF l_pull_sequence_rec.Allocation_Percent = FND_API.G_MISS_NUM THEN
1018         l_pull_sequence_rec.Allocation_Percent := p_old_pull_sequence_rec.Allocation_Percent;
1019     END IF;
1020 
1021     IF l_pull_sequence_rec.last_update_login = FND_API.G_MISS_NUM THEN
1022         l_pull_sequence_rec.last_update_login := p_old_pull_sequence_rec.last_update_login;
1023     END IF;
1024 
1025     IF l_pull_sequence_rec.updated_flag = FND_API.G_MISS_NUM THEN
1026         l_pull_sequence_rec.updated_flag := p_old_pull_sequence_rec.updated_flag;
1027     END IF;
1028 
1029     IF l_pull_sequence_rec.attribute_category = FND_API.G_MISS_CHAR THEN
1030         l_pull_sequence_rec.attribute_category := p_old_pull_sequence_rec.attribute_category;
1031     END IF;
1032 
1033     IF l_pull_sequence_rec.attribute1 = FND_API.G_MISS_CHAR THEN
1034         l_pull_sequence_rec.attribute1 := p_old_pull_sequence_rec.attribute1;
1035     END IF;
1036 
1037     IF l_pull_sequence_rec.attribute2 = FND_API.G_MISS_CHAR THEN
1038         l_pull_sequence_rec.attribute2 := p_old_pull_sequence_rec.attribute2;
1039     END IF;
1040 
1041     IF l_pull_sequence_rec.attribute3 = FND_API.G_MISS_CHAR THEN
1042         l_pull_sequence_rec.attribute3 := p_old_pull_sequence_rec.attribute3;
1043     END IF;
1044 
1045     IF l_pull_sequence_rec.attribute4 = FND_API.G_MISS_CHAR THEN
1046         l_pull_sequence_rec.attribute4 := p_old_pull_sequence_rec.attribute4;
1047     END IF;
1048 
1049     IF l_pull_sequence_rec.attribute5 = FND_API.G_MISS_CHAR THEN
1050         l_pull_sequence_rec.attribute5 := p_old_pull_sequence_rec.attribute5;
1051     END IF;
1052 
1053     IF l_pull_sequence_rec.attribute6 = FND_API.G_MISS_CHAR THEN
1054         l_pull_sequence_rec.attribute6 := p_old_pull_sequence_rec.attribute6;
1055     END IF;
1056 
1057     IF l_pull_sequence_rec.attribute7 = FND_API.G_MISS_CHAR THEN
1058         l_pull_sequence_rec.attribute7 := p_old_pull_sequence_rec.attribute7;
1059     END IF;
1060 
1061     IF l_pull_sequence_rec.attribute8 = FND_API.G_MISS_CHAR THEN
1062         l_pull_sequence_rec.attribute8 := p_old_pull_sequence_rec.attribute8;
1063     END IF;
1064 
1065     IF l_pull_sequence_rec.attribute9 = FND_API.G_MISS_CHAR THEN
1066         l_pull_sequence_rec.attribute9 := p_old_pull_sequence_rec.attribute9;
1067     END IF;
1068 
1069     IF l_pull_sequence_rec.attribute10 = FND_API.G_MISS_CHAR THEN
1070         l_pull_sequence_rec.attribute10 := p_old_pull_sequence_rec.attribute10;
1071     END IF;
1072 
1073     IF l_pull_sequence_rec.attribute11 = FND_API.G_MISS_CHAR THEN
1074         l_pull_sequence_rec.attribute11 := p_old_pull_sequence_rec.attribute11;
1075     END IF;
1076 
1077     IF l_pull_sequence_rec.attribute12 = FND_API.G_MISS_CHAR THEN
1078         l_pull_sequence_rec.attribute12 := p_old_pull_sequence_rec.attribute12;
1079     END IF;
1080 
1081     IF l_pull_sequence_rec.attribute13 = FND_API.G_MISS_CHAR THEN
1082         l_pull_sequence_rec.attribute13 := p_old_pull_sequence_rec.attribute13;
1083     END IF;
1084 
1085     IF l_pull_sequence_rec.attribute14 = FND_API.G_MISS_CHAR THEN
1086         l_pull_sequence_rec.attribute14 := p_old_pull_sequence_rec.attribute14;
1087     END IF;
1088 
1089     IF l_pull_sequence_rec.attribute15 = FND_API.G_MISS_CHAR THEN
1090         l_pull_sequence_rec.attribute15 := p_old_pull_sequence_rec.attribute15;
1091     END IF;
1092 
1093     IF l_pull_sequence_rec.request_id = FND_API.G_MISS_NUM THEN
1094         l_pull_sequence_rec.request_id := p_old_pull_sequence_rec.request_id;
1095     END IF;
1096 
1097     IF l_pull_sequence_rec.program_application_id = FND_API.G_MISS_NUM THEN
1098         l_pull_sequence_rec.program_application_id := p_old_pull_sequence_rec.program_application_id;
1099     END IF;
1100 
1101     IF l_pull_sequence_rec.program_id = FND_API.G_MISS_NUM THEN
1102         l_pull_sequence_rec.program_id := p_old_pull_sequence_rec.program_id;
1103     END IF;
1104 
1105     IF l_pull_sequence_rec.program_update_date = FND_API.G_MISS_DATE THEN
1106         l_pull_sequence_rec.program_update_date := p_old_pull_sequence_rec.program_update_date;
1107     END IF;
1108 
1109     IF l_pull_sequence_rec.point_of_use_x = FND_API.G_MISS_NUM THEN
1110         l_pull_sequence_rec.point_of_use_x := p_old_pull_sequence_rec.point_of_use_x;
1111     END IF;
1112 
1113     IF l_pull_sequence_rec.point_of_use_y = FND_API.G_MISS_NUM THEN
1114         l_pull_sequence_rec.point_of_use_y := p_old_pull_sequence_rec.point_of_use_y;
1115     END IF;
1116 
1117     IF l_pull_sequence_rec.point_of_supply_x = FND_API.G_MISS_NUM THEN
1118         l_pull_sequence_rec.point_of_supply_x := p_old_pull_sequence_rec.point_of_supply_x;
1119     END IF;
1120 
1121     IF l_pull_sequence_rec.point_of_supply_y = FND_API.G_MISS_NUM THEN
1122         l_pull_sequence_rec.point_of_supply_y := p_old_pull_sequence_rec.point_of_supply_y;
1123     END IF;
1124 
1125     IF l_pull_sequence_rec.planning_update_status = FND_API.G_MISS_NUM THEN
1126         l_pull_sequence_rec.planning_update_status := p_old_pull_sequence_rec.planning_update_status;
1127     END IF;
1128 
1129     IF l_pull_sequence_rec.auto_request = FND_API.G_MISS_CHAR THEN
1130         l_pull_sequence_rec.auto_request := p_old_pull_sequence_rec.auto_request;
1131     END IF;
1132 
1133     /*Added the following IF statement for 3905884.*/
1134     IF l_pull_sequence_rec.auto_allocate_flag = FND_API.G_MISS_NUM THEN
1135        l_pull_sequence_rec.auto_allocate_flag := p_old_pull_sequence_rec.auto_allocate_flag;
1136     END IF;
1137 
1138     RETURN l_pull_sequence_rec;
1139 
1140 END Complete_Record;
1141 /*
1142 PROCEDURE   Insert_Row(x_return_status        OUT NOCOPY    Varchar2,
1143                        p_pull_sequence_id     IN Out NOCOPY NUMBER,
1144                        p_Inventory_item_id              NUMBER,
1145                        p_Organization_id       		NUMBER,
1146                        p_Subinventory_name              VARCHAR2,
1147                        p_Kanban_Plan_id       		NUMBER,
1148                        p_Source_type           		NUMBER,
1149                        p_Last_Update_Date               DATE,
1150                        p_Last_Updated_By                NUMBER,
1151                        p_Creation_Date                  DATE,
1152                        p_Created_By                     NUMBER,
1153                        p_Last_Update_Login              NUMBER,
1154                        p_Locator_id              	NUMBER,
1155                        p_Supplier_id           		NUMBER,
1156                        p_Supplier_site_id      		NUMBER,
1157                        p_Source_Organization_id		NUMBER,
1158                        p_Source_Subinventory            VARCHAR2,
1159                        p_Source_Locator_id		NUMBER,
1160                        p_Wip_Line_id		        NUMBER,
1161                        p_Release_Kanban_Flag 		NUMBER,
1162                        p_Calculate_Kanban_Flag 		NUMBER,
1163                        p_Kanban_size        		NUMBER,
1164                        p_Number_of_cards       		NUMBER,
1165                        p_Minimum_order_quantity		NUMBER,
1166                        p_Aggregation_type		NUMBER,
1167                        p_Allocation_Percent		NUMBER,
1168                        p_Replenishment_lead_time        NUMBER,
1169                        p_Fixed_Lot_multiplier           NUMBER,
1170                        p_Safety_Stock_Days              NUMBER,
1171                        p_Updated_Flag          		NUMBER,
1172                        p_Attribute_Category             VARCHAR2,
1173                        p_Attribute1                     VARCHAR2,
1174                        p_Attribute2                     VARCHAR2,
1175                        p_Attribute3                     VARCHAR2,
1176                        p_Attribute4                     VARCHAR2,
1177                        p_Attribute5                     VARCHAR2,
1178                        p_Attribute6                     VARCHAR2,
1179                        p_Attribute7                     VARCHAR2,
1180                        p_Attribute8                     VARCHAR2,
1181                        p_Attribute9                     VARCHAR2,
1182                        p_Attribute10                    VARCHAR2,
1183                        p_Attribute11                    VARCHAR2,
1184                        p_Attribute12                    VARCHAR2,
1185                        p_Attribute13                    VARCHAR2,
1186                        p_Attribute14                    VARCHAR2,
1187                        p_Attribute15                    VARCHAR2,
1188                        p_Request_Id        		NUMBER,
1189                        p_Program_application_Id		NUMBER,
1190                        p_Program_Id        		NUMBER,
1191                        p_Program_Update_date        	DATE,
1192 		       p_point_of_use_x			NUMBER DEFAULT NULL,
1193 	               p_point_of_use_y			NUMBER DEFAULT NULL,
1194 		       p_point_of_supply_x		NUMBER DEFAULT NULL,
1195 	               p_point_of_supply_y		NUMBER DEFAULT NULL,
1196 		       p_planning_update_status		NUMBER DEFAULT NULL,
1197 		       p_auto_request                   VARCHAR2 DEFAULT NULL,
1198                        p_Auto_Allocate_Flag             NUMBER,  --Bug3905884
1199                        --eKanban Changes
1200 		       p_replenishment_type             NUMBER DEFAULT NULL,
1201 		       p_future_card_size               NUMBER DEFAULT NULL,
1202 		       p_future_no_of_cards             NUMBER DEFAULT NULL,
1203 		       p_planning_effectivity           DATE   DEFAULT NULL,
1204 		       p_consolidation                  NUMBER DEFAULT NULL,
1205 		       p_consolidation_group            VARCHAR2 DEFAULT NULL,
1206 		       p_avg_dependent_demand           NUMBER DEFAULT NULL,
1207 		       p_avg_independent_demand         NUMBER DEFAULT NULL)
1208    is
1209    l_pull_sequence_Id     MTL_Kanban_Pull_Sequences.Pull_Sequence_Id%Type;
1210    l_return_status        Varchar2(1) := FND_API.G_RET_STS_SUCCESS;
1211 BEGIN
1212        FND_MSG_PUB.Initialize;
1213        If nvl(p_Pull_sequence_Id,0) <= 0
1214        Then
1215        	Select MTL_KANBAN_PULL_SEQUENCES_S.NEXTVAL
1216        	into l_pull_sequence_Id
1217        	from dual;
1218        Else
1219         l_pull_sequence_Id := p_Pull_sequence_Id;
1220        End If;
1221 
1222        INSERT INTO MTL_KANBAN_PULL_SEQUENCES
1223              (
1224               Pull_sequence_id,
1225               Inventory_item_id,
1226               Organization_id,
1227               Subinventory_name,
1228               Kanban_Plan_id,
1229               Source_type,
1230               Last_Update_Date,
1231               Last_Updated_By,
1232               Creation_Date,
1233               Created_By,
1234               Last_Update_Login,
1235               Locator_id,
1236               Supplier_id,
1237               Supplier_site_id,
1238               Source_Organization_id,
1239               Source_Subinventory,
1240               Source_Locator_id,
1241               Wip_Line_id,
1242               Release_Kanban_flag,
1243               Calculate_Kanban_flag,
1244               Kanban_size,
1245               Number_of_cards,
1246               Minimum_order_quantity,
1247               Aggregation_type,
1248               Allocation_Percent,
1249               Replenishment_lead_time,
1250               Fixed_Lot_multiplier,
1251               Safety_Stock_Days,
1252               Updated_Flag,
1253               Attribute_Category,
1254               Attribute1,
1255               Attribute2,
1256               Attribute3,
1257               Attribute4,
1258               Attribute5,
1259               Attribute6,
1260               Attribute7,
1261               Attribute8,
1262               Attribute9,
1263               Attribute10,
1264               Attribute11,
1265               Attribute12,
1266               Attribute13,
1267               Attribute14,
1268               Attribute15,
1269               Request_Id,
1270               Program_application_Id,
1271               Program_Id,
1272               Program_Update_date,
1273               point_of_use_x,
1274               point_of_use_y,
1275 	      point_of_supply_x,
1276               point_of_supply_y,
1277 	      planning_update_status,
1278 	      auto_request,
1279               Auto_Allocate_Flag, --Bug3905884
1280               --eKanban Changes
1281 	      replenishment_type,
1282 	      future_card_size,
1283 	      future_no_of_cards,
1284 	      planning_effectivity,
1285 	      consolidation,
1286 	      consolidation_group,
1287 	      avg_dependent_demand,
1288 	      avg_independent_demand)
1289         Values
1290               (
1291               l_Pull_sequence_id,
1292               p_Inventory_item_id,
1293               p_Organization_id,
1294               p_Subinventory_name,
1295               p_Kanban_Plan_id,
1296               p_Source_type,
1297               p_Last_Update_Date,
1298               p_Last_Updated_By,
1299               p_Creation_Date,
1300               p_Created_By,
1301               p_Last_Update_Login,
1302               p_Locator_id,
1303               p_Supplier_id,
1304               p_Supplier_site_id,
1305               p_Source_Organization_id,
1306               p_Source_Subinventory,
1307               p_Source_Locator_id,
1308               p_Wip_Line_id,
1309               p_Release_Kanban_flag,
1310               p_Calculate_Kanban_flag,
1311               p_Kanban_size,
1312               p_Number_of_cards,
1313               p_Minimum_order_quantity,
1314               p_Aggregation_type,
1315               p_Allocation_Percent,
1316               p_Replenishment_lead_time,
1317               p_Fixed_Lot_multiplier,
1318               p_Safety_Stock_Days,
1319               p_Updated_Flag,
1320               p_Attribute_Category,
1321               p_Attribute1,
1322               p_Attribute2,
1323               p_Attribute3,
1324               p_Attribute4,
1325               p_Attribute5,
1326               p_Attribute6,
1327               p_Attribute7,
1328               p_Attribute8,
1329               p_Attribute9,
1330               p_Attribute10,
1331               p_Attribute11,
1332               p_Attribute12,
1333               p_Attribute13,
1334               p_Attribute14,
1335               p_Attribute15,
1336               p_Request_Id,
1337               p_Program_application_Id,
1338               p_Program_Id,
1339               p_Program_Update_Date,
1340 	      p_point_of_use_x,
1341 	      p_point_of_use_y,
1342 	      p_point_of_supply_x,
1343               p_point_of_supply_y,
1344 	      p_planning_update_status,
1345 	      p_auto_request,
1346               p_Auto_Allocate_Flag, --Bug3905884
1347               --eKanban Changes
1348 	      p_replenishment_type,
1349 	      p_future_card_size,
1350 	      p_future_no_of_cards,
1351 	      p_planning_effectivity,
1352 	      p_consolidation,
1353 	      p_consolidation_group,
1354 	      p_avg_dependent_demand,
1355 	      p_avg_independent_demand
1356               );
1357 
1358               p_pull_sequence_id := l_Pull_Sequence_id;
1359 
1360               x_return_status := l_return_status;
1361 EXCEPTION
1362     WHEN FND_API.G_EXC_ERROR THEN
1363 
1364         x_return_status := FND_API.G_RET_STS_ERROR;
1365 
1366     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1367 
1368         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1369 
1370     WHEN OTHERS THEN
1371         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1372         THEN
1373             FND_MSG_PUB.Add_Exc_Msg
1374             (   G_PKG_NAME
1375             ,   'Insert_Row'
1376             );
1377         END IF;
1378 
1379         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1380 
1381 End Insert_Row;
1382 */
1383 Procedure Insert_Row(p_pull_sequence_rec INV_Kanban_PVT.Pull_Sequence_Rec_Type)
1384 Is
1385 l_Pull_sequence_rec    INV_Kanban_PVT.Pull_Sequence_Rec_Type :=
1386 			p_pull_sequence_rec;
1387 l_return_status Varchar2(1);
1388 
1389 Begin
1390         FND_MSG_PUB.Initialize;
1391 	INV_PullSequence_PKG.Insert_Row(
1392 	x_return_status 	=>l_return_status,
1393 	p_pull_sequence_id 	=>l_Pull_sequence_Rec.pull_sequence_id,
1394         p_Inventory_item_id	=>l_Pull_sequence_Rec.Inventory_item_id,
1395         p_Organization_id	=>l_Pull_sequence_Rec.Organization_id,
1396         p_Subinventory_name	=>l_Pull_sequence_Rec.Subinventory_name,
1397         p_Kanban_Plan_id	=>l_Pull_sequence_Rec.Kanban_Plan_id,
1398         p_Source_type		=>l_Pull_sequence_Rec.Source_type,
1399         p_Last_Update_Date	=>l_Pull_sequence_Rec.Last_Update_Date,
1400         p_Last_Updated_By	=>l_Pull_sequence_Rec.Last_Updated_By,
1401         p_Creation_Date		=>l_Pull_sequence_Rec.Creation_Date,
1402         p_Created_By		=>l_Pull_sequence_Rec.Created_By,
1403         p_Last_Update_Login	=>l_Pull_sequence_Rec.Last_Update_Login,
1404         p_Locator_id		=>l_Pull_sequence_Rec.Locator_id,
1405         p_Supplier_id		=>l_Pull_sequence_Rec.Supplier_id,
1406         p_Supplier_site_id	=>l_Pull_sequence_Rec.Supplier_site_id,
1407         p_Source_Organization_id=>l_Pull_sequence_Rec.Source_Organization_id,
1408         p_Source_Subinventory	=>l_Pull_sequence_Rec.Source_Subinventory,
1409         p_Source_Locator_id	=>l_Pull_sequence_Rec.Source_Locator_id,
1410         p_Wip_Line_id		=>l_Pull_Sequence_Rec.Wip_Line_id,
1411         p_Release_Kanban_Flag	=>l_Pull_sequence_Rec.Release_Kanban_Flag,
1412         p_Calculate_Kanban_Flag	=>l_Pull_sequence_Rec.Calculate_Kanban_Flag,
1413         p_Kanban_size		=>l_Pull_sequence_Rec.Kanban_size,
1414         p_Number_of_cards	=>l_Pull_sequence_Rec.Number_of_cards,
1415         p_Minimum_order_quantity=>l_Pull_sequence_Rec.Minimum_order_quantity,
1416         p_Aggregation_type	=>l_Pull_sequence_Rec.Aggregation_type,
1417         p_Allocation_Percent	=>l_Pull_sequence_Rec.Allocation_Percent,
1418         p_Replenishment_lead_time=>l_Pull_sequence_Rec.Replenishment_lead_time,
1419         p_Fixed_Lot_multiplier	=>l_Pull_sequence_Rec.Fixed_Lot_multiplier,
1420         p_Safety_Stock_Days	=>l_Pull_sequence_Rec.Safety_Stock_Days,
1421         p_Updated_Flag		=>l_Pull_sequence_Rec.Updated_Flag,
1422         p_Attribute_Category	=>l_Pull_sequence_Rec.Attribute_Category,
1423         p_Attribute1		=>l_Pull_sequence_Rec.Attribute1,
1424         p_Attribute2		=>l_Pull_sequence_Rec.Attribute2,
1425         p_Attribute3		=>l_Pull_sequence_Rec.Attribute3,
1426         p_Attribute4		=>l_Pull_sequence_Rec.Attribute4,
1427         p_Attribute5		=>l_Pull_sequence_Rec.Attribute5,
1428         p_Attribute6		=>l_Pull_sequence_Rec.Attribute6,
1429         p_Attribute7		=>l_Pull_sequence_Rec.Attribute7,
1430         p_Attribute8		=>l_Pull_sequence_Rec.Attribute8,
1431         p_Attribute9		=>l_Pull_sequence_Rec.Attribute9,
1432         p_Attribute10		=>l_Pull_sequence_Rec.Attribute10,
1433         p_Attribute11		=>l_Pull_sequence_Rec.Attribute11,
1434         p_Attribute12		=>l_Pull_sequence_Rec.Attribute12,
1435         p_Attribute13		=>l_Pull_sequence_Rec.Attribute13,
1436         p_Attribute14		=>l_Pull_sequence_Rec.Attribute14,
1437         p_Attribute15		=>l_Pull_sequence_Rec.Attribute15,
1438         p_Request_Id		=>l_Pull_sequence_Rec.Request_Id,
1439         p_Program_application_Id=>l_Pull_sequence_Rec.Program_application_Id,
1440         p_Program_Id		=>l_Pull_sequence_Rec.Program_Id,
1441         p_Program_Update_date	=>l_Pull_sequence_Rec.Program_Update_date,
1442         p_point_of_use_x	=>l_Pull_sequence_Rec.point_of_use_x,
1443         p_point_of_use_y	=>l_Pull_sequence_Rec.point_of_use_y,
1444         p_point_of_supply_x	=>l_Pull_sequence_Rec.point_of_supply_x,
1445         p_point_of_supply_y	=>l_Pull_sequence_Rec.point_of_supply_y,
1446         p_planning_update_status=>l_Pull_sequence_Rec.planning_update_status,
1447         p_auto_request          =>l_Pull_sequence_Rec.auto_request,
1448         p_Auto_Allocate_Flag    =>l_Pull_sequence_Rec.Auto_Allocate_Flag, --Added for 3905884.
1449         --eKanban Changes
1450         p_replenishment_type     =>l_Pull_sequence_Rec.replenishment_type,
1451         p_future_card_size     	 =>l_Pull_sequence_Rec.future_card_size,
1452         p_future_no_of_cards     =>l_Pull_sequence_Rec.future_no_of_cards,
1453         p_planning_effectivity   =>l_Pull_sequence_Rec.planning_effectivity,
1454         p_consolidation     	    =>l_Pull_sequence_Rec.consolidation,
1455         p_consolidation_group	   =>l_Pull_sequence_Rec.consolidation_group,
1456         p_avg_dependent_demand   =>l_Pull_sequence_Rec.avg_dependent_demand,
1457         p_avg_independent_demand =>l_Pull_sequence_Rec.avg_independent_demand,
1458         p_last_imp_plan          => l_Pull_sequence_Rec.last_implemented_plan,
1459         p_imp_plan_start_date    => l_Pull_sequence_Rec.plan_start_date,
1460         p_imp_plan_end_date      => l_Pull_sequence_Rec.plan_end_date,
1461         p_no_of_temp_card        => null,
1462         p_no_of_temp_cycle       => null,
1463         p_temp_exp_date          => null);
1464 
1465 	if l_return_status = FND_API.G_RET_STS_ERROR
1466 	Then
1467 		Raise FND_API.G_EXC_ERROR;
1468 	End if;
1469 
1470 	if l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
1471 	Then
1472 		Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1473 	End If;
1474 
1475 EXCEPTION
1476     WHEN FND_API.G_EXC_ERROR THEN
1477 
1478 	Raise FND_API.G_EXC_ERROR;
1479 
1480     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1481 
1482 	Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1483 
1484     WHEN OTHERS THEN
1485 
1486         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1487         THEN
1488             FND_MSG_PUB.Add_Exc_Msg
1489             (   G_PKG_NAME
1490             ,   'Insert_Row'
1491             );
1492         END IF;
1493 
1494 	Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1495 
1496 End Insert_Row;
1497 
1498 PROCEDURE   Lock_Row  (p_Pull_Sequence_Id               NUMBER,
1499                        p_Inventory_item_id              NUMBER,
1500                        p_Organization_id       		NUMBER,
1501                        p_Subinventory_name              VARCHAR2,
1502                        p_Kanban_Plan_id        		NUMBER,
1503                        p_Source_type           		NUMBER,
1504                        p_Locator_id              	NUMBER,
1505                        p_Supplier_id           		NUMBER,
1506                        p_Supplier_site_id      		NUMBER,
1507                        p_Source_Organization_id		NUMBER,
1508                        p_Source_Subinventory            VARCHAR2,
1509                        p_Source_Locator_id		NUMBER,
1510                        p_Wip_Line_id		        NUMBER,
1511                        p_Release_Kanban_flag            NUMBER,
1512                        p_Calculate_Kanban_flag          NUMBER,
1513                        p_Kanban_size        		NUMBER,
1514                        p_Number_of_cards       		NUMBER,
1515                        p_Minimum_order_quantity		NUMBER,
1516                        p_Aggregation_type		NUMBER,
1517                        p_Allocation_Percent             NUMBER,
1518                        p_Replenishment_lead_time        NUMBER,
1519                        p_Fixed_Lot_multiplier           NUMBER,
1520                        p_Safety_Stock_Days              NUMBER,
1521                        p_Updated_Flag           	NUMBER,
1522                        p_Attribute_Category             VARCHAR2,
1523                        p_Attribute1                     VARCHAR2,
1524                        p_Attribute2                     VARCHAR2,
1525                        p_Attribute3                     VARCHAR2,
1526                        p_Attribute4                     VARCHAR2,
1527                        p_Attribute5                     VARCHAR2,
1528                        p_Attribute6                     VARCHAR2,
1529                        p_Attribute7                     VARCHAR2,
1530                        p_Attribute8                     VARCHAR2,
1531                        p_Attribute9                     VARCHAR2,
1532                        p_Attribute10                    VARCHAR2,
1533                        p_Attribute11                    VARCHAR2,
1534                        p_Attribute12                    VARCHAR2,
1535                        p_Attribute13                    VARCHAR2,
1536                        p_Attribute14                    VARCHAR2,
1537                        p_Attribute15                    VARCHAR2,
1538 		       p_point_of_use_x			NUMBER DEFAULT NULL,
1539 	               p_point_of_use_y			NUMBER DEFAULT NULL,
1540 		       p_point_of_supply_x		NUMBER DEFAULT NULL,
1541 	               p_point_of_supply_y		NUMBER DEFAULT NULL,
1542 		       p_planning_update_status		NUMBER DEFAULT NULL,
1543 		       p_auto_request                   VARCHAR2 DEFAULT NULL,
1544 		       p_Auto_Allocate_Flag             NUMBER)--Added for 3905884.
1545 IS
1546     CURSOR Get_Current_Row IS
1547         SELECT *
1548         FROM   MTL_KANBAN_PULL_SEQUENCES
1549         WHERE  pull_sequence_id = p_pull_sequence_id
1550         FOR UPDATE of Organization_Id NOWAIT;
1551 
1552     Recinfo MTL_KANBAN_PULL_SEQUENCES%ROWTYPE;
1553     RECORD_CHANGED EXCEPTION;
1554 BEGIN
1555     OPEN Get_Current_Row;
1556     FETCH Get_Current_Row INTO Recinfo;
1557     if (Get_Current_Row%NOTFOUND) then
1558       CLOSE Get_Current_Row;
1559       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
1560       APP_EXCEPTION.Raise_Exception;
1561     end if;
1562     CLOSE Get_Current_Row;
1563     if not (
1564 	Recinfo.Inventory_item_id 	=	p_Inventory_item_id and
1565       	Recinfo.Organization_Id 	=	p_Organization_Id and
1566  	Recinfo.Subinventory_name       =	p_Subinventory_name and
1567  	Recinfo.Kanban_Plan_id               	=	p_Kanban_Plan_id and
1568 	Recinfo.Source_type             =	p_Source_type and
1569       ((Recinfo.Locator_id            =	p_Locator_id)
1570      or (Recinfo.Locator_id is null  and p_Locator_id is null)) and
1571       ((Recinfo.Supplier_id           =	p_Supplier_id)
1572      or (Recinfo.Supplier_id is null and p_Supplier_id is null)) and
1573       ((Recinfo.Supplier_site_id      =	p_Supplier_site_id)
1574      or (Recinfo.Supplier_site_id is null and p_Supplier_site_id is null)) and
1575       ((Recinfo.Source_Organization_id=	p_Source_Organization_id)
1576      or (Recinfo.Source_Organization_id is null and p_Source_Organization_id is null)) and
1577       ((Recinfo.Source_Subinventory      =	p_Source_Subinventory)
1578      or (Recinfo.Source_Subinventory is null and p_Source_Subinventory is null)) and
1579       ((Recinfo.Source_Locator_id      =	p_Source_Locator_id)
1580      or (Recinfo.Source_Locator_id is null and p_Source_Locator_id is null)) and
1581       ((Recinfo.Wip_Line_id      =	p_Wip_Line_id)
1582      or (Recinfo.Wip_Line_id is null and p_Wip_Line_id is null)) and
1583       ((Recinfo.Release_Kanban_Flag      =	p_Release_Kanban_flag)
1584      or (Recinfo.Release_Kanban_flag is null and p_Release_Kanban_flag is null)) and
1585       ((Recinfo.Calculate_Kanban_Flag      =	p_Calculate_Kanban_flag)
1586      or (Recinfo.Calculate_Kanban_flag is null and p_Calculate_Kanban_flag is null)) and
1587       ((Recinfo.Kanban_size      =	p_Kanban_size)
1588      or (Recinfo.Kanban_size is null and p_Kanban_size is null)) and
1589       ((Recinfo.Number_of_cards      =	p_Number_of_cards)
1590      or (Recinfo.Number_of_cards is null and p_Number_of_cards is null)) and
1591       ((Recinfo.Minimum_order_quantity      =	p_Minimum_order_quantity)
1592      or (Recinfo.Minimum_order_quantity is null and p_Minimum_order_quantity is null)) and
1593       ((Recinfo.Aggregation_Type      =	p_Aggregation_Type)
1594      or (Recinfo.Aggregation_Type is null and p_Aggregation_Type is null)) and
1595       ((Recinfo.Allocation_Percent      =	p_Allocation_Percent)
1596      or (Recinfo.Allocation_Percent is null and p_Allocation_Percent is null)) and
1597       ((Recinfo.Replenishment_lead_time      =	p_Replenishment_lead_time)
1598      or (Recinfo.Replenishment_lead_time is null and p_Replenishment_lead_time is null)) and
1599       ((Recinfo.fixed_lot_multiplier      =	p_fixed_lot_multiplier)
1600      or (Recinfo.fixed_lot_multiplier is null and p_fixed_lot_multiplier is null)) and
1601       ((Recinfo.Safety_Stock_Days      =	p_Safety_Stock_Days)
1602      or (Recinfo.Safety_Stock_Days is null and p_Safety_Stock_Days is null)) and
1603       ((Recinfo.Updated_Flag      =	p_Updated_Flag)
1604      or (Recinfo.Updated_Flag is null and p_Updated_Flag is null))  and
1605       ((Recinfo.Attribute_Category      =	p_Attribute_Category)
1606      or (Recinfo.Attribute_Category is null and p_Attribute_Category is null))
1607      /*Fix for 3905884.*/
1608      and ((Recinfo.Auto_Allocate_Flag      =	p_Auto_Allocate_Flag)
1609        or (Recinfo.Auto_Allocate_Flag is null and p_Auto_Allocate_Flag is null))    /*End of fix for 3905884*/
1610 	) then
1611             RAISE RECORD_CHANGED;
1612 	end if;
1613       if not (
1614       (   (Recinfo.attribute1 =  p_Attribute1)
1615            OR (    (Recinfo.attribute1 IS NULL)
1616                AND (p_Attribute1 IS NULL)))
1617       AND (   (Recinfo.attribute2 =  p_Attribute2)
1618            OR (    (Recinfo.attribute2 IS NULL)
1619                AND (p_Attribute2 IS NULL)))
1620       AND (   (Recinfo.attribute3 =  p_Attribute3)
1621            OR (    (Recinfo.attribute3 IS NULL)
1622                AND (p_Attribute3 IS NULL)))
1623       AND (   (Recinfo.attribute4 =  p_Attribute4)
1624            OR (    (Recinfo.attribute4 IS NULL)
1625                AND (p_Attribute4 IS NULL)))
1626       AND (   (Recinfo.attribute5 =  p_Attribute5)
1627            OR (    (Recinfo.attribute5 IS NULL)
1628                AND (p_Attribute5 IS NULL)))
1629       AND (   (Recinfo.attribute6 =  p_Attribute6)
1630            OR (    (Recinfo.attribute6 IS NULL)
1631                AND (p_Attribute6 IS NULL)))
1632       AND (   (Recinfo.attribute7 =  p_Attribute7)
1633            OR (    (Recinfo.attribute7 IS NULL)
1634                AND (p_Attribute7 IS NULL)))
1635       AND (   (Recinfo.attribute8 =  p_Attribute8)
1636            OR (    (Recinfo.attribute8 IS NULL)
1637                AND (p_Attribute8 IS NULL)))
1638       AND (   (Recinfo.attribute9 =  p_Attribute9)
1639            OR (    (Recinfo.attribute9 IS NULL)
1640                AND (p_Attribute9 IS NULL)))
1641       AND (   (Recinfo.attribute10 =  p_Attribute10)
1642            OR (    (Recinfo.attribute10 IS NULL)
1643                AND (p_Attribute10 IS NULL)))
1644       AND (   (Recinfo.attribute11 =  p_Attribute11)
1645            OR (    (Recinfo.attribute11 IS NULL)
1646                AND (p_Attribute11 IS NULL)))
1647       AND (   (Recinfo.attribute12 =  p_Attribute12)
1648            OR (    (Recinfo.attribute12 IS NULL)
1649                AND (p_Attribute12 IS NULL)))
1650       AND (   (Recinfo.attribute13 =  p_Attribute13)
1651            OR (    (Recinfo.attribute13 IS NULL)
1652                AND (p_Attribute13 IS NULL)))
1653       AND (   (Recinfo.attribute14 =  p_Attribute14)
1654            OR (    (Recinfo.attribute14 IS NULL)
1655                AND (p_Attribute14 IS NULL)))
1656       AND (   (Recinfo.attribute15 =  p_Attribute15)
1657            OR (    (Recinfo.attribute15 IS NULL)
1658                AND (p_Attribute15 IS NULL)))
1659      ) then
1660          RAISE RECORD_CHANGED;
1661       end if;
1662 
1663      IF NOT (
1664       (   (Recinfo.point_of_use_x =  p_point_of_use_x)
1665            OR (    (Recinfo.point_of_use_x IS NULL)
1666                AND (p_point_of_use_x IS NULL)))
1667       AND (   (Recinfo.point_of_use_y =  p_point_of_use_y)
1668            OR (    (Recinfo.point_of_use_y IS NULL)
1669                AND (p_point_of_use_y IS NULL)))
1670       AND (   (Recinfo.point_of_supply_x =  p_point_of_supply_x)
1671            OR (    (Recinfo.point_of_supply_x IS NULL)
1672                AND (p_point_of_supply_x IS NULL)))
1673       AND (   (Recinfo.point_of_supply_x =  p_point_of_supply_x)
1674            OR (    (Recinfo.point_of_supply_x IS NULL)
1675                AND (p_point_of_supply_x IS NULL)))
1676       AND (   (Recinfo.point_of_supply_y =  p_point_of_supply_y)
1677            OR (    (Recinfo.point_of_supply_y IS NULL)
1678                AND (p_point_of_supply_y IS NULL)))
1679       AND (   (Recinfo.planning_update_status=  p_planning_update_status)
1680            OR (    (Recinfo.planning_update_status IS NULL)
1681                AND (p_planning_update_status IS NULL)))
1682       AND (   (Recinfo.auto_request =  p_auto_request)
1683            OR (    (Recinfo.auto_request IS NULL)
1684                AND (p_auto_request IS NULL)))
1685      ) THEN
1686          RAISE RECORD_CHANGED;
1687       END IF;
1688 exception
1689        WHEN RECORD_CHANGED THEN
1690 	FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
1691       APP_EXCEPTION.Raise_Exception;
1692     when others then
1693     raise;
1694 END Lock_Row;
1695 /*
1696 PROCEDURE   Update_Row(x_return_status        OUT NOCOPY     	VARCHAR2,
1697                        p_Pull_Sequence_Id               NUMBER,
1698                        p_Inventory_item_id              NUMBER,
1699                        p_Organization_id       		NUMBER,
1700                        p_Subinventory_name              VARCHAR2,
1701                        p_Kanban_Plan_id        		NUMBER,
1702                        p_Source_type           		NUMBER,
1703                        p_Last_Update_Date               DATE,
1704                        p_Last_Updated_By                NUMBER,
1705                        p_Creation_Date                  DATE,
1706                        p_Created_By                     NUMBER,
1707                        p_Last_Update_Login              NUMBER,
1708                        p_Locator_id              	NUMBER,
1709                        p_Supplier_id           		NUMBER,
1710                        p_Supplier_site_id      		NUMBER,
1711                        p_Source_Organization_id		NUMBER,
1712                        p_Source_Subinventory            VARCHAR2,
1713                        p_Source_Locator_id		NUMBER,
1714                        p_Wip_Line_id		        NUMBER,
1715                        p_Release_Kanban_flag 		NUMBER,
1716                        p_Calculate_Kanban_flag 		NUMBER,
1717                        p_Kanban_size        		NUMBER,
1718                        p_Number_of_cards       		NUMBER,
1719                        p_Minimum_order_quantity		NUMBER,
1720                        p_Aggregation_Type		NUMBER,
1721                        p_Allocation_Percent		NUMBER,
1722                        p_Replenishment_lead_time        NUMBER,
1723                        p_Fixed_Lot_multiplier           NUMBER,
1724                        p_Safety_Stock_Days              NUMBER,
1725                        p_Updated_Flag           	NUMBER,
1726                        p_Attribute_Category             VARCHAR2,
1727                        p_Attribute1                     VARCHAR2,
1728                        p_Attribute2                     VARCHAR2,
1729                        p_Attribute3                     VARCHAR2,
1730                        p_Attribute4                     VARCHAR2,
1731                        p_Attribute5                     VARCHAR2,
1732                        p_Attribute6                     VARCHAR2,
1733                        p_Attribute7                     VARCHAR2,
1734                        p_Attribute8                     VARCHAR2,
1735                        p_Attribute9                     VARCHAR2,
1736                        p_Attribute10                    VARCHAR2,
1737                        p_Attribute11                    VARCHAR2,
1738                        p_Attribute12                    VARCHAR2,
1739                        p_Attribute13                    VARCHAR2,
1740                        p_Attribute14                    VARCHAR2,
1741                        p_Attribute15                    VARCHAR2,
1742 		       p_point_of_use_x			NUMBER DEFAULT NULL,
1743 	               p_point_of_use_y			NUMBER DEFAULT NULL,
1744 		       p_point_of_supply_x		NUMBER DEFAULT NULL,
1745 	               p_point_of_supply_y		NUMBER DEFAULT NULL,
1746 		       p_planning_update_status		NUMBER DEFAULT NULL,
1747 		       p_auto_request                   VARCHAR2 DEFAULT NULL,
1748                        p_Auto_Allocate_Flag             NUMBER DEFAULT NULL,  --Bug3905884
1749                        --eKanban Changes
1750 		       p_replenishment_type             NUMBER DEFAULT NULL,
1751 		       p_future_card_size               NUMBER DEFAULT NULL,
1752 		       p_future_no_of_cards             NUMBER DEFAULT NULL,
1753 		       p_planning_effectivity           DATE   DEFAULT NULL,
1754 		       p_consolidation                  NUMBER DEFAULT NULL,
1755 		       p_consolidation_group            VARCHAR2 DEFAULT NULL,
1756 		       p_avg_dependent_demand           NUMBER DEFAULT NULL,
1757 		       p_avg_independent_demand         NUMBER DEFAULT NULL)
1758 
1759 IS
1760 
1761 l_return_status 	varchar2(1)     := FND_API.G_RET_STS_SUCCESS;
1762 
1763 BEGIN
1764         FND_MSG_PUB.Initialize;
1765 	UPDATE MTL_KANBAN_PULL_SEQUENCES
1766 	SET
1767       		Inventory_item_id 	=	p_Inventory_item_id,
1768       		Organization_Id 	=	p_Organization_Id,
1769  		Subinventory_name       =	p_Subinventory_name,
1770 	 	Kanban_Plan_id         	=	p_Kanban_Plan_id,
1771  		Source_type             =	p_Source_type,
1772  		Last_Update_Date        =	p_Last_Update_Date,
1773  		Last_Updated_By         =	p_Last_Updated_By,
1774  		Creation_Date           =	p_Creation_Date,
1775  		Created_By              =	p_Created_By,
1776  		Last_Update_Login       =	p_Last_Update_Login,
1777  		Locator_id              =	p_Locator_id,
1778  		Supplier_id             =	p_Supplier_id,
1779  		Supplier_site_id        =	p_Supplier_site_id,
1780  		Source_Organization_id  =	p_Source_Organization_id,
1781  		Source_Subinventory     =	p_Source_Subinventory,
1782  		Source_Locator_id       =	p_Source_Locator_id,
1783  		Wip_Line_id             =	p_Wip_Line_id,
1784  		Release_Kanban_Flag     =	p_Release_Kanban_flag,
1785  		Calculate_Kanban_Flag   =	p_Calculate_Kanban_flag,
1786  		Kanban_size             =	p_Kanban_size,
1787  		Number_of_cards         =	p_Number_of_cards,
1788  		Minimum_order_quantity  =	p_Minimum_order_quantity,
1789  		Aggregation_Type        =	p_Aggregation_Type,
1790  		Allocation_Percent      =	p_Allocation_Percent,
1791  		Replenishment_lead_time =	p_Replenishment_lead_time,
1792  		Fixed_Lot_multiplier    =	p_Fixed_Lot_multiplier,
1793  		Safety_Stock_Days       =	p_Safety_Stock_Days,
1794  		Updated_Flag            =	p_Updated_Flag,
1795  		Attribute_Category      =	p_Attribute_Category,
1796  		Attribute1              =	p_Attribute1,
1797  		Attribute2              =	p_Attribute2,
1798  		Attribute3              =	p_Attribute3,
1799  		Attribute4              =	p_Attribute4,
1800  		Attribute5              =	p_Attribute5,
1801  		Attribute6              =	p_Attribute6,
1802  		Attribute7              =	p_Attribute7,
1803  		Attribute8              =	p_Attribute8,
1804  		Attribute9              =	p_Attribute9,
1805  		Attribute10             =	p_Attribute10,
1806  		Attribute11             =	p_Attribute11,
1807  		Attribute12             =	p_Attribute12,
1808  		Attribute13             =	p_Attribute13,
1809  		Attribute14             =	p_Attribute14,
1810  		Attribute15             =	p_Attribute15,
1811 		point_of_use_x		=	p_point_of_use_x,
1812 		point_of_use_y		=	p_point_of_use_y,
1813 	 point_of_supply_x	=	p_point_of_supply_x,
1814   point_of_supply_y	=	p_point_of_supply_y,
1815 	 planning_update_status	=	p_planning_update_status,
1816 		auto_request            =       p_auto_request,
1817 		Auto_Allocate_Flag      =       p_Auto_Allocate_Flag, --Added for 3905884
1818 		--eKanban Changes
1819 		replenishment_type      =       p_replenishment_type,
1820 		future_card_size        =       p_future_card_size,
1821 		future_no_of_cards      =       p_future_no_of_cards,
1822 		planning_effectivity    =       p_planning_effectivity,
1823 		consolidation           =       p_consolidation,
1824 		consolidation_group     =       p_consolidation_group,
1825 		avg_dependent_demand    =       p_avg_dependent_demand,
1826   avg_independent_demand  =       p_avg_independent_demand
1827     WHERE pull_sequence_id = p_pull_sequence_id;
1828 
1829     if (SQL%NOTFOUND) then
1830       Raise NO_DATA_FOUND;
1831     end if;
1832     x_return_status := l_return_status;
1833 
1834 EXCEPTION
1835 
1836     WHEN FND_API.G_EXC_ERROR THEN
1837 
1838         x_return_status := FND_API.G_RET_STS_ERROR;
1839 
1840     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1841 
1842         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1843 
1844     WHEN OTHERS THEN
1845 
1846         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1847         THEN
1848             FND_MSG_PUB.Add_Exc_Msg
1849             (   G_PKG_NAME
1850             ,   'Update_Row'
1851             );
1852         END IF;
1853 
1854         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1855 
1856 END Update_Row;
1857 */
1858 PROCEDURE Update_Row(
1859 p_pull_sequence_rec INV_Kanban_PVT.Pull_sequence_Rec_Type)
1860 Is
1861 
1862 l_return_status Varchar2(1);
1863 
1864 Begin
1865         FND_MSG_PUB.Initialize;
1866 	Update_Row(
1867         x_return_status 	=>l_return_status,
1868         p_pull_sequence_id 	=>p_Pull_sequence_Rec.pull_sequence_id,
1869         p_Inventory_item_id	=>p_Pull_sequence_Rec.Inventory_item_id,
1870         p_Organization_id	=>p_Pull_sequence_Rec.Organization_id,
1871         p_Subinventory_name	=>p_Pull_sequence_Rec.Subinventory_name,
1872         p_Kanban_Plan_id	=>p_Pull_sequence_Rec.Kanban_Plan_id,
1873         p_Source_type		=>p_Pull_sequence_Rec.Source_type	,
1874         p_Last_Update_Date	=>p_Pull_sequence_Rec.Last_Update_Date,
1875         p_Last_Updated_By	=>p_Pull_sequence_Rec.Last_Updated_By,
1876         p_Creation_Date		=>p_Pull_sequence_Rec.Creation_Date,
1877         p_Created_By		=>p_Pull_sequence_Rec.Created_By,
1878         p_Last_Update_Login	=>p_Pull_sequence_Rec.Last_Update_Login	,
1879         p_Locator_id		=>p_Pull_sequence_Rec.Locator_id,
1880         p_Supplier_id		=>p_Pull_sequence_Rec.Supplier_id,
1881         p_Supplier_site_id	=>p_Pull_sequence_Rec.Supplier_site_id	,
1882         p_Source_Organization_id=>p_Pull_sequence_Rec.Source_Organization_id,
1883         p_Source_Subinventory	=>p_Pull_sequence_Rec.Source_Subinventory,
1884         p_Source_Locator_id	=>p_Pull_sequence_Rec.Source_Locator_id	,
1885         p_Wip_Line_id		=>p_Pull_Sequence_Rec.Wip_Line_id	,
1886         p_Release_Kanban_Flag	=>p_Pull_sequence_Rec.Release_Kanban_Flag,
1887         p_Calculate_Kanban_Flag	=>p_Pull_sequence_Rec.Calculate_Kanban_Flag,
1888         p_Kanban_size		=>p_Pull_sequence_Rec.Kanban_size	,
1889         p_Number_of_cards	=>p_Pull_sequence_Rec.Number_of_cards	,
1890         p_Minimum_order_quantity=>p_Pull_sequence_Rec.Minimum_order_quantity,
1891         p_Aggregation_type	=>p_Pull_sequence_Rec.Aggregation_type	,
1892         p_Allocation_Percent	=>p_Pull_sequence_Rec.Allocation_Percent,
1893         p_Replenishment_lead_time=>p_Pull_sequence_Rec.Replenishment_lead_time,
1894         p_Fixed_Lot_multiplier	=>p_Pull_sequence_Rec.Fixed_Lot_multiplier,
1895         p_Safety_Stock_Days	=>p_Pull_sequence_Rec.Safety_Stock_Days	,
1896         p_Updated_Flag		=>p_Pull_sequence_Rec.Updated_Flag	,
1897         p_Attribute_Category	=>p_Pull_sequence_Rec.Attribute_Category,
1898         p_Attribute1		=>p_Pull_sequence_Rec.Attribute1	,
1899         p_Attribute2		=>p_Pull_sequence_Rec.Attribute2	,
1900         p_Attribute3		=>p_Pull_sequence_Rec.Attribute3	,
1901         p_Attribute4		=>p_Pull_sequence_Rec.Attribute4	,
1902         p_Attribute5		=>p_Pull_sequence_Rec.Attribute5	,
1903         p_Attribute6		=>p_Pull_sequence_Rec.Attribute6	,
1904         p_Attribute7		=>p_Pull_sequence_Rec.Attribute7	,
1905         p_Attribute8		=>p_Pull_sequence_Rec.Attribute8	,
1906         p_Attribute9		=>p_Pull_sequence_Rec.Attribute9	,
1907         p_Attribute10		=>p_Pull_sequence_Rec.Attribute10	,
1908         p_Attribute11		=>p_Pull_sequence_Rec.Attribute11	,
1909         p_Attribute12		=>p_Pull_sequence_Rec.Attribute12	,
1910         p_Attribute13		=>p_Pull_sequence_Rec.Attribute13	,
1911         p_Attribute14		=>p_Pull_sequence_Rec.Attribute14	,
1912         p_Attribute15		=>p_Pull_sequence_Rec.Attribute15	,
1913         p_point_of_use_x	=>p_Pull_sequence_Rec.point_of_use_x	,
1914         p_point_of_use_y	=>p_Pull_sequence_Rec.point_of_use_y	,
1915         p_point_of_supply_x	=>p_Pull_sequence_Rec.point_of_supply_x	,
1916         p_point_of_supply_y	=>p_Pull_sequence_Rec.point_of_supply_y ,
1917         p_planning_update_status =>p_Pull_sequence_Rec.planning_update_status,
1918         p_auto_request          =>p_Pull_sequence_Rec.auto_request,
1919         p_Auto_Allocate_Flag    =>p_Pull_sequence_Rec.Auto_Allocate_Flag, --Added for 3905884.
1920 	--eKanban Changes
1921         p_replenishment_type     =>p_Pull_sequence_Rec.replenishment_type,
1922         p_future_card_size       =>p_Pull_sequence_Rec.future_card_size,
1923         p_future_no_of_cards     =>p_Pull_sequence_Rec.future_no_of_cards,
1924         p_planning_effectivity   =>p_Pull_sequence_Rec.planning_effectivity,
1925         p_consolidation          =>p_Pull_sequence_Rec.consolidation,
1926         p_consolidation_group    =>p_Pull_sequence_Rec.consolidation_group,
1927         p_avg_dependent_demand   =>p_Pull_sequence_Rec.avg_dependent_demand,
1928         p_avg_independent_demand =>p_Pull_sequence_Rec.avg_independent_demand,
1929         p_last_imp_plan          =>p_Pull_sequence_Rec.last_implemented_plan,
1930         p_imp_plan_start_date    =>p_Pull_sequence_Rec.plan_start_date,
1931         p_imp_plan_end_date      =>p_Pull_sequence_Rec.plan_end_date,
1932         p_no_of_temp_card        =>null,
1933         p_no_of_temp_cycle       =>null,
1934         p_temp_exp_date          =>null  );
1935 
1936 	if l_return_status = FND_API.G_RET_STS_ERROR
1937 	Then
1938 		Raise FND_API.G_EXC_ERROR;
1939 	End if;
1940 
1941 	if l_return_status = FND_API.G_RET_STS_UNEXP_ERROR
1942 	Then
1943 		Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1944 	End If;
1945 
1946 EXCEPTION
1947 
1948     WHEN FND_API.G_EXC_ERROR THEN
1949 
1950         Raise FND_API.G_EXC_ERROR;
1951 
1952     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1953 
1954        Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1955 
1956     WHEN OTHERS THEN
1957 
1958         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1959         THEN
1960             FND_MSG_PUB.Add_Exc_Msg
1961             (   G_PKG_NAME
1962             ,   'Update_Row'
1963             );
1964         END IF;
1965         Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1966 
1967 END Update_Row;
1968 
1969 PROCEDURE Delete_Row(x_return_status    OUT NOCOPY VARCHAR2,
1970                      p_Pull_Sequence_Id     Number)
1971 IS
1972 l_return_status         varchar2(1) :=  FND_API.G_RET_STS_ERROR;
1973 
1974 BEGIN
1975     FND_MSG_PUB.Initialize;
1976     if INV_Kanban_PVT.Ok_To_Delete_Pull_Sequence(p_pull_sequence_Id)
1977     then
1978 
1979        DELETE FROM MTL_KANBAN_PULL_SEQUENCES
1980        WHERE pull_sequence_id = p_pull_sequence_id;
1981 
1982       if (SQL%NOTFOUND) then
1983         Raise FND_API.G_EXC_UNEXPECTED_ERROR;
1984       else
1985         l_return_status := FND_API.G_RET_STS_SUCCESS;
1986       end if;
1987     else
1988 	Raise FND_API.G_EXC_ERROR;
1989     end if;
1990 
1991     -- eKanban changes
1992     -- Delete all suppliers for the pull sequence
1993 
1994     DELETE FROM MTL_PULL_SEQ_SUPPLIERS
1995     WHERE pull_sequence_id = p_pull_sequence_id;
1996 
1997     x_return_status := l_return_status;
1998 
1999 EXCEPTION
2000     WHEN FND_API.G_EXC_ERROR THEN
2001 
2002        	x_return_status := FND_API.G_RET_STS_ERROR;
2003 
2004     WHEN OTHERS THEN
2005 
2006        	x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
2007         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2008         THEN
2009             FND_MSG_PUB.Add_Exc_Msg
2010             (   G_PKG_NAME
2011             ,   'Delete_Row'
2012             );
2013         END IF;
2014 
2015 END Delete_Row;
2016 
2017 END INV_PullSequence_PKG;