21: --
22: -- 06-May-05 Abhishek Rudresh Common BOM Attrs update
23: ****************************************************************************/
24: G_PKG_NAME CONSTANT VARCHAR2(30) := 'BOM_Ref_Designator_Util';
25: G_CONTROL_REC BOM_BO_PUB.Control_Rec_Type;
26:
27: -- Procedure Clear_Dependent_Attr
28:
29: PROCEDURE Clear_Dependent_Attr
27: -- Procedure Clear_Dependent_Attr
28:
29: PROCEDURE Clear_Dependent_Attr
30: ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
31: , p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
32: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
33: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
34: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
35: )
28:
29: PROCEDURE Clear_Dependent_Attr
30: ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
31: , p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
32: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
33: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
34: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
35: )
36: IS
29: PROCEDURE Clear_Dependent_Attr
30: ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
31: , p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
32: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
33: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
34: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
35: )
36: IS
37: BEGIN
30: ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
31: , p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
32: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
33: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
34: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
35: )
36: IS
37: BEGIN
38: -- Load out record
43:
44: -- Procedure Apply_Attribute_Changes
45:
46: PROCEDURE Apply_Attribute_Changes
47: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
48: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
49: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
50: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
51: )
44: -- Procedure Apply_Attribute_Changes
45:
46: PROCEDURE Apply_Attribute_Changes
47: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
48: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
49: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
50: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
51: )
52: IS
45:
46: PROCEDURE Apply_Attribute_Changes
47: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
48: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
49: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
50: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
51: )
52: IS
53: BEGIN
46: PROCEDURE Apply_Attribute_Changes
47: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
48: , p_old_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
49: Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
50: , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
51: )
52: IS
53: BEGIN
54: -- Load out record
59:
60: -- Function Convert_Miss_To_Null
61:
62: FUNCTION Convert_Miss_To_Null
63: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
64: ) RETURN Bom_Bo_Pub.Ref_Designator_Rec_Type
65: IS
66: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type :=
67: p_ref_designator_rec;
60: -- Function Convert_Miss_To_Null
61:
62: FUNCTION Convert_Miss_To_Null
63: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
64: ) RETURN Bom_Bo_Pub.Ref_Designator_Rec_Type
65: IS
66: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type :=
67: p_ref_designator_rec;
68: BEGIN
62: FUNCTION Convert_Miss_To_Null
63: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
64: ) RETURN Bom_Bo_Pub.Ref_Designator_Rec_Type
65: IS
66: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type :=
67: p_ref_designator_rec;
68: BEGIN
69:
70: IF l_ref_designator_rec.Reference_Designator_Name = FND_API.G_MISS_CHAR THEN
152: *
153: ********************************************************************/
154:
155: PROCEDURE Update_Row
156: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
157: , p_Ref_Desg_Unexp_Rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
158: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
159: , x_Return_Status IN OUT NOCOPY VARCHAR2
160: )
153: ********************************************************************/
154:
155: PROCEDURE Update_Row
156: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
157: , p_Ref_Desg_Unexp_Rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
158: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
159: , x_Return_Status IN OUT NOCOPY VARCHAR2
160: )
161: IS
160: )
161: IS
162: l_return_status varchar2(80);
163: l_Mesg_Token_Tbl Error_Handler.Mesg_Token_Tbl_Type;
164: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
165: l_Token_Tbl Error_Handler.Token_Tbl_Type;
166: l_BO_Id VARCHAR2(3) := Bom_Globals.Get_Bo_Identifier;
167: BEGIN
168: --bug:3254815 Update request id, prog id, prog appl id and prog update date.
287: *
288: ********************************************************************/
289:
290: PROCEDURE Insert_Row
291: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
292: , p_Ref_Desg_Unexp_Rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
293: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
294: , x_Return_Status IN OUT NOCOPY VARCHAR2
295: )
288: ********************************************************************/
289:
290: PROCEDURE Insert_Row
291: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
292: , p_Ref_Desg_Unexp_Rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
293: , x_Mesg_Token_Tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
294: , x_Return_Status IN OUT NOCOPY VARCHAR2
295: )
296: IS
487: PROCEDURE Query_Row
488: ( p_ref_designator IN VARCHAR2
489: , p_component_sequence_id IN NUMBER
490: , p_acd_type IN NUMBER
491: , x_Ref_Designator_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
492: , x_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
493: , x_Return_Status IN OUT NOCOPY VARCHAR2
494: )
495: IS
488: ( p_ref_designator IN VARCHAR2
489: , p_component_sequence_id IN NUMBER
490: , p_acd_type IN NUMBER
491: , x_Ref_Designator_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
492: , x_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
493: , x_Return_Status IN OUT NOCOPY VARCHAR2
494: )
495: IS
496: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
492: , x_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
493: , x_Return_Status IN OUT NOCOPY VARCHAR2
494: )
495: IS
496: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
497: l_Ref_Desg_Unexp_Rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
498: l_err_text VARCHAR2(2000);
499: BEGIN
500:
493: , x_Return_Status IN OUT NOCOPY VARCHAR2
494: )
495: IS
496: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
497: l_Ref_Desg_Unexp_Rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
498: l_err_text VARCHAR2(2000);
499: BEGIN
500:
501: SELECT COMPONENT_REFERENCE_DESIGNATOR
563:
564: END Query_Row;
565:
566: PROCEDURE Perform_Writes
567: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_rec_Type
568: , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
569: , p_control_rec IN BOM_BO_PUB.Control_Rec_Type
570: := BOM_BO_PUB.G_DEFAULT_CONTROL_REC
571: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
564: END Query_Row;
565:
566: PROCEDURE Perform_Writes
567: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_rec_Type
568: , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
569: , p_control_rec IN BOM_BO_PUB.Control_Rec_Type
570: := BOM_BO_PUB.G_DEFAULT_CONTROL_REC
571: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
572: , x_return_status IN OUT NOCOPY VARCHAR2
565:
566: PROCEDURE Perform_Writes
567: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_rec_Type
568: , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
569: , p_control_rec IN BOM_BO_PUB.Control_Rec_Type
570: := BOM_BO_PUB.G_DEFAULT_CONTROL_REC
571: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
572: , x_return_status IN OUT NOCOPY VARCHAR2
573: )
566: PROCEDURE Perform_Writes
567: ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_rec_Type
568: , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
569: , p_control_rec IN BOM_BO_PUB.Control_Rec_Type
570: := BOM_BO_PUB.G_DEFAULT_CONTROL_REC
571: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
572: , x_return_status IN OUT NOCOPY VARCHAR2
573: )
574: IS
619: /*
620: ** Procedure definitions for BOM Business Object
621: */
622: FUNCTION Convert_Miss_To_Null
623: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
624: ) RETURN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
620: ** Procedure definitions for BOM Business Object
621: */
622: FUNCTION Convert_Miss_To_Null
623: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
624: ) RETURN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
628: l_bom_ref_designator_rec Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type;
622: FUNCTION Convert_Miss_To_Null
623: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
624: ) RETURN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
628: l_bom_ref_designator_rec Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type;
629: l_bom_ref_desg_unexp_rec Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type;
630: BEGIN
623: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
624: ) RETURN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
628: l_bom_ref_designator_rec Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type;
629: l_bom_ref_desg_unexp_rec Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type;
630: BEGIN
631: --
624: ) RETURN Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
628: l_bom_ref_designator_rec Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type;
629: l_bom_ref_desg_unexp_rec Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type;
630: BEGIN
631: --
632: -- Convert the BOM Record to ECO
625: IS
626: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
627: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
628: l_bom_ref_designator_rec Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type;
629: l_bom_ref_desg_unexp_rec Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type;
630: BEGIN
631: --
632: -- Convert the BOM Record to ECO
633: --
630: BEGIN
631: --
632: -- Convert the BOM Record to ECO
633: --
634: Bom_Bo_Pub.Convert_BomDesg_To_EcoDesg
635: ( p_bom_ref_designator_rec => p_bom_ref_designator_rec
636: , x_ref_designator_rec => l_ref_designator_rec
637: , x_ref_desg_unexp_rec => l_ref_desg_unexp_rec
638: );
645:
646: --
647: -- Convert ECO record back to BOM
648: --
649: Bom_Bo_Pub.Convert_EcoDesg_To_BomDesg
650: ( p_ref_designator_rec => l_ref_designator_rec
651: , x_bom_ref_designator_rec => l_bom_ref_designator_rec
652: , x_bom_ref_desg_unexp_rec => l_bom_ref_desg_unexp_rec
653: );
661: PROCEDURE Query_Row
662: ( p_bom_ref_designator IN VARCHAR2
663: , p_component_sequence_id IN NUMBER
664: , p_acd_type IN NUMBER
665: , x_bom_Ref_Designator_Rec IN OUT NOCOPY Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
666: , x_bom_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type
667: , x_Return_Status IN OUT NOCOPY VARCHAR2
668: )
669: IS
662: ( p_bom_ref_designator IN VARCHAR2
663: , p_component_sequence_id IN NUMBER
664: , p_acd_type IN NUMBER
665: , x_bom_Ref_Designator_Rec IN OUT NOCOPY Bom_Bo_Pub.Bom_Ref_Designator_Rec_Type
666: , x_bom_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type
667: , x_Return_Status IN OUT NOCOPY VARCHAR2
668: )
669: IS
670: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
666: , x_bom_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type
667: , x_Return_Status IN OUT NOCOPY VARCHAR2
668: )
669: IS
670: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
671: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
672: BEGIN
673:
674: Bom_Ref_Designator_Util.Query_Row
667: , x_Return_Status IN OUT NOCOPY VARCHAR2
668: )
669: IS
670: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
671: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
672: BEGIN
673:
674: Bom_Ref_Designator_Util.Query_Row
675: ( p_ref_designator => p_bom_ref_designator
681: );
682:
683: -- Convert the ECO record to BOm for return
684:
685: Bom_Bo_Pub.Convert_Ecodesg_To_BomDesg
686: ( p_ref_designator_rec => l_ref_designator_rec
687: , p_ref_desg_unexp_rec => l_ref_Desg_unexp_rec
688: , x_bom_ref_designator_rec => x_bom_ref_designator_rec
689: , x_bom_ref_desg_unexp_rec => x_bom_ref_desg_unexp_Rec
691:
692: END Query_Row;
693:
694: PROCEDURE Perform_Writes
695: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_rec_Type
696: , p_bom_ref_desg_unexp_rec IN Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type
697: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
698: , x_return_status IN OUT NOCOPY VARCHAR2
699: )
692: END Query_Row;
693:
694: PROCEDURE Perform_Writes
695: ( p_bom_ref_designator_rec IN Bom_Bo_Pub.Bom_Ref_Designator_rec_Type
696: , p_bom_ref_desg_unexp_rec IN Bom_Bo_Pub.Bom_Ref_Desg_Unexp_Rec_Type
697: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
698: , x_return_status IN OUT NOCOPY VARCHAR2
699: )
700: IS
697: , x_mesg_token_tbl IN OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
698: , x_return_status IN OUT NOCOPY VARCHAR2
699: )
700: IS
701: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
702: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
703: BEGIN
704: --
705: -- Convert Bom Recor to ECO
698: , x_return_status IN OUT NOCOPY VARCHAR2
699: )
700: IS
701: l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
702: l_ref_desg_unexp_rec Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type;
703: BEGIN
704: --
705: -- Convert Bom Recor to ECO
706: --
703: BEGIN
704: --
705: -- Convert Bom Recor to ECO
706: --
707: Bom_Bo_Pub.Convert_BomDesg_To_EcoDesg
708: ( p_bom_ref_designator_rec => p_bom_ref_designator_rec
709: , p_bom_ref_desg_unexp_rec => p_bom_ref_desg_unexp_rec
710: , x_ref_designator_rec => l_ref_designator_rec
711: , x_ref_desg_unexp_rec => l_ref_desg_unexp_rec