DBA Data[Home] [Help]

APPS.BOM_VALIDATE_BOM_COMPONENT dependencies on BOM_GLOBALS

Line 481: IF l_total > BOM_GLOBALS.G_COMPS_LIMIT THEN

477: bill_sequence_id = p_bom_comp_unexp_rec.bill_sequence_id
478: and sysdate between effectivity_date and
479: nvl(disable_date,sysdate + 1);
480:
481: IF l_total > BOM_GLOBALS.G_COMPS_LIMIT THEN
482: g_token_tbl(1).token_name := 'ASSEMBLY_ITEM_NAME';
483: g_token_tbl(1).token_value :=
484: p_bom_component_rec.assembly_item_name;
485: Error_Handler.Add_Error_Token

Line 557: IF (l_OPM_org='Y' and l_bom_comp_item_type in ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS))THEN

553:
554: /* Validations for OPM Convergence Project
555: Model/Option class items are not allowed in OPM organizations*/
556:
557: IF (l_OPM_org='Y' and l_bom_comp_item_type in ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS))THEN
558: Error_Handler.Add_Error_Token
559: ( p_Message_name => 'BOM_OPM_ORG_MODEL_OC'
560: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
561: , x_mesg_token_tbl => l_mesg_token_tbl

Line 567: (NVL(BOM_Globals.Get_MDL_Item_Access,0),

563: l_return_status := FND_API.G_RET_STS_ERROR;
564: END IF;
565:
566: IF l_bom_comp_item_type NOT IN
567: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
568: NVL(BOM_Globals.Get_OC_Item_Access,0),
569: NVL(BOM_Globals.Get_PLN_Item_Access,0),
570: NVL(BOM_Globals.Get_STD_Item_Access,0)
571: )

Line 568: NVL(BOM_Globals.Get_OC_Item_Access,0),

564: END IF;
565:
566: IF l_bom_comp_item_type NOT IN
567: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
568: NVL(BOM_Globals.Get_OC_Item_Access,0),
569: NVL(BOM_Globals.Get_PLN_Item_Access,0),
570: NVL(BOM_Globals.Get_STD_Item_Access,0)
571: )
572: THEN

Line 569: NVL(BOM_Globals.Get_PLN_Item_Access,0),

565:
566: IF l_bom_comp_item_type NOT IN
567: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
568: NVL(BOM_Globals.Get_OC_Item_Access,0),
569: NVL(BOM_Globals.Get_PLN_Item_Access,0),
570: NVL(BOM_Globals.Get_STD_Item_Access,0)
571: )
572: THEN
573: l_token_tbl(1).token_name := 'COMPONENT_ITEM_NAME';

Line 570: NVL(BOM_Globals.Get_STD_Item_Access,0)

566: IF l_bom_comp_item_type NOT IN
567: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
568: NVL(BOM_Globals.Get_OC_Item_Access,0),
569: NVL(BOM_Globals.Get_PLN_Item_Access,0),
570: NVL(BOM_Globals.Get_STD_Item_Access,0)
571: )
572: THEN
573: l_token_tbl(1).token_name := 'COMPONENT_ITEM_NAME';
574: l_token_tbl(1).token_value := p_component_name;

Line 642: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

638:
639: IF ( p_rev_component_rec.acd_type IS NULL OR
640: p_rev_component_rec.acd_type = FND_API.G_MISS_NUM
641: ) AND
642: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
643: THEN
644: Error_Handler.Add_Error_Token
645: ( p_message_name => 'BOM_ACD_TYPE_MISSING'
646: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 915: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD) AND

911: -- 4. ATO Model or
912: -- 5. ATO Option Class
913: **************************************************************/
914: IF ( ( ( g_Assy_Item_Type IN
915: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD) AND
916: g_Assy_ATO_flag = 'Y' AND
917: g_Assy_Config = 'N'
918: )
919: ) AND

Line 920: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR

916: g_Assy_ATO_flag = 'Y' AND
917: g_Assy_Config = 'N'
918: )
919: ) AND
920: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR
921: ( g_Comp_Item_Type IN
922: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD) AND
923: g_Comp_PTO_Flag = 'Y'
924: )

Line 922: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD) AND

918: )
919: ) AND
920: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR
921: ( g_Comp_Item_Type IN
922: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD) AND
923: g_Comp_PTO_Flag = 'Y'
924: )
925: )
926: ) OR

Line 928: g_Assy_Item_Type = Bom_Globals.G_STANDARD AND

924: )
925: )
926: ) OR
927: (
928: g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
929: g_Assy_ATO_flag = 'Y' AND
930: g_Assy_Config = 'N' AND
931: ( g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
932: g_Comp_ATO_Flag = 'Y'

Line 931: ( g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND

927: (
928: g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
929: g_Assy_ATO_flag = 'Y' AND
930: g_Assy_Config = 'N' AND
931: ( g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
932: g_Comp_ATO_Flag = 'Y'
933: )
934: )
935: THEN

Line 936: IF g_Assy_Item_Type = Bom_Globals.G_MODEL

932: g_Comp_ATO_Flag = 'Y'
933: )
934: )
935: THEN
936: IF g_Assy_Item_Type = Bom_Globals.G_MODEL
937: THEN
938: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
939: g_Token_Tbl(2).Token_Value := 'BOM_MODEL_TYPE';
940: g_Token_Tbl(2).Translate := TRUE;

Line 941: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS

937: THEN
938: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
939: g_Token_Tbl(2).Token_Value := 'BOM_MODEL_TYPE';
940: g_Token_Tbl(2).Translate := TRUE;
941: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS
942: THEN
943: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
944: g_Token_Tbl(2).Token_Value :=
945: 'BOM_OPTION_CLASS_TYPE';

Line 957: IF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

953: g_token_tbl(3).token_name := 'REVISED_ITEM_NAME';
954: g_token_tbl(3).token_value :=
955: g_rev_component_rec.revised_item_name;
956:
957: IF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
958: THEN
959: Error_Handler.Add_Error_Token
960: ( p_message_name => 'BOM_ATO_PROP_MISMATCH'
961: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 995: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

991: g_Assy_Config = 'Y'
992: THEN
993: IF( g_rev_component_rec.Wip_Supply_Type <> 6 AND
994: g_Comp_Item_Type IN
995: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
996: AND
997: g_Comp_ATO_Flag = 'Y'
998: )
999:

Line 1023: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD)

1019: ****************************************************/
1020: ELSIF
1021: NOT
1022: ( ( g_Comp_Item_Type IN
1023: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD)
1024: AND
1025: g_Comp_ATO_Flag = 'Y'
1026: ) OR
1027: g_Comp_Item_Type = Bom_Globals.G_STANDARD

Line 1027: g_Comp_Item_Type = Bom_Globals.G_STANDARD

1023: (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS, Bom_Globals.G_STANDARD)
1024: AND
1025: g_Comp_ATO_Flag = 'Y'
1026: ) OR
1027: g_Comp_Item_Type = Bom_Globals.G_STANDARD
1028: )
1029: THEN
1030: g_token_tbl(2).token_name:= 'REVISED_ITEM_NAME';
1031: g_token_tbl(2).token_value :=

Line 1052: ELSIF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND

1048: -- PTO Models do not allow
1049: -- 1. ATO Option Class and
1050: -- 2. Planning components
1051: **************************************************************/
1052: ELSIF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
1053: g_Assy_PTO_flag = 'Y' AND
1054: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR
1055: ( g_Comp_Item_Type = Bom_Globals.G_OPTION_CLASS AND
1056: g_Comp_ATO_flag = 'Y'

Line 1054: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR

1050: -- 2. Planning components
1051: **************************************************************/
1052: ELSIF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
1053: g_Assy_PTO_flag = 'Y' AND
1054: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR
1055: ( g_Comp_Item_Type = Bom_Globals.G_OPTION_CLASS AND
1056: g_Comp_ATO_flag = 'Y'
1057: )
1058: )

Line 1055: ( g_Comp_Item_Type = Bom_Globals.G_OPTION_CLASS AND

1051: **************************************************************/
1052: ELSIF g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
1053: g_Assy_PTO_flag = 'Y' AND
1054: ( g_Comp_Item_Type = Bom_Globals.G_PLANNING OR
1055: ( g_Comp_Item_Type = Bom_Globals.G_OPTION_CLASS AND
1056: g_Comp_ATO_flag = 'Y'
1057: )
1058: )
1059: THEN

Line 1060: IF g_Assy_Item_Type = Bom_Globals.G_MODEL

1056: g_Comp_ATO_flag = 'Y'
1057: )
1058: )
1059: THEN
1060: IF g_Assy_Item_Type = Bom_Globals.G_MODEL
1061: THEN
1062: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
1063: g_Token_Tbl(2).Token_Value := 'BOM_MODEL_TYPE';
1064: g_Token_Tbl(2).Translate := TRUE;

Line 1065: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS

1061: THEN
1062: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
1063: g_Token_Tbl(2).Token_Value := 'BOM_MODEL_TYPE';
1064: g_Token_Tbl(2).Translate := TRUE;
1065: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS
1066: THEN
1067: g_Token_Tbl(2).Token_Name := 'ITEM_TYPE';
1068: g_Token_Tbl(2).Token_Value :=
1069: 'BOM_OPTION_CLASS_TYPE';

Line 1094: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND

