DBA Data[Home] [Help]

APPS.FLM_MMM_CALCULATION dependencies on STANDARD

Line 210: AND SL1.ITEM_TYPE_CODE in ('STANDARD', 'CONFIG', 'INCLUDED', 'OPTION')

206: AND MSI1.INVENTORY_ITEM_ID = SL1.INVENTORY_ITEM_ID
207: AND SL1.ORDERED_QUANTITY > 0
208: AND SL1.VISIBLE_DEMAND_FLAG = 'Y'
209: AND SL1.OPEN_FLAG = 'Y'
210: AND SL1.ITEM_TYPE_CODE in ('STANDARD', 'CONFIG', 'INCLUDED', 'OPTION')
211: AND OE_INSTALL.GET_ACTIVE_PRODUCT = 'ONT'
212: AND wl.organization_id = sl1.ship_from_org_id
213: AND wl.line_id in (select line_id
214: from bom_operational_routings bor2

Line 824: SELECT bos.standard_operation_id standard_operation_id,

820: i_calc_op_type IN NUMBER,
821: i_demand IN t_demand_table) IS
822:
823: CURSOR op_seqs(i_assembly_item_id NUMBER) IS
824: SELECT bos.standard_operation_id standard_operation_id,
825: nvl(bos.net_planning_percent, 100) net_planning_percent,
826: nvl(bos.reverse_cumulative_yield, 1) reverse_cumulative_yield,
827: bos.operation_type operation_type,
828: bos.machine_time_calc machine_time,

Line 840: ORDER BY bos.standard_operation_id;

836: AND bor.cfm_routing_flag = 1
837: AND bor.mixed_model_map_flag = 1
838: AND bor.common_routing_sequence_id = bos.routing_sequence_id
839: AND bos.operation_type = i_calc_op_type
840: ORDER BY bos.standard_operation_id;
841:
842: l_npp NUMBER;
843: l_rcy NUMBER;
844: l_index NUMBER;

Line 887: op_seq_rec.standard_operation_id || ':'||

883: i_organization_id || ':'||
884: i_demand(l_index).assembly_item_id || ':'||
885: op_seq_rec.line_id || ':'||
886: op_seq_rec.operation_type || ':'||
887: op_seq_rec.standard_operation_id || ':'||
888: fnd_global.user_id || ':'||
889: sysdate || ':'||
890: fnd_global.user_id || ':'||
891: sysdate || ':'||

Line 907: standard_operation_id,

903: organization_id,
904: assembly_item_id,
905: line_id,
906: operation_type,
907: standard_operation_id,
908: created_by,
909: creation_date,
910: last_updated_by,
911: last_update_date,

Line 922: op_seq_rec.standard_operation_id,

918: i_organization_id,
919: i_demand(l_index).assembly_item_id,
920: op_seq_rec.line_id,
921: op_seq_rec.operation_type,
922: op_seq_rec.standard_operation_id,
923: fnd_global.user_id,
924: sysdate,
925: fnd_global.user_id,
926: sysdate,

Line 964: standard_operation_id NUMBER,

960: i_replan_flag IN VARCHAR2) IS
961:
962: -- local type
963: TYPE tl_ipk_rec IS RECORD (
964: standard_operation_id NUMBER,
965: ipk_assigned NUMBER);
966: TYPE tl_ipk_tbl IS TABLE OF tl_ipk_rec
967: INDEX BY BINARY_INTEGER;
968:

Line 970: SELECT it.standard_operation_id,

966: TYPE tl_ipk_tbl IS TABLE OF tl_ipk_rec
967: INDEX BY BINARY_INTEGER;
968:
969: CURSOR op_takt IS
970: SELECT it.standard_operation_id,
971: it.line_id,
972: it.operation_type,
973: nvl(line.hours_per_day,1)/
974: nvl(sum(it.process_volume), 1) operation_takt

Line 984: GROUP BY it.standard_operation_id, it.line_id,

980: AND it.plan_id = i_plan_id
981: AND it.organization_id = i_organization_id
982: AND it.line_id = line.line_id
983: AND it.operation_type = i_calc_op_type
984: GROUP BY it.standard_operation_id, it.line_id,
985: it.operation_type, line.hours_per_day;
986:
987: CURSOR all_ipks IS
988: SELECT standard_operation_id op_id,

Line 988: SELECT standard_operation_id op_id,

984: GROUP BY it.standard_operation_id, it.line_id,
985: it.operation_type, line.hours_per_day;
986:
987: CURSOR all_ipks IS
988: SELECT standard_operation_id op_id,
989: ipk_assigned
990: FROM flm_mmm_operations
991: WHERE plan_id = i_plan_id
992: AND organization_id = i_organization_id

Line 1005: l_ipks(ipk_rec.op_id).standard_operation_id := ipk_rec.op_id;

1001: IF i_replan_flag = C_REPLAN_FLAG_YES THEN
1002: l_ipks.DELETE;
1003:
1004: FOR ipk_rec IN all_ipks LOOP
1005: l_ipks(ipk_rec.op_id).standard_operation_id := ipk_rec.op_id;
1006: l_ipks(ipk_rec.op_id).ipk_assigned := ipk_rec.ipk_assigned;
1007: END LOOP;
1008:
1009: DELETE FROM flm_mmm_operations

Line 1023: IF l_ipks.EXISTS(op_takt_rec.standard_operation_id) THEN

1019: print_log('calculating operation takt');
1020: END IF;
1021:
1022: FOR op_takt_rec IN op_takt LOOP
1023: IF l_ipks.EXISTS(op_takt_rec.standard_operation_id) THEN
1024: l_ipk_assigned := l_ipks(op_takt_rec.standard_operation_id).ipk_assigned;
1025:
1026: ELSE
1027: BEGIN

