DBA Data[Home] [Help]

APPS.PA_FP_GEN_COMMITMENT_AMOUNTS dependencies on PA_FP_GEN_RATE_TMP

Line 1609: | source rates are not populated in PA_FP_GEN_RATE_TMP for the resource |

1605: | C2. the Source and Target are both Cost and Revenue Together versions |
1606: | C3. Source/Target Planning Options match. |
1607: | This is happening because, in the GEN_FCST_TASK_LEVEL_AMT API, we do |
1608: | not process resources that do not have Uncommitted ETC. As a result, |
1609: | source rates are not populated in PA_FP_GEN_RATE_TMP for the resource |
1610: | and Calculate derives the revenue using the Target's Rate Schedule. |
1611: | The same issue should arise during Budget Generation when C1-C3 hold. |
1612: | |
1613: | The fix is to populate PA_FP_GEN_RATE_TMP with periodic source rates |

Line 1613: | The fix is to populate PA_FP_GEN_RATE_TMP with periodic source rates |

1609: | source rates are not populated in PA_FP_GEN_RATE_TMP for the resource |
1610: | and Calculate derives the revenue using the Target's Rate Schedule. |
1611: | The same issue should arise during Budget Generation when C1-C3 hold. |
1612: | |
1613: | The fix is to populate PA_FP_GEN_RATE_TMP with periodic source rates |
1614: | for resources when they do not already exist AND conditions 1-3 hold. |
1615: | To populate the rates, do the following: |
1616: | 1. Verify version-level conditions C2 and C3 |
1617: | 2. Fetch distinct (Source Resource Assignment Id, Target Resource |

Line 1620: | B. do not have records in pa_fp_gen_rate_tmp for the |

1616: | 1. Verify version-level conditions C2 and C3 |
1617: | 2. Fetch distinct (Source Resource Assignment Id, Target Resource |
1618: | Assignment Id, Txn Currency) triples that: |
1619: | A. are billable |
1620: | B. do not have records in pa_fp_gen_rate_tmp for the |
1621: | (Target Resource Assignment Id, Txn Currency) combo. |
1622: | C. have planning resources in the source financial plan (i.e. C1). |
1623: | 3. For each triple from Step 2, call the POPULATE_GEN_RATE API. |
1624: | 4. If l_source_context is 'BUDGET_LINE', null-out the Raw Cost Rate |

Line 1625: | and Burdened Cost Rate columns of PA_FP_GEN_RATE_TMP since we only |

1621: | (Target Resource Assignment Id, Txn Currency) combo. |
1622: | C. have planning resources in the source financial plan (i.e. C1). |
1623: | 3. For each triple from Step 2, call the POPULATE_GEN_RATE API. |
1624: | 4. If l_source_context is 'BUDGET_LINE', null-out the Raw Cost Rate |
1625: | and Burdened Cost Rate columns of PA_FP_GEN_RATE_TMP since we only |
1626: | want the Calculate API to compute revenue and honor Revenue Rates. |
1627: | |
1628: | Note that l_tgt_res_asg_id_tab and l_txn_currency_code_tab contain |
1629: | are populated at this point and contain Distinct values. |

Line 1711: -- B. do not have records in pa_fp_gen_rate_tmp for the

1707:
1708: -- Bug 4582616 Step 2: Fetch distinct (Source Resource Assignment
1709: -- Id, Target Resource Assignment Id, Txn Currency) triples that:
1710: -- A. are billable
1711: -- B. do not have records in pa_fp_gen_rate_tmp for the
1712: -- (Target Resource Assignment Id, Txn Currency) combo.
1713: -- C. have planning resources in the source financial plan.
1714: -- The pa_fp_rollup_tmp table should be unused now, so use it
1715: -- to do the above processing logic in bulk.

Line 1755: FROM pa_fp_gen_rate_tmp gen_tmp

1751: AND src_ra.budget_version_id = l_fp_src_plan_ver_id
1752: AND tgt_ra.project_id = p_project_id
1753: AND src_ra.project_id = p_project_id
1754: AND NOT EXISTS ( SELECT null -- B. check for existing gen_tmp records
1755: FROM pa_fp_gen_rate_tmp gen_tmp
1756: WHERE gen_tmp.TARGET_RES_ASG_ID = tgt_ra.resource_assignment_id
1757: AND gen_tmp.txn_currency_code = cmt.txn_currency_code );
1758:
1759: ELSIF l_calling_context = lc_ForecastGeneration THEN

Line 1776: FROM pa_fp_gen_rate_tmp gen_tmp

1772: AND tmp1.target_res_asg_id = cmt.resource_assignment_id
1773: AND ta.task_id (+) = NVL(tmp1.task_id,0) -- A. check billability
1774: AND NVL(ta.billable_flag,'Y') = 'Y' -- A. check billability
1775: AND NOT EXISTS ( SELECT null -- B. check for existing gen_tmp records
1776: FROM pa_fp_gen_rate_tmp gen_tmp
1777: WHERE gen_tmp.target_res_asg_id = tmp1.target_res_asg_id
1778: AND gen_tmp.txn_currency_code = cmt.txn_currency_code );
1779:
1780: END IF; -- l_calling_context check

Line 1782: -- Bug 4582616 Step 3: Populate PA_FP_GEN_RATE_TMP with missing

1778: AND gen_tmp.txn_currency_code = cmt.txn_currency_code );
1779:
1780: END IF; -- l_calling_context check
1781:
1782: -- Bug 4582616 Step 3: Populate PA_FP_GEN_RATE_TMP with missing
1783: -- Periodic Source Rates.
1784:
1785: FOR i IN 1..l_sr_src_ra_id_tab.count LOOP
1786:

Line 1895: -- the PA_FP_GEN_RATE_TMP table since we only want the Calculate API

1891: DELETE FROM PA_BUDGET_LINES
1892: WHERE budget_line_id = l_budget_line_id_tab(i);
1893:
1894: -- Bug 4582616 Step 4: Delete Raw Cost and Burdened Cost Rates from
1895: -- the PA_FP_GEN_RATE_TMP table since we only want the Calculate API
1896: -- to compute revenue and honor Revenue Rates. This Update is not
1897: -- necessary when the Target is None timephased because Calculate
1898: -- should ignore the cost rates when l_refresh_rates_flag is 'R'.
1899:

Line 1900: UPDATE pa_fp_gen_rate_tmp

1896: -- to compute revenue and honor Revenue Rates. This Update is not
1897: -- necessary when the Target is None timephased because Calculate
1898: -- should ignore the cost rates when l_refresh_rates_flag is 'R'.
1899:
1900: UPDATE pa_fp_gen_rate_tmp
1901: SET raw_cost_rate = null,
1902: burdened_cost_rate = null;
1903:
1904: END IF; -- None time phase check