1090: --
1091: -- PTO STandard will only allow Standard or PTO Standard
1092: --
1093: *****************************************************/
1094: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
1095: g_Assy_PTO_Flag = 'Y' AND
1096: NOT
1097: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1098: ( ( g_Comp_PTO_Flag = 'Y' AND

Line 1097: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND

1093: *****************************************************/
1094: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
1095: g_Assy_PTO_Flag = 'Y' AND
1096: NOT
1097: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1098: ( ( g_Comp_PTO_Flag = 'Y' AND
1099: g_comp_ATO_Flag = 'N'
1100: ) OR
1101: ( g_comp_ATO_Flag = 'N' AND

Line 1107: NOT ( ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND

1103: )
1104: )
1105: )
1106: /* Commenting for Bug 2627352
1107: NOT ( ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1108: g_Comp_PTO_flag = 'Y'
1109: ) OR
1110: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD)
1111: )

Line 1110: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD)

1106: /* Commenting for Bug 2627352
1107: NOT ( ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1108: g_Comp_PTO_flag = 'Y'
1109: ) OR
1110: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD)
1111: )
1112: */
1113: THEN
1114: g_token_tbl(2).token_name := 'REVISED_ITEM_NAME';

Line 1133: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND

1129: -- A STANDARD bill will only allow ATO Standard and Standard
1130: -- items as components
1131: --
1132: *************************************************************/
1133: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
1134: g_Assy_PTO_Flag = 'N' AND
1135: g_Assy_ATO_Flag = 'N' AND
1136: NOT
1137: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND

Line 1137: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND

1133: ELSIF g_Assy_Item_Type = Bom_Globals.G_STANDARD AND
1134: g_Assy_PTO_Flag = 'N' AND
1135: g_Assy_ATO_Flag = 'N' AND
1136: NOT
1137: ( g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1138: ( ( g_Comp_ATO_Flag = 'Y' AND
1139: g_comp_PTO_Flag = 'N'
1140: ) OR
1141: ( g_comp_ATO_Flag = 'N' AND

Line 1169: IF BOM_Globals.get_debug = 'Y' THEN

1165:
1166: -- Once the matrix is verified then check the ATP Components
1167: -- and ATP Check attributes
1168:
1169: IF BOM_Globals.get_debug = 'Y' THEN
1170: error_handler.write_debug('Check the ATP Components and ATP Check attribute.' );
1171: error_handler.write_debug('Assy ATP Comp Flag : ' || g_Assy_ATP_Comp_flag );
1172: error_handler.write_debug('Comp ATP Check Flag : ' || g_Comp_Atp_Check_Flag );
1173: END IF;

Line 1195: IF BOM_Globals.get_debug = 'Y' THEN

1191: RETURN FALSE; -- ATP Item Attribute Invalid
1192: END IF;
1193: -- dbms_output.put_line('End of Item Attribute Validation . . .');
1194:
1195: IF BOM_Globals.get_debug = 'Y' THEN
1196: error_handler.write_debug('Check the ATP Components and ATP Check attribute.' );
1197: END IF;
1198:
1199: **************************************************************/

Line 1234: g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND

1230: -- dbms_output.put_line
1231: -- ('Value of Optional when checking ATO / PTO . . .');
1232:
1233: IF ( g_Assy_PTO_flag = 'Y' AND
1234: g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
1235: g_Comp_ATO_flag = 'Y' AND
1236: g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1237: g_Comp_Config = 'N' AND
1238: g_Rev_Component_Rec.optional = 2

Line 1236: g_Comp_Item_Type = Bom_Globals.G_STANDARD AND

1232:
1233: IF ( g_Assy_PTO_flag = 'Y' AND
1234: g_Assy_Item_Type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) AND
1235: g_Comp_ATO_flag = 'Y' AND
1236: g_Comp_Item_Type = Bom_Globals.G_STANDARD AND
1237: g_Comp_Config = 'N' AND
1238: g_Rev_Component_Rec.optional = 2
1239: )
1240: THEN

Line 1242: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_STANDARD, Bom_Globals.G_PLANNING) AND

1238: g_Rev_Component_Rec.optional = 2
1239: )
1240: THEN
1241: RETURN 1;
1242: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_STANDARD, Bom_Globals.G_PLANNING) AND
1243: g_Rev_Component_Rec.optional = 1
1244: )
1245: THEN
1246: RETURN 2;

Line 1269: IF g_Assy_Item_Type = Bom_Globals.G_STANDARD THEN

1265: FUNCTION Check_Planning_Percent RETURN NUMBER
1266: IS
1267: BEGIN
1268: IF g_rev_component_rec.planning_percent <> 100 THEN
1269: IF g_Assy_Item_Type = Bom_Globals.G_STANDARD THEN
1270: RETURN 1;
1271: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1272: AND
1273: g_rev_component_rec.optional <> 1 AND

Line 1271: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

1267: BEGIN
1268: IF g_rev_component_rec.planning_percent <> 100 THEN
1269: IF g_Assy_Item_Type = Bom_Globals.G_STANDARD THEN
1270: RETURN 1;
1271: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1272: AND
1273: g_rev_component_rec.optional <> 1 AND
1274: g_Comp_ATO_Forecast_Control <> 2
1275: )

Line 1278: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

1274: g_Comp_ATO_Forecast_Control <> 2
1275: )
1276: THEN
1277: RETURN 2;
1278: ELSIF ( g_Assy_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1279: AND
1280: ( g_rev_component_rec.optional = 1 AND -- changed for Bug3163342
1281: g_Comp_ATO_Forecast_Control <> 2
1282: )

Line 1349: IF g_Assy_Item_Type = Bom_Globals.G_PRODUCT_FAMILY

1345: Pf_Item_Id Number ;
1346: BEGIN
1347: --dbms_output.put_line('Withing Function CheckUnique_PF_Member . . .');
1348:
1349: IF g_Assy_Item_Type = Bom_Globals.G_PRODUCT_FAMILY
1350: THEN
1351: BEGIN
1352: SELECT product_family_item_id
1353: INTO Pf_Item_Id

Line 1433: g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

1429: dep_appl_id => '702',
1430: status => X_bom_status,
1431: industry => X_industry);
1432: IF X_install_bom AND
1433: g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1434: THEN
1435: RETURN 0;
1436: ELSIF g_Comp_Item_Type NOT IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1437: THEN

Line 1436: ELSIF g_Comp_Item_Type NOT IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

