22: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_line_attrs_tmp_N1,LIST_HEADER_ID,4
23: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_line_attrs_tmp_N1,LIST_LINE_ID,5
24:
25: UNION
26: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
27: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
28: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
29: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
30: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
23: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_line_attrs_tmp_N1,LIST_LINE_ID,5
24:
25: UNION
26: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
27: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
28: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
29: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
30: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
31:
24:
25: UNION
26: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
27: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
28: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
29: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
30: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
31:
32: */
25: UNION
26: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
27: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
28: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
29: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
30: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
31:
32: */
33: --Precedence for line cur
26: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
27: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
28: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
29: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
30: INDX,QP_Resolve_Incompatability_PVTRUN.precedence_for_list_line.precedence_for_line_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
31:
32: */
33: --Precedence for line cur
34: -- Pricing Phase Change
43: AND a.PRICING_STATUS_CODE = 'N'
44: AND a.LINE_INDEX = p_line_index
45: UNION
46: SELECT nvl(a.PRODUCT_PRECEDENCE,5000) PRECED
47: FROM qp_npreq_ldets_tmp a
48: WHERE a.CREATED_FROM_LIST_LINE_ID = p_list_line_id
49: AND a.CREATED_FROM_LIST_HEADER_ID = p_list_header_id
50: AND a.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
51: AND a.PRICING_PHASE_ID = p_pricing_phase_id
127:
128: -- shulin
129: -- uom match comdition is added, when order_uom does not match product uom (uom conversion should happen)
130: -- this cursor should not return list_line_id, which will cause UOM conversion not happening
131: -- Bug 2490074 Join with qp_npreq_ldets_tmp is added in 1st part of union to pick only undeleted lines.
132: -- Bug 2687089 Commented exists and addded join with qp_npreq_line_attrs_tmp
133: OPEN l_precedence_for_line_cur FOR
134: SELECT distinct nvl(a.QUALIFIER_PRECEDENCE,5000) PRECED , a.LIST_LINE_ID , -99999 QUAL_PRECED
135: FROM qp_npreq_line_attrs_tmp a , qp_npreq_ldets_tmp c , qp_npreq_line_attrs_tmp b
131: -- Bug 2490074 Join with qp_npreq_ldets_tmp is added in 1st part of union to pick only undeleted lines.
132: -- Bug 2687089 Commented exists and addded join with qp_npreq_line_attrs_tmp
133: OPEN l_precedence_for_line_cur FOR
134: SELECT distinct nvl(a.QUALIFIER_PRECEDENCE,5000) PRECED , a.LIST_LINE_ID , -99999 QUAL_PRECED
135: FROM qp_npreq_line_attrs_tmp a , qp_npreq_ldets_tmp c , qp_npreq_line_attrs_tmp b
136: WHERE a.ATTRIBUTE_TYPE = 'QUALIFIER'
137: AND a.INCOMPATABILITY_GRP_CODE = 'EXCL'
138: AND a.PRICING_PHASE_ID = 1
139: AND a.PRICING_STATUS_CODE = 'N'
163: SELECT z.PRECED , z.LIST_LINE_ID , z.QUALIFIER_PRECEDENCE QUAL_PRECED
164: FROM (
165: SELECT /*+ ORDERED USE_NL(b) index(c qp_preq_line_attrs_tmp_N5) rec_exist_with_order_uom_cur */
166: nvl(b.PRODUCT_PRECEDENCE,5000) PRECED , c.LIST_LINE_ID , nvl(c.QUALIFIER_PRECEDENCE,-99999) QUALIFIER_PRECEDENCE
167: FROM qp_npreq_line_attrs_tmp c,qp_npreq_ldets_tmp b
168: WHERE c.PRICING_PHASE_ID = L_PRICE_LIST_PHASE_ID
169: AND c.PRODUCT_UOM_CODE = p_order_uom_code
170: AND c.ATTRIBUTE_TYPE = QP_PREQ_GRP.G_PRODUCT_TYPE
171: AND c.LINE_INDEX = p_line_index
184: END IF;
185: /* Modified cursor l_precedence_for_line_cur for 2780293 */
186: OPEN l_precedence_for_line_cur FOR
187: SELECT nvl(a.QUALIFIER_PRECEDENCE,5000) PRECED , a.LIST_LINE_ID , -99999 QUAL_PRECED
188: FROM qp_npreq_line_attrs_tmp a, qp_npreq_ldets_tmp c, qp_npreq_line_attrs_tmp b
189: WHERE a.ATTRIBUTE_TYPE = 'QUALIFIER'
190: AND a.INCOMPATABILITY_GRP_CODE = 'EXCL'
191: AND a.PRICING_PHASE_ID = 1
192: AND a.PRICING_STATUS_CODE = 'N'
207: SELECT z.PRECED , z.LIST_LINE_ID , z.QUALIFIER_PRECEDENCE QUAL_PRECED
208: FROM(
209: SELECT /*+ ORDERED USE_NL(c d) index(b qp_preq_line_attrs_tmp_N5) rec_exist_with_pri_flag_cur */
210: nvl(c.PRODUCT_PRECEDENCE,5000) PRECED , b.LIST_LINE_ID , nvl(b.QUALIFIER_PRECEDENCE ,-99999) QUALIFIER_PRECEDENCE
211: FROM qp_npreq_line_attrs_tmp b,qp_npreq_ldets_tmp c
212: WHERE b.PRIMARY_UOM_FLAG = QP_PREQ_GRP.G_YES
213: AND b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
214: AND b.CONTEXT = 'ITEM'
215: AND b.ATTRIBUTE_TYPE = QP_PREQ_GRP.G_PRODUCT_TYPE
410: WHERE LINE_INDEX = p_line_index;
411: END IF;
412:
413: /*
414: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
415: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
416: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
417: */
418:
411: END IF;
412:
413: /*
414: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
415: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
416: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
417: */
418:
419: UPDATE qp_npreq_ldets_tmp -- upd3
412:
413: /*
414: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
415: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
416: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
417: */
418:
419: UPDATE qp_npreq_ldets_tmp -- upd3
420: SET PRICING_STATUS_CODE = p_status_code
415: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
416: INDX,QP_Resolve_Incompatability_PVTRUN.update_invalid_list_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
417: */
418:
419: UPDATE qp_npreq_ldets_tmp -- upd3
420: SET PRICING_STATUS_CODE = p_status_code
421: WHERE INCOMPATABILITY_GRP_CODE = p_incomp_grp_code
422: AND LINE_INDEX = p_line_index
423: AND PRICING_PHASE_ID = p_pricing_phase_id
426: /* UPDATE qp_npreq_line_attrs_tmp a
427: SET a.PRICING_STATUS_CODE = p_status_code
428: WHERE a.LIST_LINE_ID
429: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
430: FROM qp_npreq_ldets_tmp b
431: WHERE b.PRICING_STATUS_CODE = p_status_code
432: AND b.PRICING_PHASE_ID = p_pricing_phase_id
433: AND b.INCOMPATABILITY_GRP_CODE = p_incomp_grp_code
434: AND b.LINE_INDEX = p_line_index)
450: x_return_status OUT NOCOPY VARCHAR2,
451: x_return_status_txt OUT NOCOPY VARCHAR2) IS
452:
453: /*
454: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
455: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
456: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_lines_tmp_N2,LINE_INDEX,3
457: */
458: --shulin bug 1829731, add contract_start_date, contract_end_date
451: x_return_status_txt OUT NOCOPY VARCHAR2) IS
452:
453: /*
454: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
455: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
456: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_lines_tmp_N2,LINE_INDEX,3
457: */
458: --shulin bug 1829731, add contract_start_date, contract_end_date
459: --[julin/pricebook] added hint for qp_npreq_ldets_tmp
455: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
456: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.incomp_cur,qp_npreq_lines_tmp_N2,LINE_INDEX,3
457: */
458: --shulin bug 1829731, add contract_start_date, contract_end_date
459: --[julin/pricebook] added hint for qp_npreq_ldets_tmp
460: CURSOR incomp_cur IS
461: SELECT /*+ ORDERED USE_NL(a) INDEX(a QP_PREQ_LDETS_TMP_N2) */
462: DISTINCT a.LINE_INDEX , a.INCOMPATABILITY_GRP_CODE ,a.PRICING_STATUS_CODE,b.LINE_UOM_CODE,b.LINE_QUANTITY,
463: b.PROCESSING_ORDER,b.UOM_QUANTITY, b.CONTRACT_START_DATE, b.CONTRACT_END_DATE
460: CURSOR incomp_cur IS
461: SELECT /*+ ORDERED USE_NL(a) INDEX(a QP_PREQ_LDETS_TMP_N2) */
462: DISTINCT a.LINE_INDEX , a.INCOMPATABILITY_GRP_CODE ,a.PRICING_STATUS_CODE,b.LINE_UOM_CODE,b.LINE_QUANTITY,
463: b.PROCESSING_ORDER,b.UOM_QUANTITY, b.CONTRACT_START_DATE, b.CONTRACT_END_DATE
464: FROM qp_npreq_lines_tmp b , qp_npreq_ldets_tmp a
465: WHERE a.INCOMPATABILITY_GRP_CODE IS NOT NULL
466: AND a.PRICING_PHASE_ID = p_pricing_phase_id
467: AND a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
468: AND a.LINE_INDEX = b.LINE_INDEX
747: END IF;
748: IF (v_list_line_id IS NOT NULL) THEN -- Successful in finding pll in order uom
749: -- Update all the other list lines to status 'U'
750: /*
751: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
752: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
753: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_lines_tmp_N2,LINE_INDEX,3
754: */
755: UPDATE qp_npreq_ldets_tmp -- upd1
748: IF (v_list_line_id IS NOT NULL) THEN -- Successful in finding pll in order uom
749: -- Update all the other list lines to status 'U'
750: /*
751: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
752: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
753: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_lines_tmp_N2,LINE_INDEX,3
754: */
755: UPDATE qp_npreq_ldets_tmp -- upd1
756: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_UOM_FAILURE
751: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
752: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
753: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd1,qp_npreq_lines_tmp_N2,LINE_INDEX,3
754: */
755: UPDATE qp_npreq_ldets_tmp -- upd1
756: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_UOM_FAILURE
757: WHERE INCOMPATABILITY_GRP_CODE = i.INCOMPATABILITY_GRP_CODE
758: AND LINE_INDEX = i.line_index
759: AND PRICING_PHASE_ID = p_pricing_phase_id
763: /* UPDATE qp_npreq_line_attrs_tmp a
764: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_UOM_FAILURE
765: WHERE a.LIST_LINE_ID
766: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
767: FROM qp_npreq_ldets_tmp b
768: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_UOM_FAILURE
769: AND b.PRICING_PHASE_ID = p_pricing_phase_id
770: AND b.INCOMPATABILITY_GRP_CODE = i.INCOMPATABILITY_GRP_CODE
771: AND b.CREATED_FROM_LIST_LINE_ID <> v_list_line_id
981:
982: END IF;
983: IF (v_list_line_id IS NOT NULL) THEN
984: /*
985: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
986: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
987: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_lines_tmp_N2,LINE_INDEX,3
988: */
989: -- Update all the other list lines to status 'P'
982: END IF;
983: IF (v_list_line_id IS NOT NULL) THEN
984: /*
985: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_ldets_tmp_N2,PRICING_PHASE_ID,1
986: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
987: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_lines_tmp_N2,LINE_INDEX,3
988: */
989: -- Update all the other list lines to status 'P'
990: UPDATE qp_npreq_ldets_tmp -- upd2
986: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_ldets_tmp_N2,PRICING_STATUS_CODE,2
987: INDX,QP_Resolve_Incompatability_PVTRUN.determine_pricing_uom_and_qty.upd2,qp_npreq_lines_tmp_N2,LINE_INDEX,3
988: */
989: -- Update all the other list lines to status 'P'
990: UPDATE qp_npreq_ldets_tmp -- upd2
991: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_PRIMARY_UOM_FLAG
992: WHERE INCOMPATABILITY_GRP_CODE = i.INCOMPATABILITY_GRP_CODE
993: AND LINE_INDEX = i.line_index
994: AND PRICING_PHASE_ID = p_pricing_phase_id
998:
999: /* UPDATE qp_npreq_line_attrs_tmp a
1000: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_PRIMARY_UOM_FLAG
1001: WHERE a.LIST_LINE_ID IN (SELECT b.CREATED_FROM_LIST_LINE_ID
1002: FROM qp_npreq_ldets_tmp b
1003: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_PRIMARY_UOM_FLAG
1004: AND b.CREATED_FROM_LIST_LINE_ID <> v_list_line_id
1005: AND b.LINE_INDEX = i.line_index)
1006: AND a.LINE_INDEX = i.line_index; */
1008: /* UPDATE qp_npreq_line_attrs_tmp a
1009: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_PRIMARY_UOM_FLAG
1010: WHERE a.LIST_LINE_ID
1011: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
1012: FROM qp_npreq_ldets_tmp b
1013: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_PRIMARY_UOM_FLAG
1014: AND b.PRICING_PHASE_ID = p_pricing_phase_id
1015: AND b.INCOMPATABILITY_GRP_CODE = i.INCOMPATABILITY_GRP_CODE
1016: AND b.CREATED_FROM_LIST_LINE_ID <> v_list_line_id
1359:
1360: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Resolve_Incompatability_PVTRUN.Best_Price_Evaluation';
1361:
1362: /*
1363: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1364: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1365: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1366: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1367:
1360: v_routine_name CONSTANT VARCHAR2(240) := 'Routine:QP_Resolve_Incompatability_PVTRUN.Best_Price_Evaluation';
1361:
1362: /*
1363: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1364: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1365: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1366: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1367:
1368: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1361:
1362: /*
1363: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1364: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1365: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1366: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1367:
1368: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1369: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,QP_LIST_LINES_PK,LIST_LINE_ID,1
1362: /*
1363: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1364: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1365: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1366: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1367:
1368: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1369: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,QP_LIST_LINES_PK,LIST_LINE_ID,1
1370: */
1364: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1365: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1366: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1367:
1368: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1369: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_cur,QP_LIST_LINES_PK,LIST_LINE_ID,1
1370: */
1371: -- For bug#2661540
1372: CURSOR get_list_lines_cur IS
1373: SELECT b.CREATED_FROM_LIST_HEADER_ID, b.CREATED_FROM_LIST_LINE_ID,b.line_detail_index, --3244060
1374: b.CREATED_FROM_LIST_LINE_TYPE, b.OPERAND_CALCULATION_CODE, b.OPERAND_VALUE,a.ESTIM_GL_VALUE ,
1375: a.BENEFIT_PRICE_LIST_LINE_ID,a.PRICE_BREAK_TYPE_CODE,b.LINE_QUANTITY,b.GROUP_QUANTITY,b.GROUP_AMOUNT, --[julin/4240067/4307242]
1376: b.modifier_level_code
1377: FROM QP_LIST_LINES a, qp_npreq_ldets_tmp b, qp_npreq_line_attrs_tmp c
1378: WHERE a.LIST_HEADER_ID = b.CREATED_FROM_LIST_HEADER_ID
1379: AND a.LIST_LINE_ID = b.CREATED_FROM_LIST_LINE_ID
1380: AND b.CREATED_FROM_LIST_TYPE_CODE not in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)
1381: AND b.PRICING_PHASE_ID = p_pricing_phase_id
1397: CURSOR get_list_lines_cur IS
1398: SELECT b.CREATED_FROM_LIST_HEADER_ID, b.CREATED_FROM_LIST_LINE_ID,
1399: b.CREATED_FROM_LIST_LINE_TYPE, b.OPERAND_CALCULATION_CODE, b.OPERAND_VALUE,a.ESTIM_GL_VALUE ,
1400: a.BENEFIT_PRICE_LIST_LINE_ID,a.PRICE_BREAK_TYPE_CODE,b.GROUP_QUANTITY,b.GROUP_AMOUNT
1401: FROM QP_LIST_LINES a, qp_npreq_ldets_tmp b
1402: WHERE a.LIST_HEADER_ID = b.CREATED_FROM_LIST_HEADER_ID
1403: AND a.LIST_LINE_ID = b.CREATED_FROM_LIST_LINE_ID
1404: AND b.CREATED_FROM_LIST_TYPE_CODE not in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)
1405: AND b.PRICING_PHASE_ID = p_pricing_phase_id
1427: WHERE LIST_LINE_ID = p_list_line_id
1428: AND ARITHMETIC_OPERATOR = QP_PREQ_GRP.G_UNIT_PRICE;
1429:
1430: /*
1431: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1432: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1433: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1434: */
1435:
1428: AND ARITHMETIC_OPERATOR = QP_PREQ_GRP.G_UNIT_PRICE;
1429:
1430: /*
1431: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1432: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1433: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1434: */
1435:
1436: -- For bug 2661540
1429:
1430: /*
1431: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1432: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1433: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.get_list_lines_in_order,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1434: */
1435:
1436: -- For bug 2661540
1437: CURSOR get_list_lines_in_order IS
1435:
1436: -- For bug 2661540
1437: CURSOR get_list_lines_in_order IS
1438: SELECT a.CREATED_FROM_LIST_LINE_ID
1439: FROM qp_npreq_ldets_tmp a, qp_npreq_line_attrs_tmp b
1440: WHERE a.CREATED_FROM_LIST_TYPE_CODE not in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)
1441: AND a.PRICING_PHASE_ID = p_pricing_phase_id
1442: AND a.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1443: AND a.LINE_INDEX = p_line_index
1456:
1457: /* Commented for Bug 2661540
1458: CURSOR get_list_lines_in_order IS
1459: SELECT CREATED_FROM_LIST_LINE_ID
1460: FROM qp_npreq_ldets_tmp
1461: WHERE CREATED_FROM_LIST_TYPE_CODE not in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)
1462: AND PRICING_PHASE_ID = p_pricing_phase_id
1463: AND INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1464: AND LINE_INDEX = p_line_index
1635: QP_PREQ_GRP.engine_debug('Benefit Percent For Best Price Eval: ' || v_benefit_percent);
1636:
1637: END IF;
1638: /*
1639: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1640: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1636:
1637: END IF;
1638: /*
1639: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1640: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1644: */
1637: END IF;
1638: /*
1639: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1640: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1644: */
1645: UPDATE qp_npreq_ldets_tmp -- upd1
1638: /*
1639: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1640: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1644: */
1645: UPDATE qp_npreq_ldets_tmp -- upd1
1646: SET BEST_PERCENT = v_benefit_percent
1639: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1640: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1644: */
1645: UPDATE qp_npreq_ldets_tmp -- upd1
1646: SET BEST_PERCENT = v_benefit_percent
1647: WHERE CREATED_FROM_LIST_HEADER_ID = i.CREATED_FROM_LIST_HEADER_ID
1641: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1642: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_HEADER_ID,4
1643: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd1,qp_npreq_ldets_tmp_N1,CREATED_FROM_LIST_LINE_ID,5
1644: */
1645: UPDATE qp_npreq_ldets_tmp -- upd1
1646: SET BEST_PERCENT = v_benefit_percent
1647: WHERE CREATED_FROM_LIST_HEADER_ID = i.CREATED_FROM_LIST_HEADER_ID
1648: AND CREATED_FROM_LIST_LINE_ID = i.CREATED_FROM_LIST_LINE_ID
1649: AND PRICING_PHASE_ID = p_pricing_phase_id
1657: FETCH get_list_lines_in_order into v_list_line_id;
1658: CLOSE get_list_lines_in_order;
1659:
1660: /*
1661: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1662: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1663: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1664: */
1665:
1658: CLOSE get_list_lines_in_order;
1659:
1660: /*
1661: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1662: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1663: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1664: */
1665:
1666: UPDATE qp_npreq_ldets_tmp -- upd2
1659:
1660: /*
1661: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1662: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1663: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1664: */
1665:
1666: UPDATE qp_npreq_ldets_tmp -- upd2
1667: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1662: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1663: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_evaluation.upd2,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1664: */
1665:
1666: UPDATE qp_npreq_ldets_tmp -- upd2
1667: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1668: WHERE CREATED_FROM_LIST_LINE_ID <> v_list_line_id
1669: AND CREATED_FROM_LIST_TYPE_CODE not in (QP_PREQ_GRP.G_PRICE_LIST_HEADER,QP_PREQ_GRP.G_AGR_LIST_HEADER)
1670: AND PRICING_PHASE_ID = p_pricing_phase_id
1679: QP_PREQ_GRP.engine_debug('Number of parent lines updated with status B :' || SQL%ROWCOUNT);
1680: END IF;
1681: -- print_tmp_tabs();
1682:
1683: UPDATE qp_npreq_ldets_tmp x-- upd2
1684: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1685: WHERE CREATED_FROM_LIST_LINE_ID in
1686: (select RELATED_LIST_LINE_ID
1687: FROM QP_NPREQ_RLTD_LINES_TMP y,qp_npreq_ldets_tmp z
1683: UPDATE qp_npreq_ldets_tmp x-- upd2
1684: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1685: WHERE CREATED_FROM_LIST_LINE_ID in
1686: (select RELATED_LIST_LINE_ID
1687: FROM QP_NPREQ_RLTD_LINES_TMP y,qp_npreq_ldets_tmp z
1688: WHERE y.LIST_LINE_ID =z.CREATED_FROM_LIST_LINE_ID
1689: AND y.LINE_DETAIL_INDEX = z.LINE_DETAIL_INDEX
1690: AND z.PRICING_STATUS_CODE=QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1691: );
1698:
1699: /* UPDATE qp_npreq_line_attrs_tmp a
1700: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1701: WHERE a.LIST_LINE_ID IN (SELECT b.CREATED_FROM_LIST_LINE_ID
1702: FROM qp_npreq_ldets_tmp b
1703: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1704: AND b.CREATED_FROM_LIST_LINE_ID <> v_list_line_id
1705: AND b.LINE_INDEX = p_line_index)
1706: AND a.LINE_INDEX = p_line_index; */
1708: /* UPDATE qp_npreq_line_attrs_tmp a
1709: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1710: WHERE a.LIST_LINE_ID
1711: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
1712: FROM qp_npreq_ldets_tmp b
1713: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
1714: AND b.PRICING_PHASE_ID = p_pricing_phase_id
1715: AND b.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1716: AND b.CREATED_FROM_LIST_LINE_ID <> v_list_line_id
1749: SET pricing_status_code = QP_PREQ_PUB.G_NOT_VALID, process_status = QP_PREQ_PUB.G_NOT_VALID
1750: WHERE line_index = p_line_index_tbl(i)
1751: and line_id is null; --bug 7539796
1752: FORALL i IN p_line_index_tbl.FIRST..p_line_index_tbl.LAST
1753: UPDATE qp_npreq_ldets_tmp
1754: SET PRICING_STATUS_CODE = QP_PREQ_PUB.G_STATUS_DELETED,
1755: PRICING_STATUS_TEXT = substr(p_pricing_status_text,1,2000)
1756: WHERE LINE_INDEX = p_line_index_tbl(i);
1757: FORALL i IN p_line_index_tbl.FIRST..p_line_index_tbl.LAST
1780: QP_PREQ_GRP.engine_debug('deleting ldets/rltd:'||p_pricing_status_text);
1781: END IF;
1782:
1783: FORALL i IN p_line_detail_index_tbl.FIRST..p_line_detail_index_tbl.LAST
1784: UPDATE qp_npreq_ldets_tmp a
1785: SET PRICING_STATUS_CODE = QP_PREQ_PUB.G_STATUS_DELETED,
1786: PRICING_STATUS_TEXT = substr(p_pricing_status_text,1,2000)
1787: WHERE LINE_DETAIL_INDEX = p_line_detail_index_tbl(i) OR
1788: EXISTS (SELECT 1 --[julin/4671446] also deleting children ldets
1814: -- [prarasto/4141235] find loser prg line indexes to be deleted, incompatibility group
1815: --frontported fix done in 4134088
1816: CURSOR l_del_prg_lines_grp_cur IS
1817: SELECT rltd.RELATED_LINE_INDEX
1818: FROM qp_npreq_ldets_tmp ldets, qp_npreq_rltd_lines_tmp rltd
1819: WHERE ldets.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1820: AND ldets.LINE_INDEX = p_line_index
1821: AND ldets.PRICING_PHASE_ID = p_pricing_phase_id
1822: AND ldets.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1828: -- [prarasto/4141235] find loser prg line indexes to be deleted, incompatibility group
1829: --frontported fix done in 4134088
1830: CURSOR l_del_oid_ldets_grp_cur IS
1831: SELECT rltd.RELATED_LINE_DETAIL_INDEX
1832: FROM qp_npreq_ldets_tmp ldets, qp_npreq_rltd_lines_tmp rltd
1833: WHERE ldets.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1834: AND ldets.LINE_INDEX = p_line_index
1835: AND ldets.PRICING_PHASE_ID = p_pricing_phase_id
1836: AND ldets.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1842: -- [prarasto/4141235] find loser prg line indexes to be deleted, incompatibility group
1843: --frontported fix done in 4134088
1844: CURSOR l_del_prg_lines_excl_cur IS
1845: SELECT rltd.RELATED_LINE_INDEX
1846: FROM qp_npreq_ldets_tmp ldets, qp_npreq_rltd_lines_tmp rltd
1847: WHERE ldets.LINE_INDEX = p_line_index
1848: AND ldets.PRICING_PHASE_ID = p_pricing_phase_id
1849: AND ldets.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1850: AND ldets.LINE_DETAIL_TYPE_CODE <> QP_PREQ_GRP.G_CHILD_DETAIL_TYPE
1855: -- [prarasto/4141235] find loser prg line indexes to be deleted, incompatibility group
1856: --frontported fix done in 4134088
1857: CURSOR l_del_oid_ldets_excl_cur IS
1858: SELECT rltd.RELATED_LINE_DETAIL_INDEX
1859: FROM qp_npreq_ldets_tmp ldets, qp_npreq_rltd_lines_tmp rltd
1860: WHERE ldets.LINE_INDEX = p_line_index
1861: AND ldets.PRICING_PHASE_ID = p_pricing_phase_id
1862: AND ldets.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1863: AND ldets.LINE_DETAIL_TYPE_CODE <> QP_PREQ_GRP.G_CHILD_DETAIL_TYPE
1883: IF (p_manual_dis_flag = QP_PREQ_GRP.G_YES) THEN
1884: IF (p_excl_discount = FALSE) THEN
1885:
1886: /*
1887: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1888: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1889: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1890: */
1891:
1884: IF (p_excl_discount = FALSE) THEN
1885:
1886: /*
1887: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1888: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1889: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1890: */
1891:
1892: UPDATE qp_npreq_ldets_tmp --upd1
1885:
1886: /*
1887: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1888: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1889: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1890: */
1891:
1892: UPDATE qp_npreq_ldets_tmp --upd1
1893: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1888: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1889: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd1,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1890: */
1891:
1892: UPDATE qp_npreq_ldets_tmp --upd1
1893: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1894: WHERE INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1895: AND LINE_INDEX = p_line_index
1896: AND PRICING_PHASE_ID = p_pricing_phase_id
1899: AND LINE_DETAIL_TYPE_CODE <> QP_PREQ_GRP.G_CHILD_DETAIL_TYPE -- Don't delete PBH Children any time
1900: AND PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;
1901:
1902: --Begin Bug No: 7691661
1903: UPDATE qp_npreq_ldets_tmp
1904: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1905: WHERE INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1906: AND LINE_INDEX = p_line_index
1907: AND PRICING_PHASE_ID = p_pricing_phase_id
1913: --End Bug No: 7691661
1914:
1915:
1916: /*
1917: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1918: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1919: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1914:
1915:
1916: /*
1917: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1918: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1919: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1922: */
1915:
1916: /*
1917: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1918: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1919: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1922: */
1923:
1916: /*
1917: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1918: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1919: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1922: */
1923:
1924: UPDATE qp_npreq_ldets_tmp --upd2
1917: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1918: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1919: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1922: */
1923:
1924: UPDATE qp_npreq_ldets_tmp --upd2
1925: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW,
1920: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1921: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd2,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1922: */
1923:
1924: UPDATE qp_npreq_ldets_tmp --upd2
1925: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW,
1926: AUTOMATIC_FLAG = QP_PREQ_GRP.G_NO,
1927: APPLIED_FLAG = QP_PREQ_GRP.G_NO
1928: WHERE INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1937: /* UPDATE qp_npreq_line_attrs_tmp a
1938: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
1939: WHERE a.LIST_LINE_ID
1940: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
1941: FROM qp_npreq_ldets_tmp b
1942: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
1943: AND b.PRICING_PHASE_ID = p_pricing_phase_id
1944: AND b.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
1945: AND b.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1949: AND a.LINE_INDEX = p_line_index; */
1950:
1951: ELSE
1952: /*
1953: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1954: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1955: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1956: */
1957:
1950:
1951: ELSE
1952: /*
1953: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1954: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1955: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1956: */
1957:
1958: UPDATE qp_npreq_ldets_tmp --upd3
1951: ELSE
1952: /*
1953: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
1954: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1955: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1956: */
1957:
1958: UPDATE qp_npreq_ldets_tmp --upd3
1959: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1954: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
1955: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd3,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
1956: */
1957:
1958: UPDATE qp_npreq_ldets_tmp --upd3
1959: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1960: WHERE LINE_INDEX = p_line_index
1961: AND PRICING_PHASE_ID = p_pricing_phase_id
1962: AND CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1964: AND LINE_DETAIL_TYPE_CODE <> QP_PREQ_GRP.G_CHILD_DETAIL_TYPE -- Don't delete PBH Children any time
1965: AND PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;
1966:
1967: /*
1968: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1969: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1970: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1965: AND PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;
1966:
1967: /*
1968: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1969: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1970: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1973: */
1966:
1967: /*
1968: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1969: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1970: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1973: */
1974: --Begin Bug No: 7691661
1967: /*
1968: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1969: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1970: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1973: */
1974: --Begin Bug No: 7691661
1975: UPDATE qp_npreq_ldets_tmp
1968: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
1969: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
1970: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1973: */
1974: --Begin Bug No: 7691661
1975: UPDATE qp_npreq_ldets_tmp
1976: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1971: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,CREATED_FROM_LIST_LINE_TYPE,4
1972: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd4,qp_npreq_ldets_tmp_N3,PRICING_STATUS_CODE,5
1973: */
1974: --Begin Bug No: 7691661
1975: UPDATE qp_npreq_ldets_tmp
1976: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
1977: WHERE LINE_INDEX = p_line_index
1978: AND PRICING_PHASE_ID = p_pricing_phase_id
1979: AND CREATED_FROM_LIST_LINE_ID <> p_list_line_id
1983: AND PRICING_STATUS_CODE IN (QP_PREQ_GRP.G_STATUS_NEW,QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL);
1984: --End Bug No: 7691661
1985:
1986:
1987: UPDATE qp_npreq_ldets_tmp --upd4
1988: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW,
1989: AUTOMATIC_FLAG = QP_PREQ_GRP.G_NO,
1990: APPLIED_FLAG = QP_PREQ_GRP.G_NO
1991: WHERE LINE_INDEX = p_line_index
1999: /* UPDATE qp_npreq_line_attrs_tmp a
2000: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
2001: WHERE a.LIST_LINE_ID
2002: IN (SELECT b.CREATED_FROM_LIST_LINE_ID
2003: FROM qp_npreq_ldets_tmp b
2004: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
2005: AND b.PRICING_PHASE_ID = p_pricing_phase_id
2006: AND b.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
2007: AND b.CREATED_FROM_LIST_LINE_ID <> p_list_line_id
2014: ELSE -- Automatic discounts
2015: IF (p_excl_discount = FALSE) THEN
2016:
2017: /*
2018: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2019: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2020: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2021: */
2022:
2015: IF (p_excl_discount = FALSE) THEN
2016:
2017: /*
2018: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2019: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2020: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2021: */
2022:
2023: UPDATE qp_npreq_ldets_tmp --upd5
2016:
2017: /*
2018: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2019: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2020: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2021: */
2022:
2023: UPDATE qp_npreq_ldets_tmp --upd5
2024: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
2019: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2020: INDX,QP_Resolve_Incompatability_PVTRUN.delete_incompatible_lines.upd5,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2021: */
2022:
2023: UPDATE qp_npreq_ldets_tmp --upd5
2024: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
2025: WHERE INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
2026: AND LINE_INDEX = p_line_index
2027: AND PRICING_PHASE_ID = p_pricing_phase_id
2028: AND CREATED_FROM_LIST_LINE_ID <> p_list_line_id
2029: AND LINE_DETAIL_TYPE_CODE <> QP_PREQ_GRP.G_CHILD_DETAIL_TYPE -- Don't delete PBH Children any time
2030: AND PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW;
2031: ELSE
2032: UPDATE qp_npreq_ldets_tmp
2033: SET PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
2034: WHERE LINE_INDEX = p_line_index
2035: AND PRICING_PHASE_ID = p_pricing_phase_id
2036: AND CREATED_FROM_LIST_LINE_ID <> p_list_line_id
2114: x_return_status_txt OUT NOCOPY VARCHAR2) AS
2115: -- Index Certificate
2116:
2117: /*
2118: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2119: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2120: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2121: */
2122:
2115: -- Index Certificate
2116:
2117: /*
2118: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2119: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2120: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2121: */
2122:
2123: CURSOR incomp_cur(p_manual_dis_flag VARCHAR2) IS
2116:
2117: /*
2118: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2119: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2120: INDX,QP_Resolve_Incompatability_PVTRUN.best_price_for_phase.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2121: */
2122:
2123: CURSOR incomp_cur(p_manual_dis_flag VARCHAR2) IS
2124: SELECT DISTINCT INCOMPATABILITY_GRP_CODE
2121: */
2122:
2123: CURSOR incomp_cur(p_manual_dis_flag VARCHAR2) IS
2124: SELECT DISTINCT INCOMPATABILITY_GRP_CODE
2125: FROM qp_npreq_ldets_tmp
2126: WHERE PRICING_PHASE_ID = p_pricing_phase_id
2127: AND INCOMPATABILITY_GRP_CODE IS NOT NULL
2128: AND LINE_INDEX = p_line_index
2129: AND ((AUTOMATIC_FLAG = QP_PREQ_GRP.G_YES AND p_manual_dis_flag = QP_PREQ_GRP.G_YES) OR
2148:
2149: /* UPDATE qp_npreq_line_attrs_tmp a
2150: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
2151: WHERE a.LIST_LINE_ID IN (SELECT b.CREATED_FROM_LIST_LINE_ID
2152: FROM qp_npreq_ldets_tmp b
2153: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_BEST_PRICE_EVAL
2154: AND b.PRICING_PHASE_ID = p_pricing_phase_id
2155: AND b.ASK_FOR_FLAG = QP_PREQ_GRP.G_YES
2156: AND b.LINE_INDEX = p_line_index)
2226:
2227: -- Index Certificate
2228:
2229: /*
2230: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2231: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2232: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2233: */
2234:
2227: -- Index Certificate
2228:
2229: /*
2230: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2231: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2232: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2233: */
2234:
2235: CURSOR incomp_cur(l_manual_dis_flag VARCHAR2) IS
2228:
2229: /*
2230: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,LINE_INDEX,1
2231: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_STATUS_CODE,2
2232: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.incomp_cur,qp_npreq_ldets_tmp_N1,PRICING_PHASE_ID,3
2233: */
2234:
2235: CURSOR incomp_cur(l_manual_dis_flag VARCHAR2) IS
2236: SELECT DISTINCT INCOMPATABILITY_GRP_CODE , PRICING_STATUS_CODE
2233: */
2234:
2235: CURSOR incomp_cur(l_manual_dis_flag VARCHAR2) IS
2236: SELECT DISTINCT INCOMPATABILITY_GRP_CODE , PRICING_STATUS_CODE
2237: FROM qp_npreq_ldets_tmp
2238: WHERE PRICING_PHASE_ID = p_pricing_phase_id
2239: AND INCOMPATABILITY_GRP_CODE IS NOT NULL
2240: AND PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_NEW
2241: AND ((AUTOMATIC_FLAG = QP_PREQ_GRP.G_YES AND l_manual_dis_flag = QP_PREQ_GRP.G_YES) OR
2242: l_manual_dis_flag = QP_PREQ_GRP.G_NO)
2243: AND LINE_INDEX = p_line_index;
2244:
2245: /*
2246: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2247: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2248: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2249:
2250: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,PRICING_STATUS_CODE,1
2243: AND LINE_INDEX = p_line_index;
2244:
2245: /*
2246: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2247: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2248: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2249:
2250: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,PRICING_STATUS_CODE,1
2251: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,ATTRIBUTE_TYPE,2
2244:
2245: /*
2246: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2247: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2248: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2249:
2250: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,PRICING_STATUS_CODE,1
2251: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,ATTRIBUTE_TYPE,2
2252: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_line_attrs_tmp_N2,CONTEXT,3
2257:
2258: --UNION
2259:
2260: /*
2261: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2262: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2263: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2264: */
2265:
2258: --UNION
2259:
2260: /*
2261: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2262: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2263: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2264: */
2265:
2266: CURSOR each_incomp_cur(p_incomp_grp_id VARCHAR2,l_manual_dis_flag VARCHAR2) IS
2259:
2260: /*
2261: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,LINE_INDEX,1
2262: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,PRICING_PHASE_ID,2
2263: INDX,QP_Resolve_Incompatability_PVTRUN.resolve_incompatability.each_incomp_cur,qp_npreq_ldets_tmp_N3,ASK_FOR_FLAG,3
2264: */
2265:
2266: CURSOR each_incomp_cur(p_incomp_grp_id VARCHAR2,l_manual_dis_flag VARCHAR2) IS
2267: SELECT a.CREATED_FROM_LIST_HEADER_ID,a.CREATED_FROM_LIST_LINE_ID,a.INCOMPATABILITY_GRP_CODE,a.ASK_FOR_FLAG
2264: */
2265:
2266: CURSOR each_incomp_cur(p_incomp_grp_id VARCHAR2,l_manual_dis_flag VARCHAR2) IS
2267: SELECT a.CREATED_FROM_LIST_HEADER_ID,a.CREATED_FROM_LIST_LINE_ID,a.INCOMPATABILITY_GRP_CODE,a.ASK_FOR_FLAG
2268: FROM qp_npreq_ldets_tmp a
2269: WHERE EXISTS (SELECT 'X'
2270: FROM qp_npreq_line_attrs_tmp b
2271: WHERE a.LINE_INDEX = b.LINE_INDEX
2272: AND b.ATTRIBUTE_TYPE = QP_PREQ_GRP.G_QUALIFIER_TYPE
2288: AND ((a.AUTOMATIC_FLAG = QP_PREQ_GRP.G_YES AND l_manual_dis_flag = QP_PREQ_GRP.G_YES) OR
2289: l_manual_dis_flag = QP_PREQ_GRP.G_NO)
2290: UNION
2291: SELECT a.CREATED_FROM_LIST_HEADER_ID,a.CREATED_FROM_LIST_LINE_ID,a.INCOMPATABILITY_GRP_CODE,'N' ASK_FOR_FLAG
2292: FROM qp_npreq_ldets_tmp a
2293: WHERE a.ASK_FOR_FLAG = QP_PREQ_GRP.G_NO -- Removed NVL , expect some issues
2294: AND a.INCOMPATABILITY_GRP_CODE = p_incomp_grp_id
2295: AND a.PRICING_PHASE_ID = p_pricing_phase_id
2296: AND a.LINE_INDEX = p_line_index
2336:
2337: /* UPDATE qp_npreq_line_attrs_tmp a
2338: SET a.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
2339: WHERE a.LIST_LINE_ID IN (SELECT b.CREATED_FROM_LIST_LINE_ID
2340: FROM qp_npreq_ldets_tmp b
2341: WHERE b.PRICING_STATUS_CODE = QP_PREQ_GRP.G_STATUS_INCOMP_LOGIC
2342: AND b.PRICING_PHASE_ID = p_pricing_phase_id
2343: AND b.ASK_FOR_FLAG = QP_PREQ_GRP.G_YES
2344: AND b.LINE_INDEX = p_line_index)