177:
178: PROCEDURE Update_Row
179: ( p_sub_component_rec IN Bom_Bo_Pub.Sub_Component_Rec_Type
180: , p_Sub_Comp_Unexp_Rec IN Bom_Bo_Pub.Sub_Comp_Unexposed_Rec_Type
181: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
182: , x_return_status IN OUT NOCOPY VARCHAR2
183: )
184: IS
185: l_processed BOOLEAN;
186: l_sub_component_rec Bom_Bo_Pub.SUB_COMPONENT_REC_TYPE :=
187: p_sub_component_rec;
188: l_return_status VARCHAR2(200);
189: l_err_text VARCHAR2(255);
190: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
191: BEGIN
192:
193: -- Lock the row before updating the row
194: --dbms_output.put_line('Within Update Row . . .');
200: -- );
201: --dbms_output.put_line('Acd_Type : ' || to_Char(p_sub_component_rec.acd_type));
202:
203:
204: Error_Handler.Write_Debug ('Updating SCOMP Perform Writes ...');
205:
206: --bug:3254815 Update request id, prog id, prog appl id and prog update date.
207: UPDATE BOM_SUBSTITUTE_COMPONENTS
208: SET SUBSTITUTE_COMPONENT_ID = DECODE(p_sub_comp_Unexp_rec.new_substitute_component_id,
261:
262: WHEN NO_DATA_FOUND THEN
263: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
264: THEN
265: Error_Handler.Add_Error_Token
266: ( p_Message_name => 'BOM_NOT_UPDATE_ROW'
267: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
268: , x_Mesg_Token_Tbl => l_Mesg_Token_Tbl
269: );
280: 'Utility (SubStitute Component Update)' ||
281: SUBSTR(SQLERRM, 1, 100);
282: --dbms_output.put_line('Update Row Unexpected Error: ' || l_err_text);
283:
284: Error_Handler.Add_Error_Token
285: ( p_Message_Name => NULL
286: , p_Message_Text => l_err_text
287: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
288: , x_Mesg_Token_Tbl => l_Mesg_Token_Tbl
331: ********************************************************************/
332: PROCEDURE Insert_Row
333: ( p_sub_component_rec IN Bom_Bo_Pub.Sub_Component_Rec_Type
334: , p_Sub_Comp_Unexp_Rec IN Bom_Bo_Pub.Sub_Comp_Unexposed_Rec_Type
335: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
336: , x_return_status IN OUT NOCOPY VARCHAR2
337: )
338: IS
339: l_processed BOOLEAN;
338: IS
339: l_processed BOOLEAN;
340: l_err_text VARCHAR2(255);
341: l_return_status VARCHAR2(200);
342: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
343: l_src_comp_seq_id NUMBER := NULL; --Bug 7713832
344:
345: BEGIN
346:
343: l_src_comp_seq_id NUMBER := NULL; --Bug 7713832
344:
345: BEGIN
346:
347: Error_Handler.Write_Debug ('Inserting SCOMP Perform Writes ...');
348: --Bug 7712832 changes start
349: IF Bom_Globals.Get_Caller_Type = 'MIGRATION' THEN
350: l_src_comp_seq_id := Common_CompSeqIdSC( p_comp_seq_id => p_sub_comp_Unexp_rec.component_sequence_id
351: );
437: THEN
438: l_err_text := G_PKG_NAME ||
439: 'Utility (Substitute Component Insert)' ||
440: SUBSTR(SQLERRM, 1, 100);
441: Error_Handler.Add_Error_Token
442: ( p_Message_Name => NULL
443: , p_Message_text => l_err_text
444: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
445: , x_Mesg_Token_Tbl => l_Mesg_Token_Tbl
464: ( p_substitute_component_id IN NUMBER
465: , p_change_notice IN VARCHAR2
466: , p_component_sequence_id IN NUMBER
467: , p_acd_type IN NUMBER
468: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
469: , x_return_status IN OUT NOCOPY VARCHAR2
470: )
471: IS
472: l_processed BOOLEAN;
471: IS
472: l_processed BOOLEAN;
473: l_return_status VARCHAR2(200);
474: l_err_text VARCHAR2(255);
475: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
476: l_BO_Id VARCHAR2(3) := Bom_Globals.Get_Bo_Identifier;
477: BEGIN
478:
479: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
514: l_err_text := G_PKG_NAME ||
515: 'Utility (Substitute Component Delete_Row)' ||
516: SUBSTR(SQLERRM, 1, 100);
517:
518: Error_Handler.Add_Error_Token
519: ( p_Message_Name => NULL
520: , p_Message_Text => l_err_text
521: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
522: , x_Mesg_Token_Tbl => l_Mesg_Token_Tbl
551: , x_return_status IN OUT NOCOPY VARCHAR2
552: )
553: IS
554: l_sub_component_rec Bom_Bo_Pub.Sub_Component_Rec_Type;
555: l_Token_Tbl Error_Handler.Token_Tbl_Type;
556: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
557: BEGIN
558:
559: SELECT SUBSTITUTE_ITEM_QUANTITY
552: )
553: IS
554: l_sub_component_rec Bom_Bo_Pub.Sub_Component_Rec_Type;
555: l_Token_Tbl Error_Handler.Token_Tbl_Type;
556: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
557: BEGIN
558:
559: SELECT SUBSTITUTE_ITEM_QUANTITY
560: , ATTRIBUTE_CATEGORY
647:
648: PROCEDURE Perform_Writes
649: ( p_sub_component_rec IN Bom_Bo_Pub.Sub_Component_Rec_Type
650: , p_sub_comp_unexp_rec IN Bom_Bo_Pub.Sub_Comp_Unexposed_Rec_Type
651: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
652: , x_Return_Status IN OUT NOCOPY VARCHAR2
653: )
654: IS
655: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
651: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
652: , x_Return_Status IN OUT NOCOPY VARCHAR2
653: )
654: IS
655: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
656: l_return_status VARCHAR2(1);
657: l_sub_component_rec Bom_Bo_Pub.Sub_Component_Rec_Type;
658: l_sub_comp_unexp_rec Bom_Bo_Pub.Sub_Comp_Unexposed_Rec_Type;
659: BEGIN
660: l_sub_component_rec := p_sub_component_rec;
661: l_sub_comp_unexp_rec := p_sub_comp_unexp_rec;
662:
663: IF l_sub_component_rec.transaction_type IS NULL THEN
664: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is NULL');
665: ELSIF l_sub_component_rec.transaction_type = FND_API.G_MISS_CHAR THEN
666: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is MISSING');
667: ELSE
668: Error_Handler.Write_Debug('In SCOMP Perform Writes...'||l_sub_component_rec.transaction_type);
662:
663: IF l_sub_component_rec.transaction_type IS NULL THEN
664: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is NULL');
665: ELSIF l_sub_component_rec.transaction_type = FND_API.G_MISS_CHAR THEN
666: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is MISSING');
667: ELSE
668: Error_Handler.Write_Debug('In SCOMP Perform Writes...'||l_sub_component_rec.transaction_type);
669: END IF;
670: IF l_sub_component_rec.transaction_type = Bom_Globals.G_OPR_CREATE
664: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is NULL');
665: ELSIF l_sub_component_rec.transaction_type = FND_API.G_MISS_CHAR THEN
666: Error_Handler.Write_Debug ('In SCOMP Perform Writes ...is MISSING');
667: ELSE
668: Error_Handler.Write_Debug('In SCOMP Perform Writes...'||l_sub_component_rec.transaction_type);
669: END IF;
670: IF l_sub_component_rec.transaction_type = Bom_Globals.G_OPR_CREATE
671: THEN
672: Insert_Row( p_sub_component_rec => l_sub_component_rec
697: , x_return_status => l_return_status
698: );
699:
700: END IF;
701: Error_Handler.Write_Debug ('After SCOMP Perform Writes ...'||nvl(l_sub_component_rec.transaction_type,'NULL'));
702:
703: x_return_status := l_return_status;
704: x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
705:
782:
783: PROCEDURE Perform_Writes
784: ( p_bom_sub_component_rec IN Bom_Bo_Pub.Bom_Sub_Component_Rec_Type
785: , p_bom_sub_comp_unexp_rec IN Bom_Bo_Pub.Bom_Sub_Comp_Unexp_Rec_Type
786: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
787: , x_Return_Status IN OUT NOCOPY VARCHAR2
788: )
789: IS
790: l_sub_component_rec Bom_Bo_Pub.Sub_Component_Rec_Type;