1432: IF X_install_bom AND
1433: g_Comp_Item_Type IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1434: THEN
1435: RETURN 0;
1436: ELSIF g_Comp_Item_Type NOT IN (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
1437: THEN
1438: RETURN 2;
1439: ELSE
1440: RETURN 1;

Line 1789: IF Bom_Globals.Get_Debug = 'Y' THEN

1785: -- dbms_output.put_line('Checking Subinventory locator control,
1786: -- calling Check_Supply_SubInventory . . .');
1787:
1788:
1789: IF Bom_Globals.Get_Debug = 'Y' THEN
1790: Error_Handler.Write_Debug('L_SUB_LOC_CONTROL :' || to_number( l_Sub_Locator_Control) );
1791: Error_Handler.Write_Debug('Now calling Check SupplySubInv: '|| g_rev_component_rec.supply_subinventory );
1792: END IF;
1793:

Line 1798: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug

1794: IF l_Sub_Locator_Control IS NULL AND
1795: g_rev_component_rec.supply_subinventory IS NOT NULL
1796: THEN
1797:
1798: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug
1799: ('Now calling Check SupplySubInv. . .');
1800: END IF;
1801:
1802:

Line 2181: l_eco_for_production := NVL(Bom_Globals.Get_Eco_For_Production,2) ;

2177: -- a component already exist with that operation sequence abd
2178: -- Effectivity date so it cannot be inserted. So return an error
2179: -- hence, this function will return a false.
2180:
2181: l_eco_for_production := NVL(Bom_Globals.Get_Eco_For_Production,2) ;
2182:
2183: FOR l_valid_op IN Valid_Op_Seq(l_eco_for_production) LOOP
2184: -- if operation_seq exists in Operation_Sequences then
2185: -- verify that the same component does not already exist

Line 2340: AND ( ( assy.bom_item_type IN ( Bom_Globals.G_PLANNING, Bom_Globals.G_STANDARD)

2336: g_rev_comp_Unexp_rec.revised_item_id
2337: AND comp.organization_id = g_rev_comp_Unexp_rec.organization_id
2338: AND comp.inventory_item_id =
2339: g_rev_comp_Unexp_rec.component_item_id
2340: AND ( ( assy.bom_item_type IN ( Bom_Globals.G_PLANNING, Bom_Globals.G_STANDARD)
2341: AND g_rev_component_rec.optional = 2 /* NO */
2342: )
2343: OR
2344: ( assy.bom_item_type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

Line 2344: ( assy.bom_item_type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)

2340: AND ( ( assy.bom_item_type IN ( Bom_Globals.G_PLANNING, Bom_Globals.G_STANDARD)
2341: AND g_rev_component_rec.optional = 2 /* NO */
2342: )
2343: OR
2344: ( assy.bom_item_type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
2345: AND assy.pick_components_flag = 'Y'
2346: /* PTO Model or PTO Option Class */
2347: AND comp.bom_item_type = Bom_Globals.G_STANDARD
2348: AND comp.replenish_to_order_flag = 'Y'

Line 2347: AND comp.bom_item_type = Bom_Globals.G_STANDARD

2343: OR
2344: ( assy.bom_item_type IN ( Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS)
2345: AND assy.pick_components_flag = 'Y'
2346: /* PTO Model or PTO Option Class */
2347: AND comp.bom_item_type = Bom_Globals.G_STANDARD
2348: AND comp.replenish_to_order_flag = 'Y'
2349: AND comp.base_item_id IS NULL
2350: AND g_rev_component_rec.Optional = 1
2351: )

Line 2727: l_lot_number := BOM_Globals.Get_Lot_Number;

2723:
2724: BEGIN
2725:
2726:
2727: l_lot_number := BOM_Globals.Get_Lot_Number;
2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;
2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;
2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;
2731:

Line 2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;

2724: BEGIN
2725:
2726:
2727: l_lot_number := BOM_Globals.Get_Lot_Number;
2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;
2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;
2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;
2731:
2732: IF Bom_Globals.Get_Debug = 'Y' THEN

Line 2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;

2725:
2726:
2727: l_lot_number := BOM_Globals.Get_Lot_Number;
2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;
2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;
2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;
2731:
2732: IF Bom_Globals.Get_Debug = 'Y' THEN
2733: Error_Handler.Write_Debug('Check if the rev component is valid in Eco by Prod. . .' );

Line 2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;

2726:
2727: l_lot_number := BOM_Globals.Get_Lot_Number;
2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;
2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;
2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;
2731:
2732: IF Bom_Globals.Get_Debug = 'Y' THEN
2733: Error_Handler.Write_Debug('Check if the rev component is valid in Eco by Prod. . .' );
2734: Error_Handler.Write_Debug('Lot Number in parent rev item : ' || l_lot_number );

Line 2732: IF Bom_Globals.Get_Debug = 'Y' THEN

2728: l_from_wip_entity_id := BOM_Globals.Get_From_Wip_Entity_Id;
2729: l_to_wip_entity_id := BOM_Globals.Get_To_Wip_Entity_Id;
2730: l_from_cum_qty := BOM_Globals.Get_From_Cum_Qty;
2731:
2732: IF Bom_Globals.Get_Debug = 'Y' THEN
2733: Error_Handler.Write_Debug('Check if the rev component is valid in Eco by Prod. . .' );
2734: Error_Handler.Write_Debug('Lot Number in parent rev item : ' || l_lot_number );
2735: Error_Handler.Write_Debug('From WIP Entity Id in parent rev item : ' || to_char(l_from_wip_entity_id) );
2736: Error_Handler.Write_Debug('To WIP Entity Id in parent rev item : ' || to_char(l_to_wip_entity_id) );

Line 2757: IF Bom_Globals.Get_Debug = 'Y' THEN

2753: , p_rev_item_id => p_rev_item_id
2754: )
2755: LOOP
2756:
2757: IF Bom_Globals.Get_Debug = 'Y' THEN
2758: Error_Handler.Write_Debug('In Eco by Lot Number, this rev component is invalid. . .' );
2759: END IF;
2760: l_ret_status := FALSE ;
2761: END LOOP ;

Line 2777: IF Bom_Globals.Get_Debug = 'Y' THEN

2773: , p_rev_comp_item_id => p_rev_comp_item_id
2774: , p_operation_seq_num => p_operation_seq_num )
2775: LOOP
2776:
2777: IF Bom_Globals.Get_Debug = 'Y' THEN
2778: Error_Handler.Write_Debug('In Eco by Cum Qty, this rev component is invalid. . .' );
2779: END IF;
2780:
2781: l_ret_status := FALSE ;

Line 2798: IF Bom_Globals.Get_Debug = 'Y' THEN

2794: , p_operation_seq_num => p_operation_seq_num
2795: , p_organization_id => p_organization_Id )
2796: LOOP
2797:
2798: IF Bom_Globals.Get_Debug = 'Y' THEN
2799: Error_Handler.Write_Debug('In Eco by range work order, this rev component is invalid. . .' );
2800: END IF;
2801:
2802: l_ret_status := FALSE ;

Line 2811: IF Bom_Globals.Get_Debug = 'Y' THEN

2807: AND l_to_wip_entity_id IS NULL
2808: AND l_from_cum_qty IS NULL
2809: THEN
2810:
2811: IF Bom_Globals.Get_Debug = 'Y' THEN
2812: Error_Handler.Write_Debug('Parent revised item is not Eco by production. . .' );
2813: END IF;
2814:
2815: NULL ;

Line 3196: IF (p_rev_component_rec.transaction_type = Bom_Globals.G_OPR_UPDATE) THEN

3192: g_Rev_Comp_Unexp_Rec := p_Rev_Comp_Unexp_Rec;
3193:
3194: /* 5134934 */
3195: -- Basis type cannot be Lot if there are existing Reference Desigantors.
3196: IF (p_rev_component_rec.transaction_type = Bom_Globals.G_OPR_UPDATE) THEN
3197:
3198: If(p_rev_component_rec.Basis_type = 2) THEN
3199: select count(*) into l_total_rds from bom_reference_designators
3200: where nvl(p_rev_component_rec.acd_type,1) <>3 and component_sequence_id=p_Rev_Comp_Unexp_Rec.component_sequence_id;

Line 3217: IF Bom_Globals.Get_Debug = 'Y'

3213: END IF;
3214:
3215:
3216:
3217: IF Bom_Globals.Get_Debug = 'Y'
3218: THEN
3219: Error_Handler.Write_Debug('Performing Revised component Entity Validation. . .');
3220: END IF;
3221:

Line 3222: l_is_comp_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Component;

3218: THEN
3219: Error_Handler.Write_Debug('Performing Revised component Entity Validation. . .');
3220: END IF;
3221:
3222: l_is_comp_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Component;
3223: l_is_item_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Item;
3224:
3225: IF Bom_Globals.Get_Debug = 'Y' THEN
3226: Error_Handler.Write_Debug('Checked if revised item is unit controlled. . .');

Line 3223: l_is_item_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Item;

3219: Error_Handler.Write_Debug('Performing Revised component Entity Validation. . .');
3220: END IF;
3221:
3222: l_is_comp_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Component;
3223: l_is_item_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Item;
3224:
3225: IF Bom_Globals.Get_Debug = 'Y' THEN
3226: Error_Handler.Write_Debug('Checked if revised item is unit controlled. . .');
3227: Error_Handler.Write_Debug('Org id: ' || to_char(g_rev_Comp_Unexp_Rec.Organization_Id));

Line 3225: IF Bom_Globals.Get_Debug = 'Y' THEN

3221:
3222: l_is_comp_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Component;
3223: l_is_item_unit_controlled := BOM_GLOBALS.Get_Unit_Controlled_Item;
3224:
3225: IF Bom_Globals.Get_Debug = 'Y' THEN
3226: Error_Handler.Write_Debug('Checked if revised item is unit controlled. . .');
3227: Error_Handler.Write_Debug('Org id: ' || to_char(g_rev_Comp_Unexp_Rec.Organization_Id));
3228: Error_Handler.Write_Debug('Item id: ' || to_char(g_rev_Comp_Unexp_Rec.revised_item_id));
3229: Error_Handler.Write_Debug('Comp id: ' || to_char(g_rev_Comp_Unexp_Rec.Component_item_id));

Line 3294: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

3290: --
3291: -- Set the assembly Type of the Assembly
3292: --
3293:
3294: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
3295: THEN
3296: select assembly_type
3297: into g_Assy_Assembly_Type
3298: --bug: 4161794. Introduced new global variable to hold value of assembly type

Line 3315: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3311: -- scheduled revised items need to be update to Open
3312: -- and the ECO status need to be changed to Not Submitted for Approval
3313:
3314:
3315: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3316: THEN
3317: BOM_GLOBALS.Check_Approved_For_Process
3318: (p_change_notice => p_rev_component_rec.eco_name,
3319: p_organization_id => p_rev_comp_unexp_rec.organization_id,

Line 3317: BOM_GLOBALS.Check_Approved_For_Process

3313:
3314:
3315: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3316: THEN
3317: BOM_GLOBALS.Check_Approved_For_Process
3318: (p_change_notice => p_rev_component_rec.eco_name,
3319: p_organization_id => p_rev_comp_unexp_rec.organization_id,
3320: x_processed => l_processed,
3321: x_err_text => l_err_text

Line 3327: BOM_GLOBALS.Set_Request_For_Approval

3323: IF l_processed = TRUE
3324: THEN
3325: -- If the above process returns true then set the ECO approval.
3326: BEGIN
3327: BOM_GLOBALS.Set_Request_For_Approval
3328: (p_change_notice =>
3329: p_rev_component_rec.eco_name,
3330: p_organization_id =>
3331: p_rev_comp_unexp_rec.organization_id,

Line 3340: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check Eco Status . . .' || l_return_status); END IF;

3336: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3337: l_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3338: END;
3339: END IF;
3340: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check Eco Status . . .' || l_return_status); END IF;
3341:
3342: -- Added by MK on 01/26/2001 for ECO New Effectivities
3343: -- Verify the ECO Effectivity, If ECO by WO, Lot Num, Or Cum Qty, then
3344: -- Check if the component exists in the WO or Lot Num.

Line 3346: IF p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE

3342: -- Added by MK on 01/26/2001 for ECO New Effectivities
3343: -- Verify the ECO Effectivity, If ECO by WO, Lot Num, Or Cum Qty, then
3344: -- Check if the component exists in the WO or Lot Num.
3345: --
3346: IF p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE
3347: AND p_rev_component_rec.acd_type IN (2 , 3) -- Change or Disable
3348: THEN
3349:
3350: IF NOT Check_RevCmp_In_ECO_By_WO

Line 3376: IF Bom_Globals.Get_Debug = 'Y' THEN

3372: g_token_tbl.delete;
3373: g_Token_Tbl(1).Token_Name := 'REVISED_COMPONENT_NAME';
3374: g_Token_Tbl(1).Token_Value := p_rev_component_rec.component_item_name;
3375: END IF ;
3376: IF Bom_Globals.Get_Debug = 'Y' THEN
3377: Error_Handler.Write_Debug('Check if the rev component is valid in Eco by Prod. . .' || l_return_status);
3378: END IF;
3379: END IF ;
3380:

Line 3407: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check to end item unit number. . .' || l_return_status); END IF;

3403: );
3404:
3405: l_return_status := FND_API.G_RET_STS_ERROR;
3406:
3407: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check to end item unit number. . .' || l_return_status); END IF;
3408:
3409: END IF;
3410:
3411: --

Line 3439: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE THEN

3435:
3436: --
3437: -- All validations that only apply to Operation Type CREATE
3438: --
3439: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE THEN
3440:
3441: -- When disabling a component, to end item number must be the same
3442: -- as the value in the bill component being disabled.
3443:

Line 3548: IF NOT Check_PrimaryBill AND Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'

3544: g_token_tbl(1).token_value :=
3545: p_rev_component_rec.component_item_name;
3546:
3547: END IF; */
3548: IF NOT Check_PrimaryBill AND Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
3549: THEN
3550: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('ACD type to be add if primary bill does not exist . . .'); END IF;
3551: IF NVL(p_rev_component_rec.acd_type, 1) <> 1 AND
3552: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

Line 3550: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('ACD type to be add if primary bill does not exist . . .'); END IF;

3546:
3547: END IF; */
3548: IF NOT Check_PrimaryBill AND Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
3549: THEN
3550: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('ACD type to be add if primary bill does not exist . . .'); END IF;
3551: IF NVL(p_rev_component_rec.acd_type, 1) <> 1 AND
3552: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3553: THEN
3554: /*****************************************************

Line 3552: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3548: IF NOT Check_PrimaryBill AND Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
3549: THEN
3550: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('ACD type to be add if primary bill does not exist . . .'); END IF;
3551: IF NVL(p_rev_component_rec.acd_type, 1) <> 1 AND
3552: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3553: THEN
3554: /*****************************************************
3555: --
3556: -- If the primary bill does not exist then the acd type

Line 3711: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE

3707: --
3708: -- Item Num Check
3709: --
3710: ********************************************************************/
3711: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE
3712: AND
3713: ( NVL(p_rev_component_rec.acd_type,1) = 1 OR
3714: ( p_rev_component_rec.acd_type = 2 AND
3715: p_rev_component_rec.item_sequence_number <>

Line 3790: IF BOM_Globals.get_debug = 'Y' THEN

3786: THEN
3787: l_return_status := FND_API.G_RET_STS_ERROR;
3788: END IF;
3789:
3790: IF BOM_Globals.get_debug = 'Y' THEN
3791: error_handler.write_debug('Check Item Attribute Validation. . .' || l_Return_Status );
3792: END IF;
3793:
3794: --

Line 3801: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check Common_Other_Orgs returned with result ' || to_char(l_result)); END IF;

3797: -- component to be on the bill.
3798: --
3799: l_result := Check_Common_Other_Orgs;
3800:
3801: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check Common_Other_Orgs returned with result ' || to_char(l_result)); END IF;
3802:
3803: IF l_result <> 0
3804: THEN
3805: IF l_result = 1

Line 3837: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

3833: --
3834: **************************************************************************/
3835:
3836: IF p_control_rec.caller_type <> 'FORM' AND
3837: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
3838: THEN
3839:
3840: --
3841: -- Verify that the user is not trying to Update non-updateable columns

Line 3868: AND p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_UPDATE

3864: IF dereferenced_bom(p_rev_comp_unexp_rec.bill_sequence_id)
3865: THEN
3866: IF valid_common_bom_change(p_rev_component_rec => p_rev_component_rec,
3867: p_Old_Rev_Component_Rec=>p_Old_Rev_Component_Rec)
3868: AND p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_UPDATE
3869: THEN
3870: --if the change on common bom is only in the wip attributes,
3871: --allow it.
3872: NULL;

Line 3908: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3904: /*******************bug:4240031 ends here***********************************/
3905:
3906: IF p_rev_component_rec.old_effectivity_date IS NOT NULL AND
3907: p_rev_component_rec.old_effectivity_date <> FND_API.G_MISS_DATE AND
3908: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3909: THEN
3910: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
3911: THEN
3912: Error_Handler.Add_Error_Token

Line 3926: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3922:
3923: IF p_rev_component_rec.old_operation_sequence_number IS NOT NULL AND
3924: p_rev_component_rec.old_operation_sequence_number <>
3925: FND_API.G_MISS_NUM AND
3926: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3927: THEN
3928: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
3929: THEN
3930: Error_Handler.Add_Error_Token

Line 3945: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3941: -- ACD Type not updateable
3942: --
3943: IF p_rev_component_rec.acd_type <>
3944: p_old_rev_component_rec.acd_type AND
3945: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3946: THEN
3947: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
3948: THEN
3949: Error_Handler.Add_Error_Token

Line 3964: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

3960: -- Verify that the user is not trying to update a component which
3961: -- is Disabled on the ECO
3962: --
3963: IF p_old_rev_component_rec.acd_type = 3 AND
3964: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
3965: THEN
3966: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
3967: THEN
3968: Error_Handler.Add_Error_Token

Line 4007: (BOM_GLOBALS.G_OPR_CREATE, BOM_GLOBALS.G_OPR_UPDATE)

4003: -- checks.
4004: --
4005: **************************************************************************/
4006: IF p_rev_component_rec.Transaction_Type IN
4007: (BOM_GLOBALS.G_OPR_CREATE, BOM_GLOBALS.G_OPR_UPDATE)
4008: THEN
4009: /*********************************************************************
4010: --
4011: -- Verify yield factor

Line 4125: or g_Comp_Item_Type in (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) )) THEN

4121: --For ATO model, option class bills, optional,model,option class
4122: -- components should not be lot based.
4123: IF ( p_rev_component_rec.BASIS_TYPE=2
4124: and (p_rev_component_rec.OPTIONAL=1
4125: or g_Comp_Item_Type in (Bom_Globals.G_MODEL, Bom_Globals.G_OPTION_CLASS) )) THEN
4126: Error_Handler.Add_Error_Token
4127: ( p_Message_Name => 'BOM_LOT_BASED_ATO'
4128: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl
4129: , x_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 4162: IF p_rev_component_rec.transaction_type in (BOM_GLOBALS.G_OPR_CREATE,

4158: -- in its effectivity cyle. In this the validation for Insert and Update will differ
4159: -- If the new_effectivity_date col is not null and missing then it must be greater or =
4160: -- to SYSDATE.
4161: -- Also, disable_date must be greater or equal to the new_effective_date
4162: IF p_rev_component_rec.transaction_type in (BOM_GLOBALS.G_OPR_CREATE,
4163: BOM_GLOBALS.G_OPR_UPDATE) AND
4164: p_rev_component_rec.disable_date <
4165: p_rev_component_rec.start_effective_date THEN
4166: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)

Line 4163: BOM_GLOBALS.G_OPR_UPDATE) AND

4159: -- If the new_effectivity_date col is not null and missing then it must be greater or =
4160: -- to SYSDATE.
4161: -- Also, disable_date must be greater or equal to the new_effective_date
4162: IF p_rev_component_rec.transaction_type in (BOM_GLOBALS.G_OPR_CREATE,
4163: BOM_GLOBALS.G_OPR_UPDATE) AND
4164: p_rev_component_rec.disable_date <
4165: p_rev_component_rec.start_effective_date THEN
4166: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
4167: THEN

Line 4177: ELSIF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_UPDATE AND

4173: );
4174: END IF;
4175: l_return_status := FND_API.G_RET_STS_ERROR;
4176:
4177: ELSIF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_UPDATE AND
4178: p_rev_component_rec.new_effectivity_date IS NOT NULL AND
4179: p_rev_component_rec.new_effectivity_date <> FND_API.G_MISS_DATE AND
4180: (
4181: -- p_rev_component_rec.new_effectivity_date < SYSDATE OR -- Bug3281414

Line 4255: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE AND

4251:
4252: /** This allowed thru the form and should be allowed thru the BO
4253: as well
4254:
4255: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE AND
4256: p_rev_component_rec.acd_type IN (2, 3)
4257: THEN
4258: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Old sequence: ' || to_char(p_rev_comp_Unexp_rec.old_component_sequence_id)); END IF;
4259: BEGIN

Line 4258: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Old sequence: ' || to_char(p_rev_comp_Unexp_rec.old_component_sequence_id)); END IF;

4254:
4255: IF p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE AND
4256: p_rev_component_rec.acd_type IN (2, 3)
4257: THEN
4258: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Old sequence: ' || to_char(p_rev_comp_Unexp_rec.old_component_sequence_id)); END IF;
4259: BEGIN
4260: SELECT 'Component Implemented'
4261: INTO l_dummy
4262: FROM bom_inventory_components

Line 4337: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE AND

4333: -- If the rev component is Create with an Acd_Type of Change or Disable
4334: -- then component pointed to by old_component_sequence_id should
4335: -- be valid against cusror old_comp_csr's conditions.
4336: *********************************************************************/
4337: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE AND
4338: p_rev_component_rec.acd_type IN (2, 3)
4339: THEN
4340:
4341: IF Bom_Globals.Get_Debug = 'Y' THEN

Line 4341: IF Bom_Globals.Get_Debug = 'Y' THEN

4337: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE AND
4338: p_rev_component_rec.acd_type IN (2, 3)
4339: THEN
4340:
4341: IF Bom_Globals.Get_Debug = 'Y' THEN
4342: Error_Handler.Write_Debug('Checking old component : '|| to_char(p_rev_comp_unexp_rec.old_component_sequence_id));
4343: END IF;
4344:
4345: l_eco_for_production := NVL(Bom_Globals.Get_Eco_For_Production,2) ;

Line 4345: l_eco_for_production := NVL(Bom_Globals.Get_Eco_For_Production,2) ;

4341: IF Bom_Globals.Get_Debug = 'Y' THEN
4342: Error_Handler.Write_Debug('Checking old component : '|| to_char(p_rev_comp_unexp_rec.old_component_sequence_id));
4343: END IF;
4344:
4345: l_eco_for_production := NVL(Bom_Globals.Get_Eco_For_Production,2) ;
4346:
4347: FOR old_comp_rec IN old_comp_csr
4348: (p_rev_comp_unexp_rec.old_component_sequence_id,
4349: l_eco_for_production)

Line 4365: IF Bom_Globals.Get_Debug = 'Y' THEN

4361: END IF;
4362: l_return_status := FND_API.G_RET_STS_ERROR;
4363: END LOOP ;
4364:
4365: IF Bom_Globals.Get_Debug = 'Y' THEN
4366: Error_Handler.Write_Debug('After checking old component. Return status is '|| l_return_status);
4367: END IF;
4368:
4369: END IF;

Line 4371: --IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'

4367: END IF;
4368:
4369: END IF;
4370:
4371: --IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4372: --THEN
4373: -- Modified by MK on 11/13/00
4374: IF ( p_rev_component_rec.operation_sequence_number <> 1 AND
4375: -- NVL(p_rev_Component_rec.ACD_Type, 1) = 1

Line 4380: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE

4376: p_rev_Component_rec.ACD_Type = 1
4377: ) OR -- bug 5386719
4378: ( p_rev_component_rec.operation_sequence_number <> 1 AND
4379: p_rev_Component_rec.ACD_Type is NULL and
4380: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE
4381: ) OR
4382: ( p_rev_component_rec.operation_sequence_number <> 1 AND
4383: NVL(p_rev_Component_rec.ACD_Type, 1) = 2 AND
4384: NVL(p_rev_component_rec.new_operation_sequence_number,FND_API.G_MISS_NUM)

Line 4390: BOM_Globals.G_OPR_CREATE

4386: ) OR
4387: ( NVL(p_rev_component_rec.new_operation_sequence_number,1) <> 1 AND
4388: ( ( p_rev_component_rec.ACD_Type = 2 AND
4389: p_rev_component_rec.transaction_type =
4390: BOM_Globals.G_OPR_CREATE
4391: ) OR
4392: p_rev_component_rec.transaction_type =
4393: BOM_Globals.G_OPR_UPDATE
4394: ) AND

Line 4393: BOM_Globals.G_OPR_UPDATE

4389: p_rev_component_rec.transaction_type =
4390: BOM_Globals.G_OPR_CREATE
4391: ) OR
4392: p_rev_component_rec.transaction_type =
4393: BOM_Globals.G_OPR_UPDATE
4394: ) AND
4395: (
4396: NVL(p_old_rev_component_rec.operation_sequence_number, 1) <>
4397: NVL(p_rev_component_rec.new_operation_sequence_number, 1) AND

Line 4437: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check_Op_Seq returned with : ' || l_result); END IF;

4433:
4434: l_result := Check_Op_Seq(l_is_item_unit_controlled);
4435: --arudresh_debug('Result after check_op_seq '||l_result);
4436:
4437: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Check_Op_Seq returned with : ' || l_result); END IF;
4438: IF l_result = 1
4439: THEN
4440: g_Token_Tbl(1).Token_Name := 'REVISED_ITEM_NAME';
4441: g_Token_Tbl(1).Token_Value :=

Line 4470: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO THEN

4466: , p_Token_Tbl => g_Token_Tbl
4467: );
4468: l_return_status := FND_API.G_RET_STS_ERROR;
4469: ELSIF l_result = 2 THEN
4470: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO THEN
4471: g_Token_Tbl(2).Token_Name := 'OP_SEQ_NUM';
4472: g_Token_Tbl(2).Token_Value :=
4473: to_char
4474: (g_Rev_Component_rec.operation_sequence_number);

Line 4509: FND_API.G_MISS_NUM AND Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

4505: ELSIF l_result = 0 AND
4506: p_Rev_Component_rec.old_operation_sequence_number
4507: IS NOT NULL AND
4508: p_Rev_Component_rec.old_operation_sequence_number <>
4509: FND_API.G_MISS_NUM AND Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
4510: THEN
4511: BEGIN
4512: SELECT operation_seq_num
4513: INTO l_result

Line 4546: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Op seq num validation completed with ' || l_return_status); END IF;

4542: END IF; -- Operation_seq_Num Check Ends.
4543: --END IF; -- Validate for plm ends
4544: END IF;
4545:
4546: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Op seq num validation completed with ' || l_return_status); END IF;
4547:
4548: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('BO identifier is '||Bom_Globals.Get_Bo_Identifier); END IF;
4549:
4550: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO AND NVL(p_rev_Component_rec.ACD_Type,1) <> 3 THEN

Line 4548: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('BO identifier is '||Bom_Globals.Get_Bo_Identifier); END IF;

4544: END IF;
4545:
4546: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Op seq num validation completed with ' || l_return_status); END IF;
4547:
4548: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('BO identifier is '||Bom_Globals.Get_Bo_Identifier); END IF;
4549:
4550: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO AND NVL(p_rev_Component_rec.ACD_Type,1) <> 3 THEN
4551: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4552: THEN

Line 4550: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO AND NVL(p_rev_Component_rec.ACD_Type,1) <> 3 THEN

4546: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Op seq num validation completed with ' || l_return_status); END IF;
4547:
4548: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('BO identifier is '||Bom_Globals.Get_Bo_Identifier); END IF;
4549:
4550: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO AND NVL(p_rev_Component_rec.ACD_Type,1) <> 3 THEN
4551: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4552: THEN
4553: IF (p_control_rec.caller_type = 'FORM' AND
4554: p_control_rec.write_to_db)

Line 4551: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'

4547:
4548: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('BO identifier is '||Bom_Globals.Get_Bo_Identifier); END IF;
4549:
4550: IF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO AND NVL(p_rev_Component_rec.ACD_Type,1) <> 3 THEN
4551: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4552: THEN
4553: IF (p_control_rec.caller_type = 'FORM' AND
4554: p_control_rec.write_to_db)
4555: OR

Line 4592: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping dates . . . ' || l_return_status); END IF;

4588: END IF;
4589: -- Since Open Interface allows for Dates to be
4590: -- overlapping do set the error status.
4591: END IF;
4592: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping dates . . . ' || l_return_status); END IF;
4593:
4594: ELSE
4595:
4596: /********************************************************************

Line 4631: ELSIF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO THEN

4627: END IF;
4628: END IF;
4629: END IF;
4630: END IF; -- Validate for PLM check ends
4631: ELSIF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO THEN
4632: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4633: THEN
4634:
4635: IF NOT l_is_item_unit_controlled

Line 4632: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'

4628: END IF;
4629: END IF;
4630: END IF; -- Validate for PLM check ends
4631: ELSIF Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO THEN
4632: IF Nvl(Bom_Globals.Get_Validate_For_Plm,'N') = 'N'
4633: THEN
4634:
4635: IF NOT l_is_item_unit_controlled
4636: THEN

Line 4648: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE THEN

4644:
4645: /* Fix for bug 4585076 - While calling check_overlap_dates function, if txn type is create then pass start_effective_date
4646: else if txn type is update then pass new_effectivity_date.
4647: */
4648: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE THEN
4649: l_new_compare_date := p_rev_component_rec.start_effective_date;
4650: ELSIF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_UPDATE THEN
4651: l_new_compare_date := p_rev_component_rec.new_effectivity_date;
4652: END IF;

Line 4650: ELSIF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_UPDATE THEN

4646: else if txn type is update then pass new_effectivity_date.
4647: */
4648: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE THEN
4649: l_new_compare_date := p_rev_component_rec.start_effective_date;
4650: ELSIF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_UPDATE THEN
4651: l_new_compare_date := p_rev_component_rec.new_effectivity_date;
4652: END IF;
4653:
4654: IF Bom_Validate_Comp_Operation.Check_Overlap_Dates

Line 4678: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping dates . . . ' || l_return_status); END IF;

4674: );
4675: END IF;
4676: l_return_status := FND_API.G_RET_STS_ERROR;
4677: END IF;
4678: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping dates . . . ' || l_return_status); END IF;
4679:
4680: ELSE
4681: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('I am here Inside Unit Eff'); END IF;
4682:

Line 4681: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('I am here Inside Unit Eff'); END IF;

4677: END IF;
4678: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping dates . . . ' || l_return_status); END IF;
4679:
4680: ELSE
4681: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('I am here Inside Unit Eff'); END IF;
4682:
4683: /********************************************************************
4684: --
4685: -- Check for Overlapping numbers for the component being inserted.

Line 4719: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping unit numbers. . .' || l_return_status); END IF;

4715: END IF;
4716: END IF; -- Validate for Plm check ends
4717: END IF;
4718:
4719: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping unit numbers. . .' || l_return_status); END IF;
4720:
4721:
4722: If (p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND g_Assy_Item_Type = Bom_Globals.G_PRODUCT_FAMILY) THEN
4723: l_Result := CheckUnique_PF_Member;

Line 4722: If (p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND g_Assy_Item_Type = Bom_Globals.G_PRODUCT_FAMILY) THEN

4718:
4719: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified overlapping unit numbers. . .' || l_return_status); END IF;
4720:
4721:
4722: If (p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND g_Assy_Item_Type = Bom_Globals.G_PRODUCT_FAMILY) THEN
4723: l_Result := CheckUnique_PF_Member;
4724: IF l_Result = 1 Then
4725: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
4726: THEN

Line 4747: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4743: -- Check whether the entered attributes match with the current
4744: -- component attributes
4745: --
4746: **********************************************************************/
4747: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4748: NVL(p_rev_component_rec.acd_type, 1) = 1
4749: ) OR
4750: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4751: p_rev_component_rec.acd_type = 2

Line 4750: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4746: **********************************************************************/
4747: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4748: NVL(p_rev_component_rec.acd_type, 1) = 1
4749: ) OR
4750: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4751: p_rev_component_rec.acd_type = 2
4752: ) OR
4753: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4754: )

Line 4753: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

4749: ) OR
4750: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4751: p_rev_component_rec.acd_type = 2
4752: ) OR
4753: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4754: )
4755: AND
4756: NVL(p_Old_rev_component_rec.optional, 0) <>
4757: p_rev_component_rec.optional