Line 1024: l_ipk_assigned := l_ipks(op_takt_rec.standard_operation_id).ipk_assigned;

1020: END IF;
1021:
1022: FOR op_takt_rec IN op_takt LOOP
1023: IF l_ipks.EXISTS(op_takt_rec.standard_operation_id) THEN
1024: l_ipk_assigned := l_ipks(op_takt_rec.standard_operation_id).ipk_assigned;
1025:
1026: ELSE
1027: BEGIN
1028: SELECT ipk_assigned

Line 1033: AND standard_operation_id = op_takt_rec.standard_operation_id;

1029: INTO l_ipk_assigned
1030: FROM flm_mmm_operations
1031: WHERE plan_id = -1
1032: AND organization_id = i_organization_id
1033: AND standard_operation_id = op_takt_rec.standard_operation_id;
1034:
1035: EXCEPTION
1036: WHEN OTHERS THEN
1037: l_ipk_assigned := NULL;

Line 1046: standard_operation_id,

1042:
1043: INSERT INTO flm_mmm_operations (
1044: plan_id,
1045: organization_id,
1046: standard_operation_id,
1047: created_by,
1048: creation_date,
1049: last_updated_by,
1050: last_update_date,

Line 1058: op_takt_rec.standard_operation_id,

1054: ipk_assigned
1055: ) VALUES (
1056: i_plan_id,
1057: i_organization_id,
1058: op_takt_rec.standard_operation_id,
1059: fnd_global.user_id,
1060: sysdate,
1061: fnd_global.user_id,
1062: sysdate,

Line 1093: SELECT standard_operation_id

1089: l_labor_wt NUMBER;
1090: l_elapsed_wt NUMBER;
1091:
1092: CURSOR operations IS
1093: SELECT standard_operation_id
1094: FROM flm_mmm_operations
1095: WHERE plan_id = i_plan_id
1096: AND organization_id = i_organization_id
1097: AND operation_type = i_calc_op_type;

Line 1116: AND standard_operation_id = op_rec.standard_operation_id

1112: l_elapsed_wt
1113: FROM flm_mmm_op_items
1114: WHERE plan_id = i_plan_id
1115: AND organization_id = i_organization_id
1116: AND standard_operation_id = op_rec.standard_operation_id
1117: GROUP BY standard_operation_id;
1118:
1119: -- update operation records
1120: UPDATE flm_mmm_operations

Line 1117: GROUP BY standard_operation_id;

1113: FROM flm_mmm_op_items
1114: WHERE plan_id = i_plan_id
1115: AND organization_id = i_organization_id
1116: AND standard_operation_id = op_rec.standard_operation_id
1117: GROUP BY standard_operation_id;
1118:
1119: -- update operation records
1120: UPDATE flm_mmm_operations
1121: SET machine_weighted_time = l_machine_wt,

Line 1126: AND standard_operation_id = op_rec.standard_operation_id;

1122: labor_weighted_time = l_labor_wt,
1123: elapsed_weighted_time = l_elapsed_wt
1124: WHERE plan_id = i_plan_id
1125: AND organization_id = i_organization_id
1126: AND standard_operation_id = op_rec.standard_operation_id;
1127:
1128: END LOOP;
1129:
1130: IF G_DEBUG THEN

Line 1151: standard_operation_id NUMBER,

1147:
1148: -- local types
1149: TYPE tl_res_rec IS RECORD(
1150: resource_id NUMBER,
1151: standard_operation_id NUMBER,
1152: resource_assigned NUMBER);
1153: TYPE tl_res_tbl IS TABLE OF tl_res_rec
1154: INDEX BY BINARY_INTEGER;
1155:

Line 1160: SELECT fmo.standard_operation_id,

1156: l_hour_uom VARCHAR2(3);
1157: l_hour_conv NUMBER;
1158:
1159: CURSOR operations IS
1160: SELECT fmo.standard_operation_id,
1161: fmo.operation_type,
1162: fmo.line_id,
1163: fmo.operation_takt,
1164: fml.hours_per_day

Line 1175: CURSOR resources(i_standard_operation_id NUMBER) IS

1171: AND fml.organization_id = i_organization_id
1172: AND fml.calculation_operation_type = i_calc_op_type
1173: AND fml.line_id = fmo.line_id;
1174:
1175: CURSOR resources(i_standard_operation_id NUMBER) IS
1176: SELECT bor.resource_id,
1177: it.assembly_item_id,
1178: it.process_volume,
1179: sum(bor.usage_rate_or_amount * nvl(muc.conversion_rate, 0) /

Line 1191: AND op.standard_operation_id = i_standard_operation_id

1187: bom_resources br,
1188: mtl_uom_conversions muc
1189: WHERE op.plan_id = i_plan_id
1190: AND op.organization_id = i_organization_id
1191: AND op.standard_operation_id = i_standard_operation_id
1192: AND it.plan_id = i_plan_id
1193: AND it.organization_id = i_organization_id
1194: AND it.standard_operation_id = op.standard_operation_id
1195: AND brtg.organization_id = i_organization_id

Line 1194: AND it.standard_operation_id = op.standard_operation_id

1190: AND op.organization_id = i_organization_id
1191: AND op.standard_operation_id = i_standard_operation_id
1192: AND it.plan_id = i_plan_id
1193: AND it.organization_id = i_organization_id
1194: AND it.standard_operation_id = op.standard_operation_id
1195: AND brtg.organization_id = i_organization_id
1196: AND brtg.assembly_item_id = it.assembly_item_id
1197: AND brtg.mixed_model_map_flag = 1
1198: AND brtg.common_routing_sequence_id = bos1.routing_sequence_id

Line 1200: AND bos1.standard_operation_id = it.standard_operation_id

1196: AND brtg.assembly_item_id = it.assembly_item_id
1197: AND brtg.mixed_model_map_flag = 1
1198: AND brtg.common_routing_sequence_id = bos1.routing_sequence_id
1199: AND brtg.common_routing_sequence_id = bos2.routing_sequence_id
1200: AND bos1.standard_operation_id = it.standard_operation_id
1201: AND (( bos1.operation_type = 3
1202: AND bos2.line_op_seq_id = bos1.operation_sequence_id) or
1203: ( bos1.operation_type = 2
1204: AND bos2.process_op_seq_id = bos1.operation_sequence_id))

Line 1214: standard_operation_id op_id,

1210: ORDER BY bor.resource_id;
1211:
1212: CURSOR all_res_assigned IS
1213: SELECT resource_id,
1214: standard_operation_id op_id,
1215: resource_assigned
1216: FROM flm_mmm_op_resources
1217: WHERE plan_id = i_plan_id
1218: AND organization_id = i_organization_id

Line 1237: l_resources(i).standard_operation_id := res_rec.op_id;

1233: l_resources.DELETE;
1234: i := 0;
1235: FOR res_rec IN all_res_assigned LOOP
1236: l_resources(i).resource_id := res_rec.resource_id;
1237: l_resources(i).standard_operation_id := res_rec.op_id;
1238: l_resources(i).resource_assigned := nvl(res_rec.resource_assigned, 0);
1239: i := i+1;
1240: END LOOP;
1241:

Line 1276: FOR rs_rec IN resources(op_rec.standard_operation_id) LOOP

1272: END IF;
1273:
1274: l_total_rs := 0;
1275: l_res_id := null;
1276: FOR rs_rec IN resources(op_rec.standard_operation_id) LOOP
1277: IF G_DEBUG THEN
1278: print_log('op: '||op_rec.standard_operation_id||' res: '||
1279: rs_rec.resource_id||' item: '||rs_rec.assembly_item_id);
1280: END IF;

Line 1278: print_log('op: '||op_rec.standard_operation_id||' res: '||

1274: l_total_rs := 0;
1275: l_res_id := null;
1276: FOR rs_rec IN resources(op_rec.standard_operation_id) LOOP
1277: IF G_DEBUG THEN
1278: print_log('op: '||op_rec.standard_operation_id||' res: '||
1279: rs_rec.resource_id||' item: '||rs_rec.assembly_item_id);
1280: END IF;
1281:
1282: IF l_res_id IS NULL THEN

Line 1299: AND standard_operation_id = op_rec.standard_operation_id

1295: INTO l_resource_assigned
1296: FROM flm_mmm_op_resources
1297: WHERE plan_id = -1
1298: AND organization_id = i_organization_id
1299: AND standard_operation_id = op_rec.standard_operation_id
1300: AND resource_id = l_res_id;
1301:
1302: EXCEPTION
1303: WHEN OTHERS THEN

Line 1312: standard_operation_id,

1308: INSERT INTO flm_mmm_op_resources (
1309: plan_id,
1310: organization_id,
1311: resource_id,
1312: standard_operation_id,
1313: created_by,
1314: creation_date,
1315: last_updated_by,
1316: last_update_date,

Line 1325: op_rec.standard_operation_id,

1321: ) VALUES (
1322: i_plan_id,
1323: i_organization_id,
1324: l_res_id,
1325: op_rec.standard_operation_id,
1326: fnd_global.user_id,
1327: sysdate,
1328: fnd_global.user_id,
1329: sysdate,

Line 1354: AND standard_operation_id = op_rec.standard_operation_id

1350: INTO l_resource_assigned
1351: FROM flm_mmm_op_resources
1352: WHERE plan_id = -1
1353: AND organization_id = i_organization_id
1354: AND standard_operation_id = op_rec.standard_operation_id
1355: AND resource_id = l_res_id;
1356:
1357: EXCEPTION
1358: WHEN OTHERS THEN

Line 1367: standard_operation_id,

1363: INSERT INTO flm_mmm_op_resources (
1364: plan_id,
1365: organization_id,
1366: resource_id,
1367: standard_operation_id,
1368: created_by,
1369: creation_date,
1370: last_updated_by,
1371: last_update_date,

Line 1380: op_rec.standard_operation_id,

1376: ) VALUES (
1377: i_plan_id,
1378: i_organization_id,
1379: l_res_id,
1380: op_rec.standard_operation_id,
1381: fnd_global.user_id,
1382: sysdate,
1383: fnd_global.user_id,
1384: sysdate,

Line 1406: AND standard_operation_id = l_resources(i).standard_operation_id;

1402: SET resource_assigned = l_resources(i).resource_assigned
1403: WHERE plan_id = i_plan_id
1404: AND organization_id = i_organization_id
1405: AND resource_id = l_resources(i).resource_id
1406: AND standard_operation_id = l_resources(i).standard_operation_id;
1407:
1408: EXIT WHEN i = l_resources.LAST;
1409: i := l_resources.NEXT(i);
1410:

Line 1434: standard_operation_id,

1430: i_calculate_option IN NUMBER) IS
1431:
1432: CURSOR resources IS
1433: SELECT resource_id,
1434: standard_operation_id,
1435: weighted_resource_usage,
1436: resource_assigned
1437: FROM flm_mmm_op_resources fmor
1438: WHERE plan_id = i_plan_id

Line 1443: SELECT fmo.standard_operation_id,

1439: AND organization_id = i_organization_id
1440: AND operation_type = i_calc_op_type;
1441:
1442: CURSOR operations IS
1443: SELECT fmo.standard_operation_id,
1444: fmo.operation_takt,
1445: fmo.ipk_assigned,
1446: fml.hours_per_day
1447: FROM flm_mmm_operations fmo,

Line 1477: AND standard_operation_id = op_rec.standard_operation_id;

1473: UPDATE flm_mmm_op_resources
1474: SET resource_needed = weighted_resource_usage / op_rec.operation_takt
1475: WHERE plan_id = i_plan_id
1476: AND organization_id = i_organization_id
1477: AND standard_operation_id = op_rec.standard_operation_id;
1478:
1479: END IF;
1480:
1481: END LOOP;

Line 1510: AND standard_operation_id = op_rec.standard_operation_id;

1506: INTO l_max_rs_usage
1507: FROM flm_mmm_op_resources
1508: WHERE plan_id = i_plan_id
1509: AND organization_id = i_organization_id
1510: AND standard_operation_id = op_rec.standard_operation_id;
1511:
1512: -- Update FLM_MMM_OPERATIONS
1513: IF l_max_rs_usage > 0 THEN
1514: UPDATE flm_mmm_operations

Line 1520: AND standard_operation_id = op_rec.standard_operation_id;

1516: ceil((l_max_rs_usage - op_rec.operation_takt)/l_max_rs_usage *
1517: op_rec.hours_per_day / op_rec.operation_takt)
1518: WHERE plan_id = i_plan_id
1519: AND organization_id = i_organization_id
1520: AND standard_operation_id = op_rec.standard_operation_id;
1521:
1522: ELSE -- No Resource Usage, set IPK = 0
1523: UPDATE flm_mmm_operations
1524: SET ipk_needed = 0

Line 1527: AND standard_operation_id = op_rec.standard_operation_id;

1523: UPDATE flm_mmm_operations
1524: SET ipk_needed = 0
1525: WHERE plan_id = i_plan_id
1526: AND organization_id = i_organization_id
1527: AND standard_operation_id = op_rec.standard_operation_id;
1528:
1529: END IF;
1530:
1531: END IF; -- operation_takt > 0 AND op_rec.hours_per_day

Line 1554: AND standard_operation_id = op_rec.standard_operation_id

1550: INTO l_count
1551: FROM flm_mmm_op_resources
1552: WHERE plan_id = i_plan_id
1553: AND organization_id = i_organization_id
1554: AND standard_operation_id = op_rec.standard_operation_id
1555: AND (resource_assigned IS NULL OR
1556: resource_assigned = 0);
1557:
1558: IF l_count = 0 AND op_rec.operation_takt > 0 AND

Line 1567: AND standard_operation_id = op_rec.standard_operation_id;

1563: INTO l_max_rs_usage
1564: FROM flm_mmm_op_resources
1565: WHERE plan_id = i_plan_id
1566: AND organization_id = i_organization_id
1567: AND standard_operation_id = op_rec.standard_operation_id;
1568:
1569: -- Update FLM_MMM_OPERATIONS, Set IPK Needed
1570: l_ipk_needed := ceil((l_max_rs_usage - op_rec.operation_takt) /
1571: l_max_rs_usage * op_rec.hours_per_day /

Line 1582: AND standard_operation_id = op_rec.standard_operation_id;

1578: UPDATE flm_mmm_operations
1579: SET ipk_needed = l_ipk_needed
1580: WHERE plan_id = i_plan_id
1581: AND organization_id = i_organization_id
1582: AND standard_operation_id = op_rec.standard_operation_id;
1583:
1584: -- Resource Needed = ( Hours Per Day/Operation TAKT - IPK Needed) *
1585: -- Weighted Resource Usage / Hours Per Day
1586: UPDATE flm_mmm_op_resources

Line 1592: AND standard_operation_id = op_rec.standard_operation_id;

1588: (op_rec.hours_per_day/op_rec.operation_takt - l_ipk_needed) *
1589: weighted_resource_usage / op_rec.hours_per_day
1590: WHERE plan_id = i_plan_id
1591: AND organization_id = i_organization_id
1592: AND standard_operation_id = op_rec.standard_operation_id;
1593:
1594: END IF; -- l_count = 0 ...
1595:
1596: END LOOP;

Line 1609: AND standard_operation_id = op_rec.standard_operation_id;

1605: (op_rec.hours_per_day/op_rec.operation_takt - nvl(op_rec.ipk_assigned, 0)) *
1606: weighted_resource_usage / op_rec.hours_per_day
1607: WHERE plan_id = i_plan_id
1608: AND organization_id = i_organization_id
1609: AND standard_operation_id = op_rec.standard_operation_id;
1610:
1611: UPDATE flm_mmm_op_resources
1612: SET resource_needed = 0
1613: WHERE plan_id = i_plan_id

Line 1615: AND standard_operation_id = op_rec.standard_operation_id

1611: UPDATE flm_mmm_op_resources
1612: SET resource_needed = 0
1613: WHERE plan_id = i_plan_id
1614: AND organization_id = i_organization_id
1615: AND standard_operation_id = op_rec.standard_operation_id
1616: AND resource_needed < 0;
1617:
1618: END IF;
1619:

Line 1652: i_standard_operation_id IN NUMBER,

1648: ************************************************************************/
1649: PROCEDURE calculate_needed_by_op(
1650: i_plan_id IN NUMBER,
1651: i_organization_id IN NUMBER,
1652: i_standard_operation_id IN NUMBER,
1653: i_calculate_option IN NUMBER) IS
1654:
1655: CURSOR resources IS
1656: SELECT resource_id,

Line 1657: standard_operation_id,

1653: i_calculate_option IN NUMBER) IS
1654:
1655: CURSOR resources IS
1656: SELECT resource_id,
1657: standard_operation_id,
1658: weighted_resource_usage,
1659: resource_assigned
1660: FROM flm_mmm_op_resources fmor
1661: WHERE plan_id = i_plan_id

Line 1663: AND standard_operation_id = i_standard_operation_id;

1659: resource_assigned
1660: FROM flm_mmm_op_resources fmor
1661: WHERE plan_id = i_plan_id
1662: AND organization_id = i_organization_id
1663: AND standard_operation_id = i_standard_operation_id;
1664:
1665: CURSOR op_parameter IS
1666: SELECT fmo.operation_takt,
1667: fmo.ipk_assigned,

Line 1673: AND fmo.standard_operation_id = i_standard_operation_id

1669: FROM flm_mmm_operations fmo,
1670: flm_mmm_lines fml
1671: WHERE fmo.plan_id = i_plan_id
1672: AND fmo.organization_id = i_organization_id
1673: AND fmo.standard_operation_id = i_standard_operation_id
1674: AND fml.plan_id = i_plan_id
1675: AND fml.organization_id = i_organization_id
1676: AND fml.calculation_operation_type = fmo.operation_type
1677: AND fml.line_id = fmo.line_id;

Line 1719: AND standard_operation_id = i_standard_operation_id

1715: INTO l_count
1716: FROM flm_mmm_op_resources
1717: WHERE plan_id = i_plan_id
1718: AND organization_id = i_organization_id
1719: AND standard_operation_id = i_standard_operation_id
1720: AND (resource_assigned IS NULL OR
1721: resource_assigned = 0);
1722:
1723: IF l_count = 0 AND l_operation_takt > 0 AND

Line 1731: AND standard_operation_id = i_standard_operation_id;

1727: INTO l_max_rs_usage
1728: FROM flm_mmm_op_resources
1729: WHERE plan_id = i_plan_id
1730: AND organization_id = i_organization_id
1731: AND standard_operation_id = i_standard_operation_id;
1732:
1733: -- Update FLM_MMM_OPERATIONS, Set IPK Needed
1734: l_ipk_needed := ceil((l_max_rs_usage - l_operation_takt) /
1735: l_max_rs_usage * l_hours_per_day /

Line 1749: AND standard_operation_id = i_standard_operation_id;

1745: UPDATE flm_mmm_operations
1746: SET ipk_needed = l_ipk_needed
1747: WHERE plan_id = i_plan_id
1748: AND organization_id = i_organization_id
1749: AND standard_operation_id = i_standard_operation_id;
1750:
1751: -- Resource Needed = ( Hours Per Day/Operation TAKT - IPK Needed) *
1752: -- Weighted Resource Usage / Hours Per Day
1753: UPDATE flm_mmm_op_resources

Line 1759: AND standard_operation_id = i_standard_operation_id;

1755: (l_hours_per_day/l_operation_takt - l_ipk_needed) *
1756: weighted_resource_usage / l_hours_per_day
1757: WHERE plan_id = i_plan_id
1758: AND organization_id = i_organization_id
1759: AND standard_operation_id = i_standard_operation_id;
1760:
1761: UPDATE flm_mmm_op_resources
1762: SET resource_needed = 0
1763: WHERE plan_id = i_plan_id

Line 1765: AND standard_operation_id = i_standard_operation_id

1761: UPDATE flm_mmm_op_resources
1762: SET resource_needed = 0
1763: WHERE plan_id = i_plan_id
1764: AND organization_id = i_organization_id
1765: AND standard_operation_id = i_standard_operation_id
1766: AND resource_needed < 0;
1767:
1768: END IF; -- l_count = 0 ...
1769:

Line 1782: AND standard_operation_id = i_standard_operation_id;

1778: (l_hours_per_day/l_operation_takt - nvl(l_ipk_assigned, 0)) *
1779: weighted_resource_usage / l_hours_per_day
1780: WHERE plan_id = i_plan_id
1781: AND organization_id = i_organization_id
1782: AND standard_operation_id = i_standard_operation_id;
1783:
1784: UPDATE flm_mmm_op_resources
1785: SET resource_needed = 0
1786: WHERE plan_id = i_plan_id

Line 1788: AND standard_operation_id = i_standard_operation_id

1784: UPDATE flm_mmm_op_resources
1785: SET resource_needed = 0
1786: WHERE plan_id = i_plan_id
1787: AND organization_id = i_organization_id
1788: AND standard_operation_id = i_standard_operation_id
1789: AND resource_needed < 0;
1790:
1791: END IF;
1792:

Line 1798: AND standard_operation_id = i_standard_operation_id;

1794: UPDATE flm_mmm_operations
1795: SET ipk_needed = ipk_assigned
1796: WHERE plan_id = i_plan_id
1797: AND organization_id = i_organization_id
1798: AND standard_operation_id = i_standard_operation_id;
1799:
1800: ELSE
1801: IF G_DEBUG THEN
1802: print_log('Invalid Calculate Option!!!');

Line 1832: SELECT standard_operation_id

1828: AND organization_id = i_organization_id
1829: AND calculation_operation_type = i_calc_op_type;
1830:
1831: CURSOR operations IS
1832: SELECT standard_operation_id
1833: FROM flm_mmm_operations
1834: WHERE plan_id = i_plan_id
1835: AND organization_id = i_organization_id
1836: AND operation_type = i_calc_op_type;

Line 1843: AND standard_operation_id = i_operation_id

1839: SELECT max(weighted_resource_usage/resource_assigned) takt_assigned
1840: FROM flm_mmm_op_resources
1841: WHERE plan_id = i_plan_id
1842: AND organization_id = i_organization_id
1843: AND standard_operation_id = i_operation_id
1844: AND resource_assigned > 0;
1845:
1846: CURSOR line_takt_assigned(i_line_id NUMBER) IS
1847: SELECT max(op_takt_as_assigned/operation_takt) max_ratio

Line 1864: AND standard_operation_id = op_rec.standard_operation_id

1860: INTO l_count
1861: FROM flm_mmm_op_resources
1862: WHERE plan_id = i_plan_id
1863: AND organization_id = i_organization_id
1864: AND standard_operation_id = op_rec.standard_operation_id
1865: AND weighted_resource_usage > 0
1866: AND (resource_assigned = 0 or resource_assigned IS NULL);
1867:
1868: IF l_count <= 0 THEN

Line 1869: OPEN op_takt_assigned(op_rec.standard_operation_id);

1865: AND weighted_resource_usage > 0
1866: AND (resource_assigned = 0 or resource_assigned IS NULL);
1867:
1868: IF l_count <= 0 THEN
1869: OPEN op_takt_assigned(op_rec.standard_operation_id);
1870: FETCH op_takt_assigned INTO l_takt_assigned;
1871: CLOSE op_takt_assigned;
1872:
1873: IF l_takt_assigned IS NULL THEN -- No Resource Required?

Line 1884: AND standard_operation_id = op_rec.standard_operation_id;

1880: last_update_date = sysdate,
1881: last_update_login = fnd_global.user_id
1882: WHERE plan_id = i_plan_id
1883: AND organization_id = i_organization_id
1884: AND standard_operation_id = op_rec.standard_operation_id;
1885:
1886: ELSE
1887: UPDATE flm_mmm_operations
1888: SET op_takt_as_assigned = NULL,

Line 1894: AND standard_operation_id = op_rec.standard_operation_id;

1890: last_update_date = sysdate,
1891: last_update_login = fnd_global.user_id
1892: WHERE plan_id = i_plan_id
1893: AND organization_id = i_organization_id
1894: AND standard_operation_id = op_rec.standard_operation_id;
1895:
1896: END IF;
1897:
1898: END LOOP; -- op_rec

Line 1971: SELECT standard_operation_id

1967: AND organization_id = i_organization_id
1968: AND calculation_operation_type = i_calc_op_type;
1969:
1970: CURSOR operations IS
1971: SELECT standard_operation_id
1972: FROM flm_mmm_operations
1973: WHERE plan_id = i_plan_id
1974: AND organization_id = i_organization_id
1975: AND operation_type = i_calc_op_type;

Line 1983: AND standard_operation_id = i_operation_id

1979: max(100*(resource_needed-resource_assigned)/resource_assigned) over_pct
1980: FROM flm_mmm_op_resources
1981: WHERE plan_id = i_plan_id
1982: AND organization_id = i_organization_id
1983: AND standard_operation_id = i_operation_id
1984: AND resource_assigned > 0;
1985:
1986: CURSOR res_overcapacity_ln(i_line_id NUMBER) IS
1987: SELECT max(bottleneck_resource_percent) over_pct

Line 2012: AND standard_operation_id = op_rec.standard_operation_id

2008: INTO l_count
2009: FROM flm_mmm_op_resources
2010: WHERE plan_id = i_plan_id
2011: AND organization_id = i_organization_id
2012: AND standard_operation_id = op_rec.standard_operation_id
2013: AND (resource_needed > 0 or resource_needed is null)
2014: AND resource_assigned = 0;
2015:
2016: IF l_count <= 0 THEN

Line 2017: OPEN res_overcapacity_op(op_rec.standard_operation_id);

2013: AND (resource_needed > 0 or resource_needed is null)
2014: AND resource_assigned = 0;
2015:
2016: IF l_count <= 0 THEN
2017: OPEN res_overcapacity_op(op_rec.standard_operation_id);
2018: FETCH res_overcapacity_op INTO l_res_over_pct;
2019: CLOSE res_overcapacity_op;
2020:
2021: IF l_res_over_pct < 0 OR l_res_over_pct IS NULL THEN

Line 2032: AND standard_operation_id = op_rec.standard_operation_id;

2028: last_update_date = sysdate,
2029: last_update_login = fnd_global.user_id
2030: WHERE plan_id = i_plan_id
2031: AND organization_id = i_organization_id
2032: AND standard_operation_id = op_rec.standard_operation_id;
2033:
2034: ELSE
2035: UPDATE flm_mmm_operations
2036: SET bottleneck_resource_percent = NULL,

Line 2042: AND standard_operation_id = op_rec.standard_operation_id;

2038: last_update_date = sysdate,
2039: last_update_login = fnd_global.user_id
2040: WHERE plan_id = i_plan_id
2041: AND organization_id = i_organization_id
2042: AND standard_operation_id = op_rec.standard_operation_id;
2043:
2044: END IF;
2045: END LOOP; -- op_rec
2046:

Line 2146: SELECT standard_operation_id

2142: AND organization_id = i_organization_id
2143: AND calculation_operation_type = i_calc_op_type;
2144:
2145: CURSOR operations IS
2146: SELECT standard_operation_id
2147: FROM flm_mmm_operations
2148: WHERE plan_id = i_plan_id
2149: AND organization_id = i_organization_id
2150: AND operation_type = i_calc_op_type;

Line 2158: AND standard_operation_id = i_operation_id;

2154: SELECT resource_assigned,resource_needed
2155: FROM flm_mmm_op_resources
2156: WHERE plan_id = i_plan_id
2157: AND organization_id = i_organization_id
2158: AND standard_operation_id = i_operation_id;
2159:
2160: CURSOR res_undercapacity_ln(i_line_id NUMBER) IS
2161: SELECT max(resource_undercapacity) under_pct
2162: FROM flm_mmm_operations

Line 2182: FOR res_rec IN res_assigned_needed(op_rec.standard_operation_id) LOOP

2178: -- Resource Undercapacity For Operations
2179: FOR op_rec IN operations LOOP -- For each operation
2180: l_res_under_pct := 0; -- initial undercapacity pct
2181:
2182: FOR res_rec IN res_assigned_needed(op_rec.standard_operation_id) LOOP
2183:
2184: -- if OC(overcapacity) instead of UC(undercapacity), current UC remains the same
2185: IF res_rec.resource_assigned IS NULL OR
2186: res_rec.resource_assigned = 0 OR

Line 2209: AND standard_operation_id = op_rec.standard_operation_id;

2205: last_update_date = sysdate,
2206: last_update_login = fnd_global.user_id
2207: WHERE plan_id = i_plan_id
2208: AND organization_id = i_organization_id
2209: AND standard_operation_id = op_rec.standard_operation_id;
2210:
2211: END LOOP; -- new_op_rec
2212:
2213: -- Resource/IPK Undercapacity For Lines

Line 2273: standard_operation_id

2269: l_operation_process_volume NUMBER;
2270:
2271: CURSOR operations IS
2272: SELECT line_id,
2273: standard_operation_id
2274: FROM flm_mmm_operations
2275: WHERE plan_id = i_plan_id
2276: AND organization_id = i_organization_id
2277: AND operation_type = i_calc_op_type;

Line 2293: AND it.standard_operation_id = operation_rec.standard_operation_id

2289: WHERE it.plan_id = i_plan_id
2290: AND it.organization_id = i_organization_id
2291: AND it.operation_type = i_calc_op_type
2292: AND it.line_id = operation_rec.line_id
2293: AND it.standard_operation_id = operation_rec.standard_operation_id
2294: AND bor.organization_id = i_organization_id
2295: AND bor.line_id = operation_rec.line_id
2296: AND bor.assembly_item_id = it.assembly_item_id
2297: AND bor.cfm_routing_flag = 1

Line 2302: AND bos.standard_operation_id = operation_rec.standard_operation_id;

2298: AND bor.mixed_model_map_flag =1
2299: AND bor.alternate_routing_designator IS NULL
2300: AND bor.common_routing_sequence_id = bos.routing_sequence_id
2301: AND bos.operation_type = i_calc_op_type
2302: AND bos.standard_operation_id = operation_rec.standard_operation_id;
2303:
2304: IF (l_operation_process_volume <> 0) THEN
2305: UPDATE flm_mmm_operations
2306: SET process_efficiency = l_weighted_process_efficiency / l_operation_process_volume

Line 2309: AND standard_operation_id = operation_rec.standard_operation_id;

2305: UPDATE flm_mmm_operations
2306: SET process_efficiency = l_weighted_process_efficiency / l_operation_process_volume
2307: WHERE plan_id = i_plan_id
2308: AND organization_id = i_organization_id
2309: AND standard_operation_id = operation_rec.standard_operation_id;
2310: END IF;
2311:
2312: END LOOP;
2313:

Line 2582: i_standard_operation_id IN NUMBER,

2578: i_plan_id IN NUMBER,
2579: i_organization_id IN NUMBER,
2580: i_calculation_operation_type IN NUMBER,
2581: i_calculation_option IN NUMBER,
2582: i_standard_operation_id IN NUMBER,
2583: o_error_code OUT NOCOPY NUMBER,
2584: o_error_msg OUT NOCOPY VARCHAR2) IS
2585:
2586: BEGIN

Line 2589: IF i_standard_operation_id IS NULL THEN

2585:
2586: BEGIN
2587: -- Verify Input
2588: -- Resource/IPK Needed
2589: IF i_standard_operation_id IS NULL THEN
2590: calculate_res_ipk_needed(
2591: i_plan_id,
2592: i_organization_id,
2593: i_calculation_operation_type,

Line 2599: i_standard_operation_id,

2595: ELSE
2596: calculate_needed_by_op(
2597: i_plan_id,
2598: i_organization_id,
2599: i_standard_operation_id,
2600: i_calculation_option);
2601: END IF;
2602:
2603: -- TAKT For Assigned

Line 2639: i_standard_operation_id IN NUMBER,

2635: PROCEDURE update_assigned_with_needed(
2636: i_plan_id IN NUMBER,
2637: i_organization_id IN NUMBER,
2638: i_line_id IN NUMBER,
2639: i_standard_operation_id IN NUMBER,
2640: i_resource_id IN NUMBER,
2641: i_calc_op_type IN NUMBER,
2642: o_error_code OUT NOCOPY NUMBER) IS
2643:

Line 2655: SELECT standard_operation_id

2651: AND operation_type = i_calc_op_type
2652: FOR UPDATE NOWAIT;
2653:
2654: CURSOR lock_op IS
2655: SELECT standard_operation_id
2656: FROM flm_mmm_operations
2657: WHERE plan_id = i_plan_id
2658: AND organization_id = i_organization_id
2659: AND operation_type = i_calc_op_type

Line 2681: SELECT standard_operation_id

2677: AND line_id = i_line_id
2678: FOR UPDATE NOWAIT;
2679:
2680: CURSOR lock_op_line IS
2681: SELECT standard_operation_id
2682: FROM flm_mmm_operations
2683: WHERE plan_id = i_plan_id
2684: AND organization_id = i_organization_id
2685: AND operation_type = i_calc_op_type

Line 2695: AND standard_operation_id = i_standard_operation_id

2691: FROM flm_mmm_op_resources
2692: WHERE plan_id = i_plan_id
2693: AND organization_id = i_organization_id
2694: AND operation_type = i_calc_op_type
2695: AND standard_operation_id = i_standard_operation_id
2696: FOR UPDATE NOWAIT;
2697:
2698: CURSOR lock_op_op IS
2699: SELECT standard_operation_id

Line 2699: SELECT standard_operation_id

2695: AND standard_operation_id = i_standard_operation_id
2696: FOR UPDATE NOWAIT;
2697:
2698: CURSOR lock_op_op IS
2699: SELECT standard_operation_id
2700: FROM flm_mmm_operations
2701: WHERE plan_id = i_plan_id
2702: AND organization_id = i_organization_id
2703: AND operation_type = i_calc_op_type

Line 2704: AND standard_operation_id = i_standard_operation_id

2700: FROM flm_mmm_operations
2701: WHERE plan_id = i_plan_id
2702: AND organization_id = i_organization_id
2703: AND operation_type = i_calc_op_type
2704: AND standard_operation_id = i_standard_operation_id
2705: FOR UPDATE NOWAIT;
2706:
2707: BEGIN
2708: -- Update

Line 2756: i_standard_operation_id IS NULL THEN -- for a specific line

2752: AND operation_type = i_calc_op_type
2753: AND resource_id = i_resource_id;
2754:
2755: ELSIF i_line_id IS NOT NULL AND
2756: i_standard_operation_id IS NULL THEN -- for a specific line
2757: -- lock records
2758: FOR res_rec IN lock_res_line LOOP
2759: NULL;
2760: END LOOP;

Line 2787: ELSIF i_standard_operation_id IS NOT NULL THEN -- for a specific operation

2783: AND organization_id = i_organization_id
2784: AND operation_type = i_calc_op_type
2785: AND line_id = i_line_id;
2786:
2787: ELSIF i_standard_operation_id IS NOT NULL THEN -- for a specific operation
2788: -- lock records
2789: FOR res_rec IN lock_res_op LOOP
2790: NULL;
2791: END LOOP;

Line 2806: AND standard_operation_id = i_standard_operation_id;

2802: last_update_login = fnd_global.user_id
2803: WHERE plan_id = i_plan_id
2804: AND organization_id = i_organization_id
2805: AND operation_type = i_calc_op_type
2806: AND standard_operation_id = i_standard_operation_id;
2807:
2808: UPDATE flm_mmm_operations
2809: SET ipk_assigned = ipk_needed,
2810: last_updated_by = fnd_global.user_id,

Line 2816: AND standard_operation_id = i_standard_operation_id;

2812: last_update_login = fnd_global.user_id
2813: WHERE plan_id = i_plan_id
2814: AND organization_id = i_organization_id
2815: AND operation_type = i_calc_op_type
2816: AND standard_operation_id = i_standard_operation_id;
2817: END IF; -- Input Types
2818:
2819: -- Re-Calculate TAKT For Assigned
2820: calculate_takt_assigned(

Line 2859: SELECT standard_operation_id operation_id,

2855:
2856: l_count NUMBER;
2857:
2858: CURSOR all_operations IS
2859: SELECT standard_operation_id operation_id,
2860: ipk_assigned,
2861: line_id
2862: FROM flm_mmm_operations
2863: WHERE plan_id = i_plan_id

Line 2869: standard_operation_id operation_id,

2865: AND operation_type = i_operation_type;
2866:
2867: CURSOR all_resources IS
2868: SELECT resource_id,
2869: standard_operation_id operation_id,
2870: resource_assigned,
2871: line_id
2872: FROM flm_mmm_op_resources
2873: WHERE plan_id = i_plan_id

Line 2885: AND standard_operation_id = op_rec.operation_id;

2881: INTO l_count
2882: FROM flm_mmm_operations
2883: WHERE organization_id = i_organization_id
2884: AND plan_id = -1
2885: AND standard_operation_id = op_rec.operation_id;
2886:
2887: IF l_count > 0 THEN
2888: UPDATE flm_mmm_operations
2889: SET ipk_assigned = op_rec.ipk_assigned,

Line 2895: AND standard_operation_id = op_rec.operation_id;

2891: last_update_date = sysdate,
2892: last_update_login = fnd_global.user_id
2893: WHERE organization_id = i_organization_id
2894: AND plan_id = -1
2895: AND standard_operation_id = op_rec.operation_id;
2896:
2897: ELSE
2898: INSERT INTO FLM_MMM_OPERATIONS (
2899: PLAN_ID,

Line 2901: STANDARD_OPERATION_ID,

2897: ELSE
2898: INSERT INTO FLM_MMM_OPERATIONS (
2899: PLAN_ID,
2900: ORGANIZATION_ID,
2901: STANDARD_OPERATION_ID,
2902: LAST_UPDATE_DATE,
2903: LAST_UPDATED_BY,
2904: CREATION_DATE,
2905: CREATED_BY,

Line 2935: AND standard_operation_id = res_rec.operation_id;

2931: FROM flm_mmm_op_resources
2932: WHERE organization_id = i_organization_id
2933: AND plan_id = -1
2934: AND resource_id = res_rec.resource_id
2935: AND standard_operation_id = res_rec.operation_id;
2936:
2937: IF l_count > 0 THEN
2938: UPDATE flm_mmm_op_resources
2939: SET resource_assigned = res_rec.resource_assigned,

Line 2946: AND standard_operation_id = res_rec.operation_id;

2942: last_update_login = fnd_global.user_id
2943: WHERE organization_id = i_organization_id
2944: AND plan_id = -1
2945: AND resource_id = res_rec.resource_id
2946: AND standard_operation_id = res_rec.operation_id;
2947:
2948: ELSE
2949: INSERT INTO FLM_MMM_OP_RESOURCES (
2950: PLAN_ID,

Line 2953: STANDARD_OPERATION_ID,

2949: INSERT INTO FLM_MMM_OP_RESOURCES (
2950: PLAN_ID,
2951: ORGANIZATION_ID,
2952: RESOURCE_ID,
2953: STANDARD_OPERATION_ID,
2954: LAST_UPDATE_DATE,
2955: LAST_UPDATED_BY,
2956: CREATION_DATE,
2957: CREATED_BY,