Line 4797: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4793: --
4794: **********************************************************************/
4795: --
4796: IF p_control_rec.caller_type <> 'FORM' AND
4797: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4798: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
4799: p_rev_component_rec.planning_percent <> 100
4800: ) OR
4801: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

Line 4801: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4797: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4798: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
4799: p_rev_component_rec.planning_percent <> 100
4800: ) OR
4801: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4802: p_rev_component_rec.acd_type = 2
4803: ) OR
4804: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4805: )

Line 4804: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

4800: ) OR
4801: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4802: p_rev_component_rec.acd_type = 2
4803: ) OR
4804: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4805: )
4806: AND
4807: NVL(p_Old_rev_component_rec.planning_percent, 0) <>
4808: p_rev_component_rec.planning_percent

Line 4835: IF g_Assy_Item_Type = Bom_Globals.G_MODEL

4831: g_Token_Tbl(2).Token_Name := 'REVISED_ITEM_NAME';
4832: g_Token_Tbl(2).Token_Value :=
4833: g_rev_component_rec.revised_item_name;
4834: g_Token_Tbl(3).Token_Name := 'ITEM_TYPE';
4835: IF g_Assy_Item_Type = Bom_Globals.G_MODEL
4836: THEN
4837: g_Token_Tbl(3).Token_Value := 'BOM_MODEL_TYPE';
4838: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS THEN
4839: g_Token_Tbl(3).Token_Value :=

Line 4838: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS THEN

4834: g_Token_Tbl(3).Token_Name := 'ITEM_TYPE';
4835: IF g_Assy_Item_Type = Bom_Globals.G_MODEL
4836: THEN
4837: g_Token_Tbl(3).Token_Value := 'BOM_MODEL_TYPE';
4838: ELSIF g_Assy_Item_Type = Bom_Globals.G_OPTION_CLASS THEN
4839: g_Token_Tbl(3).Token_Value :=
4840: 'BOM_OPTION_CLASS_TYPE';
4841: END IF;
4842: g_Token_Tbl(3).Translate := TRUE;

Line 4883: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4879: --
4880: -- Check Required for Revenue / Required to Ship
4881: --
4882: **********************************************************************/
4883: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4884: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
4885: ( p_rev_component_rec.required_for_revenue = 1 OR
4886: p_rev_component_rec.required_to_ship = 1
4887: )

Line 4889: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4885: ( p_rev_component_rec.required_for_revenue = 1 OR
4886: p_rev_component_rec.required_to_ship = 1
4887: )
4888: ) OR
4889: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4890: p_rev_component_rec.acd_type = 2
4891: ) OR
4892: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4893: )

Line 4892: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

4888: ) OR
4889: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4890: p_rev_component_rec.acd_type = 2
4891: ) OR
4892: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
4893: )
4894: AND
4895: ( NVL(p_Old_rev_component_rec.required_for_revenue, 0) <>
4896: p_rev_component_rec.required_for_revenue OR

Line 4958: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified Req for Rev and Shipping . . . ' || l_return_status); END IF;

4954: l_return_status := FND_API.G_RET_STS_ERROR;
4955: END IF;
4956: END IF;
4957:
4958: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Verified Req for Rev and Shipping . . . ' || l_return_status); END IF;
4959:
4960: /*********************************************************************
4961: --
4962: -- Verify the value of SO_Basis

Line 4967: g_Comp_Item_Type <> Bom_Globals.G_OPTION_CLASS

4963: -- first conditon is removed by MK on 11/13/00
4964: *********************************************************************/
4965: IF -- p_control_rec.caller_type = 'FORM' AND
4966: p_rev_component_rec.so_basis = 1 AND
4967: g_Comp_Item_Type <> Bom_Globals.G_OPTION_CLASS
4968: THEN
4969: Error_Handler.Add_Error_Token
4970: ( p_message_name => 'BOM_SO_BASIS_ONE'
4971: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 4986: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

4982: -- Check Check_ATP Flag. Check_ATP can be True only if Assembly has
4983: -- Atp Components flag = Y and the Component has a Check_ATP.
4984: --
4985:
4986: IF (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
4987: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
4988: p_rev_component_rec.check_atp = 1
4989: ) OR
4990: ( ( ( p_rev_component_rec.Transaction_Type =

Line 4991: BOM_GLOBALS.G_OPR_CREATE AND

4987: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
4988: p_rev_component_rec.check_atp = 1
4989: ) OR
4990: ( ( ( p_rev_component_rec.Transaction_Type =
4991: BOM_GLOBALS.G_OPR_CREATE AND
4992: p_rev_component_rec.acd_type = 2
4993: ) OR
4994: p_rev_component_rec.Transaction_Type =
4995: BOM_GLOBALS.G_OPR_UPDATE

Line 4995: BOM_GLOBALS.G_OPR_UPDATE

4991: BOM_GLOBALS.G_OPR_CREATE AND
4992: p_rev_component_rec.acd_type = 2
4993: ) OR
4994: p_rev_component_rec.Transaction_Type =
4995: BOM_GLOBALS.G_OPR_UPDATE
4996: ) AND
4997: NVL(p_old_rev_component_rec.check_atp, 0) <>
4998: p_rev_component_rec.check_atp
4999: AND p_rev_component_rec.check_atp = 1 -- Added by MK on 11/13/00

Line 5030: IF Bom_Globals.Get_Debug = 'Y' THEN

5026: l_return_status := FND_API.G_RET_STS_ERROR;
5027: END IF ;
5028: END IF;
5029:
5030: IF Bom_Globals.Get_Debug = 'Y' THEN
5031: Error_Handler.Write_Debug('After verification of Check ATP . . . ' || l_return_status);
5032: END IF;
5033: -- dbms_output.put_line('After verification of Check ATP, Req for Rev' );
5034: ********************************************************************/

Line 5043: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR

5039: -- Component is an Option Class and BOM is installed.
5040: --
5041: *********************************************************************/
5042:
5043: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5044: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5045: )
5046: AND
5047: NVL(p_rev_component_rec.mutually_exclusive, 2) = 1

Line 5044: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5040: --
5041: *********************************************************************/
5042:
5043: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5044: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5045: )
5046: AND
5047: NVL(p_rev_component_rec.mutually_exclusive, 2) = 1
5048: THEN

Line 5089: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5085: p_control_rec.validation_controller = 'SUPPLY_TYPE')
5086: OR
5087: p_control_rec.caller_type <> 'FORM')
5088: AND
5089: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5090: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5091: p_rev_component_rec.wip_supply_type IS NOT NULL
5092: ) OR
5093: ((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

Line 5093: ((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5089: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5090: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5091: p_rev_component_rec.wip_supply_type IS NOT NULL
5092: ) OR
5093: ((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5094: p_rev_component_rec.acd_type = 2
5095: ) OR
5096: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5097: ))

Line 5096: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5092: ) OR
5093: ((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5094: p_rev_component_rec.acd_type = 2
5095: ) OR
5096: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5097: ))
5098: AND
5099: NVL(p_Old_rev_component_rec.wip_supply_type, 0) <>
5100: p_rev_component_rec.wip_supply_type

Line 5120: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR

5116: OR
5117: p_control_rec.caller_type <> 'FORM'
5118: THEN
5119: -- Check Minimum Quantity which must be <= Component Quantity
5120: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5121: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5122: ) AND
5123: p_rev_component_rec.minimum_allowed_quantity is not null
5124: AND

Line 5121: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5117: p_control_rec.caller_type <> 'FORM'
5118: THEN
5119: -- Check Minimum Quantity which must be <= Component Quantity
5120: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5121: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5122: ) AND
5123: p_rev_component_rec.minimum_allowed_quantity is not null
5124: AND
5125: NOT Check_Min_Quantity THEN

Line 5140: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR

5136: END IF;
5137:
5138: -- Check Maximun Quantity which must be >= Component Quantity or
5139: -- should be NULL if the minimum quantity is NULL.
5140: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5141: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5142: ) AND
5143: p_rev_component_rec.maximum_allowed_quantity IS NOT NULL
5144: AND

Line 5141: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5137:
5138: -- Check Maximun Quantity which must be >= Component Quantity or
5139: -- should be NULL if the minimum quantity is NULL.
5140: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5141: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5142: ) AND
5143: p_rev_component_rec.maximum_allowed_quantity IS NOT NULL
5144: AND
5145: NOT Check_Max_Quantity THEN

Line 5185: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR

5181: Is_Item_ATO := Is_Item_ATO_PTO.replenish_to_order_flag;
5182: Is_Item_PTO := Is_Item_ATO_PTO.pick_components_flag;
5183: END LOOP;
5184:
5185: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5186: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5187: ) AND
5188: (Is_OE_Installed = 'I'
5189: AND ( ( Is_Item_PTO = 'Y'

Line 5186: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5182: Is_Item_PTO := Is_Item_ATO_PTO.pick_components_flag;
5183: END LOOP;
5184:
5185: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE OR
5186: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5187: ) AND
5188: (Is_OE_Installed = 'I'
5189: AND ( ( Is_Item_PTO = 'Y'
5190: ) AND

Line 5255: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Checking Supply Subinventory . . . ' || p_rev_component_rec.Supply_SubInventory); END IF;

5251: END IF;
5252: l_return_status := FND_API.G_RET_STS_ERROR;
5253: END IF;
5254:
5255: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Checking Supply Subinventory . . . ' || p_rev_component_rec.Supply_SubInventory); END IF;
5256:
5257: /*******************************************************************
5258: --
5259: -- Check Supply Subinventory

Line 5266: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5262:
5263: IF -- p_control_rec.caller_type = 'FORM' -- Comment out by MK on 11/13/00
5264: -- AND
5265: p_rev_component_rec.Supply_SubInventory <> FND_API.G_MISS_CHAR AND
5266: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5267: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5268: p_rev_component_rec.Supply_SubInventory IS NOT NULL
5269: ) OR
5270: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

Line 5270: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5266: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5267: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5268: p_rev_component_rec.Supply_SubInventory IS NOT NULL
5269: ) OR
5270: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5271: p_rev_component_rec.acd_type = 2
5272: ) OR
5273: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5274: )

Line 5273: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5269: ) OR
5270: (((p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5271: p_rev_component_rec.acd_type = 2
5272: ) OR
5273: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5274: )
5275: AND
5276: NVL(p_Old_rev_component_rec.supply_subinventory, 'NONE') <>
5277: NVL(p_rev_component_rec.supply_subinventory, 'NONE')

Line 5293: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('After checking Subinventory . . . ' || l_return_status); END IF;

5289: );
5290: END IF;
5291: l_return_status := FND_API.G_RET_STS_ERROR;
5292: END IF;
5293: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('After checking Subinventory . . . ' || l_return_status); END IF;
5294:
5295: -- dbms_output.put_line('Checking Locators . . . .');
5296: /********************************************************************
5297: --

Line 5302: AND (Bom_globals.Get_Caller_Type <> BOM_GLOBALS.G_MASS_CHANGE) -- Bug2739314

5298: -- Check Locators
5299: --
5300: ********************************************************************/
5301: IF p_control_rec.caller_type <> 'FORM'
5302: AND (Bom_globals.Get_Caller_Type <> BOM_GLOBALS.G_MASS_CHANGE) -- Bug2739314
5303: AND
5304: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5305: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5306: p_rev_component_rec.Supply_SubInventory IS NOT NULL AND

Line 5304: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5300: ********************************************************************/
5301: IF p_control_rec.caller_type <> 'FORM'
5302: AND (Bom_globals.Get_Caller_Type <> BOM_GLOBALS.G_MASS_CHANGE) -- Bug2739314
5303: AND
5304: (( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5305: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5306: p_rev_component_rec.Supply_SubInventory IS NOT NULL AND
5307: p_rev_component_rec.Supply_SubInventory <> FND_API.G_MISS_CHAR
5308: ) OR

Line 5309: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND

5305: NVL(p_rev_component_rec.acd_type, 1) = 1 AND
5306: p_rev_component_rec.Supply_SubInventory IS NOT NULL AND
5307: p_rev_component_rec.Supply_SubInventory <> FND_API.G_MISS_CHAR
5308: ) OR
5309: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5310: p_rev_component_rec.acd_type = 2
5311: ) OR
5312: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5313: )

Line 5312: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE

5308: ) OR
5309: ((( p_rev_component_rec.Transaction_Type=BOM_GLOBALS.G_OPR_CREATE AND
5310: p_rev_component_rec.acd_type = 2
5311: ) OR
5312: p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_UPDATE
5313: )
5314: AND
5315: NVL(p_Old_rev_comp_unexp_rec.supply_locator_id, 0) <>
5316: NVL(p_rev_comp_unexp_rec.supply_locator_id, 0)

Line 5476: IF BOM_Globals.Get_Bo_Identifier = BOM_Globals.G_BOM_BO AND

5472: END IF; -- Operation in UPDATE or CREATE
5473:
5474:
5475: -- Added by MK on 06/04/2001
5476: IF BOM_Globals.Get_Bo_Identifier = BOM_Globals.G_BOM_BO AND
5477: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_DELETE
5478: THEN
5479: IF p_rev_comp_unexp_rec.Delete_Group_Name IS NULL OR
5480: p_rev_comp_unexp_rec.Delete_Group_Name = FND_API.G_MISS_CHAR

Line 5477: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_DELETE

5473:
5474:
5475: -- Added by MK on 06/04/2001
5476: IF BOM_Globals.Get_Bo_Identifier = BOM_Globals.G_BOM_BO AND
5477: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_DELETE
5478: THEN
5479: IF p_rev_comp_unexp_rec.Delete_Group_Name IS NULL OR
5480: p_rev_comp_unexp_rec.Delete_Group_Name = FND_API.G_MISS_CHAR
5481: THEN

Line 5493: IF BOM_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug

5489: l_return_status := FND_API.G_RET_STS_ERROR;
5490:
5491: END IF;
5492:
5493: IF BOM_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug
5494: ('Check if Delete Group is missing . . . ' || l_return_status) ;
5495: END IF ;
5496:
5497:

Line 5543: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE )

5539: -- Component Type Rule Validations.
5540: -- Bug No: 4397973. Check Component types only when the current retrun status is success.
5541: IF (l_return_status = FND_API.G_RET_STS_SUCCESS)
5542: THEN
5543: IF ( p_rev_component_rec.Transaction_Type = BOM_GLOBALS.G_OPR_CREATE )
5544: THEN
5545: Bom_Validate_Bom_Component.Check_Component_Type_Rule
5546: ( x_return_status => l_return_status
5547: , x_error_message => l_debug_error_mesg

Line 5565: IF BOM_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug

5561: END IF;
5562: END IF;
5563: END IF;
5564:
5565: IF BOM_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug
5566: ('Check Component Type Rule . . . ' || l_return_status) ;
5567: END IF ;
5568:
5569: x_return_status := l_return_status;

Line 5572: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Entity Validation done . . . Return Status is ' || l_return_status); END IF;

5568:
5569: x_return_status := l_return_status;
5570: x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
5571:
5572: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Entity Validation done . . . Return Status is ' || l_return_status); END IF;
5573:
5574: EXCEPTION
5575:
5576: WHEN FND_API.G_EXC_ERROR THEN

Line 5578: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Expected Error in Rev. Comp. Entity Validation . . .'); END IF;

5574: EXCEPTION
5575:
5576: WHEN FND_API.G_EXC_ERROR THEN
5577:
5578: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Expected Error in Rev. Comp. Entity Validation . . .'); END IF;
5579:
5580: x_return_status := FND_API.G_RET_STS_ERROR;
5581: x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
5582:

Line 5585: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('UNExpected Error in Rev. Comp. Entity Validation . . .'); END IF;

5581: x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
5582:
5583: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5584:
5585: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('UNExpected Error in Rev. Comp. Entity Validation . . .'); END IF;
5586:
5587: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5588: IF FND_MSG_PUB.Check_Msg_Level
5589: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)

Line 5603: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug(SQLERRM || ' ' || TO_CHAR(SQLCODE)); END IF;

5599: END IF;
5600: x_Mesg_Token_Tbl := l_Mesg_Token_Tbl;
5601:
5602: WHEN OTHERS THEN
5603: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug(SQLERRM || ' ' || TO_CHAR(SQLCODE)); END IF;
5604: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5605: IF FND_MSG_PUB.Check_Msg_Level
5606: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
5607: THEN

Line 5665: l_assembly_item_id := Bom_Globals.Get_Assembly_item_Id;

5661: g_Token_Tbl(1).Token_Name := 'REVISED_COMPONENT_NAME';
5662: g_Token_Tbl(1).Token_Value :=
5663: p_rev_component_rec.component_item_name;
5664:
5665: l_assembly_item_id := Bom_Globals.Get_Assembly_item_Id;
5666: l_org_id := Bom_Globals.Get_Org_Id;
5667:
5668: --
5669: -- Check if the user is trying to create/update a record with

Line 5666: l_org_id := Bom_Globals.Get_Org_Id;

5662: g_Token_Tbl(1).Token_Value :=
5663: p_rev_component_rec.component_item_name;
5664:
5665: l_assembly_item_id := Bom_Globals.Get_Assembly_item_Id;
5666: l_org_id := Bom_Globals.Get_Org_Id;
5667:
5668: --
5669: -- Check if the user is trying to create/update a record with
5670: -- missing value when the column value is required.

Line 5754: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO

5750:
5751:
5752: IF p_rev_component_rec.acd_type IS NOT NULL AND
5753: p_rev_component_rec.acd_type NOT IN (1, 2, 3) AND
5754: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_ECO_BO
5755: THEN
5756: g_token_tbl(2).token_name := 'ACD_TYPE';
5757: g_token_tbl(2).token_value := p_rev_component_rec.acd_type;
5758:

Line 5774: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE

5770: -- The following validation should not be done for serial effective items
5771:
5772: -- Validate from_end_item_unit_number 5482117
5773:
5774: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE
5775: AND (p_rev_component_rec.from_end_item_unit_number IS NOT NULL AND p_rev_component_rec.from_end_item_unit_number <> FND_API.G_MISS_CHAR)
5776: AND BOM_EAMUTIL.Asset_group_Item(item_id => l_assembly_item_id, org_id => l_org_Id) = 'N'
5777: THEN
5778: IF NOT Bom_Validate.End_Item_Unit_Number

Line 5801: BOM_GLOBALS.G_OPR_CREATE AND

5797: END IF;
5798: END IF;
5799:
5800: IF p_rev_component_rec.transaction_type =
5801: BOM_GLOBALS.G_OPR_CREATE AND
5802: (p_rev_component_rec.to_end_item_unit_number IS NOT NULL
5803: AND
5804: p_rev_component_rec.to_end_item_unit_number <>
5805: FND_API.G_MISS_CHAR) AND

Line 5863: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE AND

5859:
5860: /* Comment Out by MK on 11/20/00
5861: -- This validation is not required
5862: -- Modified condition by MK on 11/08/00
5863: IF p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE AND
5864: ( p_rev_component_rec.from_end_item_unit_number <> FND_API.G_MISS_CHAR OR
5865: p_rev_component_rec.from_end_item_unit_number IS NOT NULL ) AND
5866: ( p_rev_component_rec.to_end_item_unit_number = FND_API.G_MISS_CHAR OR
5867: p_rev_component_rec.to_end_item_unit_number IS NULL )

Line 6270: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

6266: OR 1=1
6267: THEN
6268: IF p_rev_component_rec.new_effectivity_date IS NOT NULL AND
6269: p_rev_component_rec.new_effectivity_date <> FND_API.G_MISS_DATE AND
6270: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
6271: THEN
6272: /* Check revision exists for revised item */
6273: IF NOT Item_Revision_Exists(p_rev_comp_unexp_rec.revised_item_id,
6274: p_rev_comp_unexp_rec.organization_id,

Line 6326: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

6322: /* commented for bug 3281414
6323: IF p_rev_component_rec.new_effectivity_date IS NOT NULL AND
6324: p_rev_component_rec.new_effectivity_date <> FND_API.G_MISS_DATE AND
6325: p_rev_component_rec.new_effectivity_date < SYSDATE AND
6326: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
6327: THEN
6328: g_token_tbl(1).token_name := 'COMPONENT_ITEM_NAME';
6329: g_token_tbl(1).token_value := p_rev_component_rec.component_item_name;
6330: g_token_tbl(2).token_name := 'EFFECTIVITY_DATE';

Line 6349: /* OR (p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE)*/

6345: END IF;
6346:
6347: /* added a condition to make sure this validation happens during create for any BOM, no matter whether the BOM is fluid or not */
6348: IF (p_rev_comp_unexp_rec.bom_implementation_date IS NULL )
6349: /* OR (p_rev_component_rec.transaction_type = BOM_GLOBALS.G_OPR_CREATE)*/
6350: --Commented for bug 5702625.
6351: THEN
6352: IF p_rev_component_rec.start_effective_date IS NOT NULL AND
6353: p_rev_component_rec.start_effective_date <> FND_API.G_MISS_DATE AND

Line 6354: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

6350: --Commented for bug 5702625.
6351: THEN
6352: IF p_rev_component_rec.start_effective_date IS NOT NULL AND
6353: p_rev_component_rec.start_effective_date <> FND_API.G_MISS_DATE AND
6354: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
6355: THEN
6356: /* Check revision exists for revised item */
6357: Error_handler.write_debug ('Checking for item revision start date');
6358: IF NOT Item_Revision_Exists(p_rev_comp_unexp_rec.revised_item_id,

Line 6412: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO

6408: /*
6409: IF p_rev_component_rec.start_effective_date IS NOT NULL AND
6410: p_rev_component_rec.start_effective_date <> FND_API.G_MISS_DATE AND
6411: trunc(p_rev_component_rec.start_effective_date) < trunc(SYSDATE) AND
6412: Bom_Globals.Get_Bo_Identifier = Bom_Globals.G_BOM_BO
6413: THEN
6414: g_token_tbl(1).token_name := 'COMPONENT_ITEM_NAME';
6415: g_token_tbl(1).token_value := p_rev_component_rec.component_item_name;
6416: g_token_tbl(2).token_name := 'EFFECTIVITY_DATE';

Line 6460: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Checking if the BOM header is implemented . . .'); END IF;

6456:
6457: END IF;
6458:
6459: --Validation to ensure that a pending structure header cannot be modified without an ECO
6460: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Checking if the BOM header is implemented . . .'); END IF;
6461:
6462: IF BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id) IS NOT NULL
6463: AND (p_rev_component_rec.eco_name IS NULL OR p_rev_component_rec.eco_name = FND_API.G_MISS_CHAR)
6464: THEN

Line 6462: IF BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id) IS NOT NULL

6458:
6459: --Validation to ensure that a pending structure header cannot be modified without an ECO
6460: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Checking if the BOM header is implemented . . .'); END IF;
6461:
6462: IF BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id) IS NOT NULL
6463: AND (p_rev_component_rec.eco_name IS NULL OR p_rev_component_rec.eco_name = FND_API.G_MISS_CHAR)
6464: THEN
6465: g_token_tbl(1).token_name := 'ALTERNATE';
6466: g_token_tbl(1).token_value := nvl(p_rev_component_rec.Alternate_BOM_Code, bom_globals.retrieve_message('BOM', 'BOM_PRIMARY'));

Line 6466: g_token_tbl(1).token_value := nvl(p_rev_component_rec.Alternate_BOM_Code, bom_globals.retrieve_message('BOM', 'BOM_PRIMARY'));

6462: IF BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id) IS NOT NULL
6463: AND (p_rev_component_rec.eco_name IS NULL OR p_rev_component_rec.eco_name = FND_API.G_MISS_CHAR)
6464: THEN
6465: g_token_tbl(1).token_name := 'ALTERNATE';
6466: g_token_tbl(1).token_value := nvl(p_rev_component_rec.Alternate_BOM_Code, bom_globals.retrieve_message('BOM', 'BOM_PRIMARY'));
6467: g_token_tbl(2).token_name := 'ASSY_ITEM';
6468: g_token_tbl(2).token_value := p_rev_component_rec.Revised_Item_Name;
6469: g_token_tbl(3).token_name := 'CHANGE_NOTICE';
6470: g_token_tbl(3).token_value := BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id);

Line 6470: g_token_tbl(3).token_value := BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id);

6466: g_token_tbl(1).token_value := nvl(p_rev_component_rec.Alternate_BOM_Code, bom_globals.retrieve_message('BOM', 'BOM_PRIMARY'));
6467: g_token_tbl(2).token_name := 'ASSY_ITEM';
6468: g_token_tbl(2).token_value := p_rev_component_rec.Revised_Item_Name;
6469: g_token_tbl(3).token_name := 'CHANGE_NOTICE';
6470: g_token_tbl(3).token_value := BOM_GLOBALS.Get_Bill_Header_ECN(p_rev_comp_unexp_rec.bill_Sequence_id);
6471:
6472: Error_Handler.Add_Error_Token
6473: ( p_Message_Name => 'BOM_HEADER_UNIMPLEMENTED'
6474: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 6490: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Some unknown error in Attribute Validation . . .' || SQLERRM ); END IF;

6486:
6487: EXCEPTION
6488:
6489: WHEN OTHERS THEN
6490: IF Bom_Globals.Get_Debug = 'Y' THEN Error_Handler.Write_Debug('Some unknown error in Attribute Validation . . .' || SQLERRM ); END IF;
6491:
6492: Error_Handler.Add_Error_Token
6493: ( p_Message_Name => NULL
6494: , p_Message_Text =>

Line 6535: BOM_GLOBALS.G_OPR_DELETE

6531: --
6532: -- Verify that the component is not already cancelled.
6533: --
6534: IF p_rev_component_rec.Transaction_Type =
6535: BOM_GLOBALS.G_OPR_DELETE
6536: THEN
6537: BEGIN
6538: SELECT 'Component cancelled'
6539: INTO l_dummy

Line 6644: IF l_return_status = BOM_Globals.G_RECORD_FOUND AND

6640: , x_mesg_Token_tbl => l_mesg_token_tbl
6641: , x_Return_Status => l_return_status
6642: );
6643:
6644: IF l_return_status = BOM_Globals.G_RECORD_FOUND AND
6645: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE
6646: THEN
6647: Error_Handler.Add_Error_Token
6648: ( x_Mesg_token_tbl => l_Mesg_Token_Tbl

Line 6645: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE

6641: , x_Return_Status => l_return_status
6642: );
6643:
6644: IF l_return_status = BOM_Globals.G_RECORD_FOUND AND
6645: p_rev_component_rec.transaction_type = BOM_Globals.G_OPR_CREATE
6646: THEN
6647: Error_Handler.Add_Error_Token
6648: ( x_Mesg_token_tbl => l_Mesg_Token_Tbl
6649: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 6654: ELSIF l_return_status = BOM_Globals.G_RECORD_NOT_FOUND AND

6650: , p_message_name => 'BOM_REV_COMP_ALREADY_EXISTS'
6651: , p_token_tbl => l_token_tbl
6652: );
6653: l_return_status := FND_API.G_RET_STS_ERROR;
6654: ELSIF l_return_status = BOM_Globals.G_RECORD_NOT_FOUND AND
6655: p_rev_component_rec.transaction_type IN
6656: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE)
6657: THEN
6658: Error_Handler.Add_Error_Token

Line 6656: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE)

6652: );
6653: l_return_status := FND_API.G_RET_STS_ERROR;
6654: ELSIF l_return_status = BOM_Globals.G_RECORD_NOT_FOUND AND
6655: p_rev_component_rec.transaction_type IN
6656: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE)
6657: THEN
6658: Error_Handler.Add_Error_Token
6659: ( x_Mesg_token_tbl => l_Mesg_Token_Tbl
6660: , p_Mesg_Token_Tbl => l_Mesg_Token_Tbl

Line 6683: IF l_return_status = Bom_Globals.G_RECORD_FOUND THEN

6679:
6680: /* Assign the relevant transaction type for SYNC operations */
6681:
6682: IF p_rev_component_rec.transaction_type = 'SYNC' THEN
6683: IF l_return_status = Bom_Globals.G_RECORD_FOUND THEN
6684: x_old_rev_component_rec.transaction_type :=
6685: Bom_Globals.G_OPR_UPDATE;
6686: ELSE
6687: x_old_rev_component_rec.transaction_type :=

Line 6685: Bom_Globals.G_OPR_UPDATE;

6681:
6682: IF p_rev_component_rec.transaction_type = 'SYNC' THEN
6683: IF l_return_status = Bom_Globals.G_RECORD_FOUND THEN
6684: x_old_rev_component_rec.transaction_type :=
6685: Bom_Globals.G_OPR_UPDATE;
6686: ELSE
6687: x_old_rev_component_rec.transaction_type :=
6688: Bom_Globals.G_OPR_CREATE;
6689: END IF;

Line 6688: Bom_Globals.G_OPR_CREATE;

6684: x_old_rev_component_rec.transaction_type :=
6685: Bom_Globals.G_OPR_UPDATE;
6686: ELSE
6687: x_old_rev_component_rec.transaction_type :=
6688: Bom_Globals.G_OPR_CREATE;
6689: END IF;
6690: END IF;
6691: l_return_status := FND_API.G_RET_STS_SUCCESS;
6692:

Line 6743: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE,

6739: -- and given an error.
6740: *************************************************************/
6741:
6742: IF p_rev_component_rec.transaction_type IN
6743: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE,
6744: BOM_Globals.G_OPR_CANCEL)
6745: THEN
6746: FOR Component IN c_GetComponent LOOP
6747: IF NVL(Component.revised_item_sequence_id, 0) <>

Line 6744: BOM_Globals.G_OPR_CANCEL)

6740: *************************************************************/
6741:
6742: IF p_rev_component_rec.transaction_type IN
6743: (BOM_Globals.G_OPR_UPDATE, BOM_Globals.G_OPR_DELETE,
6744: BOM_Globals.G_OPR_CANCEL)
6745: THEN
6746: FOR Component IN c_GetComponent LOOP
6747: IF NVL(Component.revised_item_sequence_id, 0) <>
6748: NVL(p_rev_comp_unexp_rec.revised_item_sequence_id,0)

Line 6871: (NVL(BOM_Globals.Get_MDL_Item_Access,0),

6867: WHERE inventory_item_id = p_component_item_id
6868: AND organization_id = p_organization_id;
6869:
6870: IF l_rev_comp_item_type NOT IN
6871: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
6872: NVL(BOM_Globals.Get_OC_Item_Access,0),
6873: NVL(BOM_Globals.Get_PLN_Item_Access,0),
6874: NVL(BOM_Globals.Get_STD_Item_Access,0)
6875: )

Line 6872: NVL(BOM_Globals.Get_OC_Item_Access,0),

6868: AND organization_id = p_organization_id;
6869:
6870: IF l_rev_comp_item_type NOT IN
6871: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
6872: NVL(BOM_Globals.Get_OC_Item_Access,0),
6873: NVL(BOM_Globals.Get_PLN_Item_Access,0),
6874: NVL(BOM_Globals.Get_STD_Item_Access,0)
6875: )
6876: THEN

Line 6873: NVL(BOM_Globals.Get_PLN_Item_Access,0),

6869:
6870: IF l_rev_comp_item_type NOT IN
6871: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
6872: NVL(BOM_Globals.Get_OC_Item_Access,0),
6873: NVL(BOM_Globals.Get_PLN_Item_Access,0),
6874: NVL(BOM_Globals.Get_STD_Item_Access,0)
6875: )
6876: THEN
6877: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';

Line 6874: NVL(BOM_Globals.Get_STD_Item_Access,0)

6870: IF l_rev_comp_item_type NOT IN
6871: (NVL(BOM_Globals.Get_MDL_Item_Access,0),
6872: NVL(BOM_Globals.Get_OC_Item_Access,0),
6873: NVL(BOM_Globals.Get_PLN_Item_Access,0),
6874: NVL(BOM_Globals.Get_STD_Item_Access,0)
6875: )
6876: THEN
6877: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';
6878: l_token_tbl(1).token_value := p_component_name;

Line 6928: IF BOM_Globals.Is_RComp_Cancl IS NULL THEN

6924: -- parent record is not cancelled.
6925: --
6926: ********************************************************************/
6927:
6928: IF BOM_Globals.Is_RComp_Cancl IS NULL THEN
6929: FOR RevComp IN c_CheckCancelled
6930: LOOP
6931: l_token_tbl.DELETE;
6932: l_Token_Tbl(1).Token_Name := 'REVISED_COMPONENT_NAME';

Line 6950: IF NOT BOM_Globals.Get_Unit_Effectivity

6946: -- Checks that unit effective items are allowed only if the profile
6947: -- value allows them (profile value stored in system_information)
6948: *********************************************************************/
6949:
6950: IF NOT BOM_Globals.Get_Unit_Effectivity
6951: THEN
6952: IF BOM_Globals.Get_Unit_Controlled_Component
6953: THEN
6954: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';

Line 6952: IF BOM_Globals.Get_Unit_Controlled_Component

6948: *********************************************************************/
6949:
6950: IF NOT BOM_Globals.Get_Unit_Effectivity
6951: THEN
6952: IF BOM_Globals.Get_Unit_Controlled_Component
6953: THEN
6954: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';
6955: l_token_tbl(1).token_value :=
6956: p_component_name;

Line 6969: IF NOT BOM_Globals.Get_Unit_Controlled_Item AND

6965: );
6966: l_return_status := FND_API.G_RET_STS_ERROR;
6967: END IF;
6968: ELSE
6969: IF NOT BOM_Globals.Get_Unit_Controlled_Item AND
6970: BOM_Globals.Get_Unit_Controlled_Component
6971: THEN
6972: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';
6973: l_token_tbl(1).token_value :=

Line 6970: BOM_Globals.Get_Unit_Controlled_Component

6966: l_return_status := FND_API.G_RET_STS_ERROR;
6967: END IF;
6968: ELSE
6969: IF NOT BOM_Globals.Get_Unit_Controlled_Item AND
6970: BOM_Globals.Get_Unit_Controlled_Component
6971: THEN
6972: l_token_tbl(1).token_name := 'REVISED_COMPONENT_NAME';
6973: l_token_tbl(1).token_value :=
6974: p_component_name;

Line 7230: Bom_Globals.Set_Debug ('Y');

7226: component and call check_attributes. check_entity */
7227:
7228: Error_Handler.Initialize;
7229: Error_Handler.Set_Debug ('Y');
7230: Bom_Globals.Set_Debug ('Y');
7231:
7232:
7233: Error_Handler.Open_Debug_Session
7234: ( p_debug_filename => l_debug_filename

Line 7250: Bom_Globals.Init_System_Info_Rec

7246:
7247: --Load environment information into the SYSTEM_INFORMATION record
7248: -- (USER_ID, LOGIN_ID, PROG_APPID, PROG_ID)
7249:
7250: Bom_Globals.Init_System_Info_Rec
7251: ( x_mesg_token_tbl => l_mesg_token_tbl
7252: , x_return_status => l_return_status
7253: );
7254:

Line 7261: Bom_Globals.Set_Unit_Effectivity (TRUE);

7257: IF (FND_PROFILE.DEFINED('PJM:PJM_UNITEFF_NO_EFFECT') AND
7258: FND_PROFILE.VALUE('PJM:PJM_UNITEFF_NO_EFFECT') = 'Y')
7259: OR (BOM_EAMUTIL.Enabled = 'Y')
7260: THEN
7261: Bom_Globals.Set_Unit_Effectivity (TRUE);
7262: ELSE
7263: Bom_Globals.Set_Unit_Effectivity (FALSE);
7264: END IF;
7265:

Line 7263: Bom_Globals.Set_Unit_Effectivity (FALSE);

7259: OR (BOM_EAMUTIL.Enabled = 'Y')
7260: THEN
7261: Bom_Globals.Set_Unit_Effectivity (TRUE);
7262: ELSE
7263: Bom_Globals.Set_Unit_Effectivity (FALSE);
7264: END IF;
7265:
7266: IF l_return_status <> FND_API.G_RET_STS_SUCCESS
7267: THEN

Line 7274: Bom_Globals.Set_BO_Identifier(p_bo_identifier);

7270:
7271: Error_Handler.Write_Debug('After open debug ');
7272:
7273: Error_Handler.Set_BO_Identifier(p_bo_identifier);
7274: Bom_Globals.Set_BO_Identifier(p_bo_identifier);
7275:
7276: /* Set the system information record values for assembly_item_id
7277: and org_id. These values will be used for validating serial effective
7278: assemblies */

Line 7280: Bom_Globals.Set_Org_Id (p_organization_id);

7276: /* Set the system information record values for assembly_item_id
7277: and org_id. These values will be used for validating serial effective
7278: assemblies */
7279:
7280: Bom_Globals.Set_Org_Id (p_organization_id);
7281: Bom_Globals.Set_Assembly_Item_Id (p_revised_item_id);
7282:
7283: Error_Handler.Write_Debug('after set org ');
7284:

Line 7281: Bom_Globals.Set_Assembly_Item_Id (p_revised_item_id);

7277: and org_id. These values will be used for validating serial effective
7278: assemblies */
7279:
7280: Bom_Globals.Set_Org_Id (p_organization_id);
7281: Bom_Globals.Set_Assembly_Item_Id (p_revised_item_id);
7282:
7283: Error_Handler.Write_Debug('after set org ');
7284:
7285: x_return_status := 'S';

Line 7293: l_Assembly_Item_Name := Bom_Globals.Get_Item_Name(p_revised_item_id,

7289: BOM_VALIDATE_BOM_COMPONENT.Validate_All_Attributes from
7290: java call.*/
7291: IF (p_revised_item_name IS NULL)
7292: THEN
7293: l_Assembly_Item_Name := Bom_Globals.Get_Item_Name(p_revised_item_id,
7294: p_organization_id);
7295: ELSE
7296: l_Assembly_Item_Name := p_revised_item_name;
7297: END IF;

Line 7301: l_Component_Item_Name := Bom_Globals.Get_Item_Name(p_component_item_id,

7297: END IF;
7298:
7299: IF (p_component_item_name IS NULL)
7300: THEN
7301: l_Component_Item_Name := Bom_Globals.Get_Item_Name(p_component_item_id,
7302: p_organization_id);
7303: ELSE
7304: l_Component_Item_Name := p_component_item_name;
7305: END IF;

Line 7556: Bom_Globals.Set_Unit_Controlled_Item (

7552: END IF;
7553:
7554: /* Set the value for unit controlled item in system information record*/
7555:
7556: Bom_Globals.Set_Unit_Controlled_Item (
7557: p_inventory_item_id => p_revised_item_id,
7558: p_organization_id => p_organization_id);
7559:
7560: /* Perform the attribute validation */

Line 7584: /* Mark the Validate plm flag in BOM Globals to 'Y' to avoid the

7580:
7581: Return;
7582: END IF;
7583:
7584: /* Mark the Validate plm flag in BOM Globals to 'Y' to avoid the
7585: following validations
7586: 1. Overlap
7587: 2. Check Operation sequence number uniqueness
7588: 3. Checking ACD TYPE when there is no primary bill

Line 7590: Bom_Globals.Set_Validate_For_Plm('Y');

7586: 1. Overlap
7587: 2. Check Operation sequence number uniqueness
7588: 3. Checking ACD TYPE when there is no primary bill
7589: */
7590: Bom_Globals.Set_Validate_For_Plm('Y');
7591:
7592: /* Perform the entity validation */
7593:
7594: Bom_Validate_Bom_Component.Check_Entity