24: */
25: PROCEDURE UPD_NRB_TXN_OVR_RATES
26: (P_PROJECT_ID IN PA_PROJECTS_ALL.PROJECT_ID%TYPE,
27: P_BUDGET_VERSION_ID IN PA_BUDGET_VERSIONS.BUDGET_VERSION_ID%TYPE,
28: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
29: P_ETC_START_DATE IN DATE,
30: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
31: X_MSG_COUNT OUT NOCOPY NUMBER,
32: X_MSG_DATA OUT NOCOPY VARCHAR2 )
133: END IF;
134:
135: -- Print values of Input Parameters to debug log
136: IF p_pa_debug_mode = 'Y' THEN
137: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
138: ( p_msg => 'Input Parameters for '
139: || l_module_name || '():',
140: --p_called_mode => p_called_mode,
141: p_module_name => l_module_name,
139: || l_module_name || '():',
140: --p_called_mode => p_called_mode,
141: p_module_name => l_module_name,
142: p_log_level => l_log_level );
143: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
144: ( p_msg => 'P_PROJECT_ID:['||p_project_id||']',
145: --p_called_mode => p_called_mode,
146: p_module_name => l_module_name,
147: p_log_level => l_log_level );
144: ( p_msg => 'P_PROJECT_ID:['||p_project_id||']',
145: --p_called_mode => p_called_mode,
146: p_module_name => l_module_name,
147: p_log_level => l_log_level );
148: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
149: ( p_msg => 'P_BUDGET_VERSION_ID:['||p_budget_version_id||']',
150: --p_called_mode => p_called_mode,
151: p_module_name => l_module_name,
152: p_log_level => l_log_level );
149: ( p_msg => 'P_BUDGET_VERSION_ID:['||p_budget_version_id||']',
150: --p_called_mode => p_called_mode,
151: p_module_name => l_module_name,
152: p_log_level => l_log_level );
153: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
154: ( p_msg => 'P_FP_COLS_REC.X_PLAN_CLASS_CODE:[' ||
155: p_fp_cols_rec.x_plan_class_code || ']',
156: --p_called_mode => p_called_mode,
157: p_module_name => l_module_name,
155: p_fp_cols_rec.x_plan_class_code || ']',
156: --p_called_mode => p_called_mode,
157: p_module_name => l_module_name,
158: p_log_level => l_log_level );
159: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
160: ( p_msg => 'P_FP_COLS_REC.X_VERSION_TYPE:[' ||
161: p_fp_cols_rec.x_version_type || ']',
162: --p_called_mode => p_called_mode,
163: p_module_name => l_module_name,
161: p_fp_cols_rec.x_version_type || ']',
162: --p_called_mode => p_called_mode,
163: p_module_name => l_module_name,
164: p_log_level => l_log_level );
165: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
166: ( p_msg => 'P_ETC_START_DATE:['||p_etc_start_date||']',
167: --p_called_mode => p_called_mode,
168: p_module_name => l_module_name,
169: p_log_level => l_log_level );
174: p_budget_version_id is NULL OR
175: ( p_etc_start_date is NULL AND
176: p_fp_cols_rec.x_plan_class_code = 'FORECAST' ) THEN
177: IF p_pa_debug_mode = 'Y' THEN
178: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
179: ( p_msg => 'Input Parameter Validation FAILED',
180: --p_called_mode => p_called_mode,
181: p_module_name => l_module_name,
182: p_log_level => l_log_level );
209: -- can be called just once.
210: l_maint_data_ins_req_flag := 'N';
211:
212: IF p_pa_debug_mode = 'Y' THEN
213: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
214: ( p_msg => 'Beginning Update Case 1',
215: --p_called_mode => p_called_mode,
216: p_module_name => l_module_name,
217: p_log_level => l_log_level );
255: DELETE pa_resource_asgn_curr_tmp;
256: l_rbc_tmp_tbl_deleted_flag := 'Y';
257:
258: IF p_pa_debug_mode = 'Y' THEN
259: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
260: ( p_msg => 'Records Deleted from pa_resource_asgn_curr_tmp',
261: --p_called_mode => p_called_mode,
262: p_module_name => l_module_name,
263: p_log_level => l_log_level );
278: 0, -- txn_burden_cost_rate_override
279: 1 ); -- txn_bill_rate_override
280:
281: IF p_pa_debug_mode = 'Y' THEN
282: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
283: ( p_msg => 'Number of records Inserted into ' ||
284: 'PA_RESOURCE_ASGN_CURR_TMP:['||sql%Rowcount||']',
285: --p_called_mode => p_called_mode,
286: p_module_name => l_module_name,
291: END IF; -- IF p_fp_cols_rec.x_version_type = 'ALL' THEN
292: /* End Update Case 1 */
293:
294: IF p_pa_debug_mode = 'Y' THEN
295: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
296: ( p_msg => 'Beginning Update Case 2',
297: --p_called_mode => p_called_mode,
298: p_module_name => l_module_name,
299: p_log_level => l_log_level );
342: DELETE pa_resource_asgn_curr_tmp;
343: l_rbc_tmp_tbl_deleted_flag := 'Y';
344:
345: IF p_pa_debug_mode = 'Y' THEN
346: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
347: ( p_msg => 'Records Deleted from pa_resource_asgn_curr_tmp',
348: --p_called_mode => p_called_mode,
349: p_module_name => l_module_name,
350: p_log_level => l_log_level );
370: ( l_res_asg_id_tab(i),
371: l_txn_currency_code_tab(i) );
372:
373: IF p_pa_debug_mode = 'Y' THEN
374: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
375: ( p_msg => 'Number of records Inserted into ' ||
376: 'PA_RESOURCE_ASGN_CURR_TMP:['||sql%Rowcount||']',
377: --p_called_mode => p_called_mode,
378: p_module_name => l_module_name,
390: IF l_maint_data_ins_req_flag = 'Y' THEN
391:
392: -- Call the maintenance api in INSERT mode
393: IF p_pa_debug_mode = 'Y' THEN
394: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
395: P_MSG => 'Before calling PA_RES_ASG_CURRENCY_PUB.' ||
396: 'MAINTAIN_DATA',
397: --P_CALLED_MODE => p_called_mode,
398: P_MODULE_NAME => l_module_name);
406: X_RETURN_STATUS => x_return_status,
407: X_MSG_COUNT => x_msg_count,
408: X_MSG_DATA => x_msg_data );
409: IF p_pa_debug_mode = 'Y' THEN
410: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
411: P_MSG => 'After calling PA_RES_ASG_CURRENCY_PUB.' ||
412: 'MAINTAIN_DATA: '||x_return_status,
413: --P_CALLED_MODE => p_called_mode,
414: P_MODULE_NAME => l_module_name);
442: ROLLBACK;
443: x_return_status := FND_API.G_RET_STS_ERROR;
444:
445: IF p_pa_debug_mode = 'Y' THEN
446: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
447: (p_msg => 'Invalid Arguments Passed',
448: p_module_name => l_module_name,
449: p_log_level => 5);
450: PA_DEBUG.RESET_CURR_FUNCTION;
460: p_procedure_name => l_procedure_name,
461: p_error_text => substr(sqlerrm,1,240));
462:
463: IF p_pa_debug_mode = 'Y' THEN
464: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
465: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
466: p_module_name => l_module_name,
467: p_log_level => 5);
468: PA_DEBUG.RESET_CURR_FUNCTION;
580: ROLLBACK;
581: x_return_status := FND_API.G_RET_STS_ERROR;
582:
583: IF p_pa_debug_mode = 'Y' THEN
584: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
585: (p_msg => 'Invalid Arguments Passed',
586: p_module_name => l_module_name,
587: p_log_level => 5);
588: PA_DEBUG.RESET_CURR_FUNCTION;
598: p_procedure_name => l_procedure_name,
599: p_error_text => substr(sqlerrm,1,240));
600:
601: IF p_pa_debug_mode = 'Y' THEN
602: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
603: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
604: p_module_name => l_module_name,
605: p_log_level => 5);
606: PA_DEBUG.RESET_CURR_FUNCTION;
620: * change with future modifications.
621: */
622: PROCEDURE CHK_UPD_RATE_BASED_FLAG
623: (P_BUDGET_VERSION_ID IN PA_BUDGET_VERSIONS.BUDGET_VERSION_ID%TYPE,
624: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
625: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
626: X_MSG_COUNT OUT NOCOPY NUMBER,
627: X_MSG_DATA OUT NOCOPY VARCHAR2)
628: IS
704: ROLLBACK;
705: x_return_status := FND_API.G_RET_STS_ERROR;
706:
707: IF p_pa_debug_mode = 'Y' THEN
708: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
709: (p_msg => 'Invalid Arguments Passed',
710: p_module_name => l_module_name,
711: p_log_level => 5);
712: PA_DEBUG.RESET_CURR_FUNCTION;
722: p_procedure_name => 'CHK_UPD_RATE_BASED_FLAG',
723: p_error_text => substr(sqlerrm,1,240));
724:
725: IF p_pa_debug_mode = 'Y' THEN
726: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
727: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
728: p_module_name => l_module_name,
729: p_log_level => 5);
730: PA_DEBUG.RESET_CURR_FUNCTION;
785: l_calendar_type_tab(1) := P_CALENDAR_TYPE;
786: l_end_date_tab(1) := P_ACTUALS_THRU_DATE;
787:
788: IF P_PA_DEBUG_MODE = 'Y' THEN
789: pa_fp_gen_amount_utils.fp_debug
790: (p_msg => 'Before calling PJI_FM_XBS_ACCUM_UTILS.get_summarized_data;'
791: ||'project id passed to get_summarized:'||l_project_id_tab(1)
792: ||'; resource_list_id:'||l_resource_list_id_tab(1)
793: ||'; structure version id:'||l_struct_ver_id_tab(1)
814: p_currency_type => 6,
815: x_return_status => x_return_status,
816: x_msg_code => x_msg_data);
817: IF P_PA_DEBUG_MODE = 'Y' THEN
818: pa_fp_gen_amount_utils.fp_debug
819: (p_msg => 'After calling PJI_FM_XBS_ACCUM_UTILS.get_summarized_data,
820: return status is:'||x_return_status,
821: p_module_name => l_module_name,
822: p_log_level => 5);
837: FROM pa_resource_lists_all_bg
838: WHERE resource_list_id = p_resource_list_id;
839:
840: IF l_uncategorized_flag = 'Y' THEN
841: l_rlm_id := PA_FP_GEN_AMOUNT_UTILS.GET_RLM_ID (
842: p_project_id => p_project_id,
843: p_resource_list_id => p_resource_list_id,
844: p_resource_class_code => 'FINANCIAL_ELEMENTS' );
845: UPDATE pji_fm_xbs_accum_tmp1
976: ROLLBACK;
977:
978: x_return_status := FND_API.G_RET_STS_ERROR;
979: IF P_PA_DEBUG_MODE = 'Y' THEN
980: pa_fp_gen_amount_utils.fp_debug
981: (p_msg => 'Invalid Arguments Passed',
982: p_module_name => l_module_name,
983: p_log_level => 5);
984: PA_DEBUG.Reset_Curr_Function;
991: FND_MSG_PUB.add_exc_msg
992: ( p_pkg_name => 'PA_FP_GEN_FCST_AMT_PUB1'
993: ,p_procedure_name => 'CALL_SUMM_POP_TMPS');
994: IF P_PA_DEBUG_MODE = 'Y' THEN
995: pa_fp_gen_amount_utils.fp_debug
996: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
997: p_module_name => l_module_name,
998: p_log_level => 5);
999: PA_DEBUG.Reset_Curr_Function;
1004: PROCEDURE GEN_AVERAGE_OF_ACTUALS_WRP
1005: (P_BUDGET_VERSION_ID IN PA_BUDGET_VERSIONS.BUDGET_VERSION_ID%TYPE,
1006: P_TASK_ID IN PA_RESOURCE_ASSIGNMENTS.TASK_ID%TYPE,
1007: P_ACTUALS_THRU_DATE IN DATE,
1008: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
1009: P_ACTUALS_FROM_PERIOD IN PA_PERIODS_ALL.PERIOD_NAME%TYPE,
1010: P_ACTUALS_TO_PERIOD IN PA_PERIODS_ALL.PERIOD_NAME%TYPE,
1011: P_ETC_FROM_PERIOD IN PA_PERIODS_ALL.PERIOD_NAME%TYPE,
1012: P_ETC_TO_PERIOD IN PA_PERIODS_ALL.PERIOD_NAME%TYPE,
1347: END IF;
1348:
1349: IF l_res_asg_id_tab.count = 0 THEN
1350: IF P_PA_DEBUG_MODE = 'Y' THEN
1351: pa_fp_gen_amount_utils.fp_debug
1352: (p_msg => 'inside GEN_AVERAGE_OF_ACTUALS_WRP,no res asg, return...',
1353: p_module_name => l_module_name,
1354: p_log_level => 5);
1355: PA_DEBUG.RESET_CURR_FUNCTION;
1379: l_currency_code := P_FP_COLS_REC.x_project_currency_code;
1380: END IF;
1381:
1382: IF P_PA_DEBUG_MODE = 'Y' THEN
1383: pa_fp_gen_amount_utils.fp_debug
1384: (p_msg => 'Before calling PA_FP_GEN_FCST_AMT_PVT.GEN_AVERAGE_OF_ACTUALS',
1385: p_module_name => l_module_name,
1386: p_log_level => 5);
1387: END IF;
1404: X_RETURN_STATUS => X_RETURN_STATUS,
1405: X_MSG_COUNT => X_MSG_COUNT,
1406: X_MSG_DATA => X_MSG_DATA );
1407: IF P_PA_DEBUG_MODE = 'Y' THEN
1408: pa_fp_gen_amount_utils.fp_debug
1409: (p_msg => 'After calling PA_FP_GEN_FCST_AMT_PVT.GEN_AVERAGE_OF_ACTUALS,
1410: return status is: '||x_return_status,
1411: p_module_name => l_module_name,
1412: p_log_level => 5);
1450: ROLLBACK;
1451: x_return_status := FND_API.G_RET_STS_ERROR;
1452:
1453: IF P_PA_DEBUG_MODE = 'Y' THEN
1454: pa_fp_gen_amount_utils.fp_debug
1455: (p_msg => 'Invalid Arguments Passed',
1456: p_module_name => l_module_name,
1457: p_log_level => 5);
1458: PA_DEBUG.RESET_CURR_FUNCTION;
1468: p_procedure_name => 'GEN_AVERAGE_OF_ACTUALS_WRP',
1469: p_error_text => substr(sqlerrm,1,240));
1470:
1471: IF P_PA_DEBUG_MODE = 'Y' THEN
1472: pa_fp_gen_amount_utils.fp_debug
1473: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
1474: p_module_name => l_module_name,
1475: p_log_level => 5);
1476: PA_DEBUG.RESET_CURR_FUNCTION;
1488: P_RESOURCE_ASSIGNMENT_ID IN NUMBER,
1489: P_TASK_ID IN NUMBER,
1490: P_RESOURCE_LIST_MEMBER_ID IN NUMBER,
1491: P_ACTUALS_THRU_DATE IN PA_PERIODS_ALL.END_DATE%TYPE,
1492: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
1493: P_WP_STRUCTURE_VERSION_ID IN PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
1494: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
1495: X_MSG_COUNT OUT NOCOPY NUMBER,
1496: X_MSG_DATA OUT NOCOPY VARCHAR2)
1709: l_currency_flag := 'PC';
1710: l_etc_currency_code := P_FP_COLS_REC.x_project_currency_code;
1711:
1712: IF P_PA_DEBUG_MODE = 'Y' THEN
1713: pa_fp_gen_amount_utils.fp_debug
1714: (p_msg => 'Before calling PA_PROGRESS_UTILS.'||
1715: 'get_actuals_for_task in remain_bdgt',
1716: p_module_name => l_module_name,
1717: p_log_level => 5);
1750: x_return_status => x_return_status,
1751: x_msg_count => x_msg_count,
1752: x_msg_data => x_msg_data );
1753: IF P_PA_DEBUG_MODE = 'Y' THEN
1754: pa_fp_gen_amount_utils.fp_debug
1755: (p_msg => 'After calling PA_PROGRESS_UTILS.'||
1756: 'get_actuals_for_task in remain_bdgt'||x_return_status,
1757: p_module_name => l_module_name,
1758: p_log_level => 5);
1876: ROLLBACK;
1877: x_return_status := FND_API.G_RET_STS_ERROR;
1878:
1879: IF P_PA_DEBUG_MODE = 'Y' THEN
1880: pa_fp_gen_amount_utils.fp_debug
1881: (p_msg => 'Invalid Arguments Passed',
1882: p_module_name => l_module_name,
1883: p_log_level => 5);
1884: PA_DEBUG.RESET_CURR_FUNCTION;
1895: p_procedure_name => 'GEN_ETC_REMAIN_BDGT_AMTS',
1896: p_error_text => substr(sqlerrm,1,240));
1897:
1898: IF P_PA_DEBUG_MODE = 'Y' THEN
1899: pa_fp_gen_amount_utils.fp_debug
1900: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
1901: p_module_name => l_module_name,
1902: p_log_level => 5);
1903: PA_DEBUG.RESET_CURR_FUNCTION;
1912: P_RESOURCE_ASSIGNMENT_ID IN NUMBER,
1913: P_TASK_ID IN NUMBER,
1914: P_RESOURCE_LIST_MEMBER_ID IN NUMBER,
1915: P_ACTUALS_THRU_DATE IN PA_PERIODS_ALL.END_DATE%TYPE,
1916: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
1917: P_WP_STRUCTURE_VERSION_ID IN PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
1918: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
1919: X_MSG_COUNT OUT NOCOPY NUMBER,
1920: X_MSG_DATA OUT NOCOPY VARCHAR2 )
1986: END IF;
1987:
1988:
1989: IF P_PA_DEBUG_MODE = 'Y' THEN
1990: pa_fp_gen_amount_utils.fp_debug
1991: (p_msg => 'Before calling PA_PROGRESS_UTILS.REDEFAULT_BASE_PC',
1992: p_module_name => l_module_name,
1993: p_log_level => 5);
1994: END IF;
2012: x_return_status => x_return_status,
2013: x_msg_count => x_msg_count,
2014: x_msg_data => x_msg_data );
2015: IF P_PA_DEBUG_MODE = 'Y' THEN
2016: pa_fp_gen_amount_utils.fp_debug
2017: (p_msg => 'After calling PA_PROGRESS_UTILS.REDEFAULT_BASE_PC,
2018: return status is:'||x_return_status,
2019: p_module_name => l_module_name,
2020: p_log_level => 5);
2146: ROLLBACK;
2147: x_return_status := FND_API.G_RET_STS_ERROR;
2148:
2149: IF P_PA_DEBUG_MODE = 'Y' THEN
2150: pa_fp_gen_amount_utils.fp_debug
2151: (p_msg => 'Invalid Arguments Passed',
2152: p_module_name => l_module_name,
2153: p_log_level => 5);
2154: PA_DEBUG.RESET_CURR_FUNCTION;
2165: p_procedure_name => 'GEN_ETC_BDGT_COMPLETE_AMTS',
2166: p_error_text => substr(sqlerrm,1,240));
2167:
2168: IF P_PA_DEBUG_MODE = 'Y' THEN
2169: pa_fp_gen_amount_utils.fp_debug
2170: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
2171: p_module_name => l_module_name,
2172: p_log_level => 5);
2173: PA_DEBUG.RESET_CURR_FUNCTION;
2180: P_RESOURCE_ASSIGNMENT_ID IN NUMBER,
2181: P_TASK_ID IN NUMBER,
2182: P_RESOURCE_LIST_MEMBER_ID IN NUMBER,
2183: P_ACTUALS_THRU_DATE IN PA_PERIODS_ALL.END_DATE%TYPE,
2184: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
2185: P_WP_STRUCTURE_VERSION_ID IN PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
2186: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
2187: X_MSG_COUNT OUT NOCOPY NUMBER,
2188: X_MSG_DATA OUT NOCOPY VARCHAR2
2285: END IF;
2286:
2287:
2288: IF P_PA_DEBUG_MODE = 'Y' THEN
2289: pa_fp_gen_amount_utils.fp_debug
2290: (p_msg => 'Before calling PA_PROGRESS_UTILS.REDEFAULT_BASE_PC',
2291: p_module_name => l_module_name,
2292: p_log_level => 5);
2293: END IF;
2304: x_return_status => x_return_status,
2305: x_msg_count => x_msg_count,
2306: x_msg_data => x_msg_data );
2307: IF P_PA_DEBUG_MODE = 'Y' THEN
2308: pa_fp_gen_amount_utils.fp_debug
2309: (p_msg => 'After calling PA_PROGRESS_UTILS.REDEFAULT_BASE_PC,
2310: return status is:'||x_return_status,
2311: p_module_name => l_module_name,
2312: p_log_level => 5);
2397: END;
2398: END IF;
2399: ELSIF P_ETC_SOURCE_CODE = 'WORKPLAN_RESOURCES' THEN
2400: IF P_PA_DEBUG_MODE = 'Y' THEN
2401: pa_fp_gen_amount_utils.fp_debug
2402: (p_msg => 'Before calling PA_PROGRESS_UTILS.'||
2403: 'get_actuals_for_task in earned_value',
2404: p_module_name => l_module_name,
2405: p_log_level => 5);
2437: x_return_status => x_return_status,
2438: x_msg_count => x_msg_count,
2439: x_msg_data => x_msg_data );
2440: IF P_PA_DEBUG_MODE = 'Y' THEN
2441: pa_fp_gen_amount_utils.fp_debug
2442: (p_msg => 'After calling PA_PROGRESS_UTILS.'||
2443: 'get_actuals_for_task in earned_value'||x_return_status,
2444: p_module_name => l_module_name,
2445: p_log_level => 5);
2616: ROLLBACK;
2617: x_return_status := FND_API.G_RET_STS_ERROR;
2618:
2619: IF P_PA_DEBUG_MODE = 'Y' THEN
2620: pa_fp_gen_amount_utils.fp_debug
2621: (p_msg => 'Invalid Arguments Passed',
2622: p_module_name => l_module_name,
2623: p_log_level => 5);
2624: PA_DEBUG.RESET_CURR_FUNCTION;
2635: p_procedure_name => 'GEN_ETC_EARNED_VALUE_AMTS',
2636: p_error_text => substr(sqlerrm,1,240));
2637:
2638: IF P_PA_DEBUG_MODE = 'Y' THEN
2639: pa_fp_gen_amount_utils.fp_debug
2640: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
2641: p_module_name => l_module_name,
2642: p_log_level => 5);
2643: PA_DEBUG.RESET_CURR_FUNCTION;
2651: P_BUDGET_VERSION_ID IN PA_BUDGET_VERSIONS.BUDGET_VERSION_ID%TYPE,
2652: P_TASK_ID IN NUMBER,
2653: P_TARGET_RES_LIST_ID IN NUMBER,
2654: P_ACTUALS_THRU_DATE IN PA_PERIODS_ALL.END_DATE%TYPE,
2655: P_FP_COLS_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
2656: P_WP_STRUCTURE_VERSION_ID IN PA_PROJ_ELEM_VER_STRUCTURE.ELEMENT_VERSION_ID%TYPE,
2657: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
2658: X_MSG_COUNT OUT NOCOPY NUMBER,
2659: X_MSG_DATA OUT NOCOPY VARCHAR2)
2759: l_stru_sharing_code :=
2760: PA_PROJECT_STRUCTURE_UTILS.get_Structure_sharing_code(P_PROJECT_ID=> P_PROJECT_ID);
2761: IF l_stru_sharing_code = 'SHARE_FULL' THEN
2762: IF P_PA_DEBUG_MODE = 'Y' THEN
2763: pa_fp_gen_amount_utils.fp_debug
2764: (p_msg => 'Before calling PA_PROGRESS_UTILS.'||
2765: 'get_actuals_for_task when SHARE_FULL',
2766: p_module_name => l_module_name,
2767: p_log_level => 5);
2799: x_return_status => x_return_status,
2800: x_msg_count => x_msg_count,
2801: x_msg_data => x_msg_data );
2802: IF P_PA_DEBUG_MODE = 'Y' THEN
2803: pa_fp_gen_amount_utils.fp_debug
2804: (p_msg => 'After calling PA_PROGRESS_UTILS.'||
2805: 'get_actuals_for_task when SHARE_FULL'||x_return_status,
2806: p_module_name => l_module_name,
2807: p_log_level => 5);
2830: AND MAPPED_FIN_TASK_ID = P_TASK_ID;
2831:
2832: FOR i IN 1..l_wp_task_tab.count LOOP
2833: IF P_PA_DEBUG_MODE = 'Y' THEN
2834: pa_fp_gen_amount_utils.fp_debug
2835: (p_msg => 'Before calling PA_PROGRESS_UTILS.'||
2836: 'get_actuals_for_task when MAPPING',
2837: p_module_name => l_module_name,
2838: p_log_level => 5);
2870: x_return_status => x_return_status,
2871: x_msg_count => x_msg_count,
2872: x_msg_data => x_msg_data );
2873: IF P_PA_DEBUG_MODE = 'Y' THEN
2874: pa_fp_gen_amount_utils.fp_debug
2875: (p_msg => 'After calling PA_PROGRESS_UTILS.'||
2876: 'get_actuals_for_task when MAPPING'||x_return_status,
2877: p_module_name => l_module_name,
2878: p_log_level => 5);
2905: AND OBJECT_TYPE = 'PA_TASKS';
2906:
2907: FOR i IN 1..l_wp_task_tab.count LOOP
2908: IF P_PA_DEBUG_MODE = 'Y' THEN
2909: pa_fp_gen_amount_utils.fp_debug
2910: (p_msg => 'Before calling PA_PROGRESS_UTILS.'||
2911: 'get_actuals_for_task when NO_MAPPINGL',
2912: p_module_name => l_module_name,
2913: p_log_level => 5);
2945: x_return_status => x_return_status,
2946: x_msg_count => x_msg_count,
2947: x_msg_data => x_msg_data );
2948: IF P_PA_DEBUG_MODE = 'Y' THEN
2949: pa_fp_gen_amount_utils.fp_debug
2950: (p_msg => 'After calling PA_PROGRESS_UTILS.'||
2951: 'get_actuals_for_task when NO_MAPPING'||x_return_status,
2952: p_module_name => l_module_name,
2953: p_log_level => 5);
3027:
3028: END IF;
3029: /**For work quantity, we needn't do mapping, because we get the corresponding res
3030: *list id (PEOPLE) for the specific rml_id**/
3031: l_ppl_class_rlm_id := PA_FP_GEN_AMOUNT_UTILS.GET_RLM_ID
3032: (P_PROJECT_ID => P_PROJECT_ID,
3033: P_RESOURCE_LIST_ID => P_TARGET_RES_LIST_ID,
3034: P_RESOURCE_CLASS_CODE => 'FINANCIAL_ELEMENTS');
3035: /*
3083: ROLLBACK;
3084: x_return_status := FND_API.G_RET_STS_ERROR;
3085:
3086: IF P_PA_DEBUG_MODE = 'Y' THEN
3087: pa_fp_gen_amount_utils.fp_debug
3088: (p_msg => 'Invalid Arguments Passed',
3089: p_module_name => l_module_name,
3090: p_log_level => 5);
3091: PA_DEBUG.RESET_CURR_FUNCTION;
3102: p_procedure_name => 'GEN_ETC_WORK_QTY_AMTS',
3103: p_error_text => substr(sqlerrm,1,240));
3104:
3105: IF P_PA_DEBUG_MODE = 'Y' THEN
3106: pa_fp_gen_amount_utils.fp_debug
3107: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
3108: p_module_name => l_module_name,
3109: p_log_level => 5);
3110: PA_DEBUG.RESET_CURR_FUNCTION;
3158: created based on the task + people resourece class combination.
3159: This is to generate the ETC amounts by calling the forecast
3160: generation client extension API. - msoundra */
3161:
3162: l_target_class_rlm_id := PA_FP_GEN_AMOUNT_UTILS.GET_RLM_ID
3163: (P_PROJECT_ID => P_PROJECT_ID,
3164: P_RESOURCE_LIST_ID => P_RESOURCE_LIST_ID,
3165: P_RESOURCE_CLASS_CODE => 'FINANCIAL_ELEMENTS');
3166:
3211: ROLLBACK;
3212: x_return_status := FND_API.G_RET_STS_ERROR;
3213:
3214: IF P_PA_DEBUG_MODE = 'Y' THEN
3215: pa_fp_gen_amount_utils.fp_debug
3216: (p_msg => 'Invalid Arguments Passed',
3217: p_module_name => l_module_name,
3218: p_log_level => 5);
3219: PA_DEBUG.RESET_CURR_FUNCTION;
3229: p_procedure_name => 'NONE_ETC_SOURCE',
3230: p_error_text => substr(sqlerrm,1,240));
3231:
3232: IF P_PA_DEBUG_MODE = 'Y' THEN
3233: pa_fp_gen_amount_utils.fp_debug
3234: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
3235: p_module_name => l_module_name,
3236: p_log_level => 5);
3237: PA_DEBUG.RESET_CURR_FUNCTION;
3258:
3259: -- Bug Fix: 4569365. Removed MRC code.
3260: -- g_mrc_exception EXCEPTION;
3261:
3262: l_fp_cols_rec PA_FP_GEN_AMOUNT_UTILS.FP_COLS;
3263: l_wp_version_flag pa_budget_versions.wp_version_flag%TYPE;
3264:
3265: -- IPM: Added local variable to pass variable values of the
3266: -- p_calling_module parameter of the MAINTAIN_DATA API.
3275: END IF;
3276:
3277: /* Calling the get_plan_version_dtls api */
3278: IF p_pa_debug_mode = 'Y' THEN
3279: pa_fp_gen_amount_utils.fp_debug
3280: (p_msg => 'Before calling
3281: pa_fp_gen_amount_utils.get_plan_version_dtls',
3282: p_module_name => l_module_name,
3283: p_log_level => 5);
3277: /* Calling the get_plan_version_dtls api */
3278: IF p_pa_debug_mode = 'Y' THEN
3279: pa_fp_gen_amount_utils.fp_debug
3280: (p_msg => 'Before calling
3281: pa_fp_gen_amount_utils.get_plan_version_dtls',
3282: p_module_name => l_module_name,
3283: p_log_level => 5);
3284: END IF;
3285: PA_FP_GEN_AMOUNT_UTILS.GET_PLAN_VERSION_DTLS
3281: pa_fp_gen_amount_utils.get_plan_version_dtls',
3282: p_module_name => l_module_name,
3283: p_log_level => 5);
3284: END IF;
3285: PA_FP_GEN_AMOUNT_UTILS.GET_PLAN_VERSION_DTLS
3286: (P_PROJECT_ID => P_PROJECT_ID,
3287: P_BUDGET_VERSION_ID => P_BUDGET_VERSION_ID,
3288: X_FP_COLS_REC => l_fp_cols_rec,
3289: X_RETURN_STATUS => X_RETURN_STATUS,
3289: X_RETURN_STATUS => X_RETURN_STATUS,
3290: X_MSG_COUNT => X_MSG_COUNT,
3291: X_MSG_DATA => X_MSG_DATA);
3292: IF p_pa_debug_mode = 'Y' THEN
3293: pa_fp_gen_amount_utils.fp_debug
3294: (p_msg => 'Status after calling
3295: pa_fp_gen_amount_utils.get_plan_version_dtls'
3296: ||x_return_status,
3297: p_module_name => l_module_name,
3291: X_MSG_DATA => X_MSG_DATA);
3292: IF p_pa_debug_mode = 'Y' THEN
3293: pa_fp_gen_amount_utils.fp_debug
3294: (p_msg => 'Status after calling
3295: pa_fp_gen_amount_utils.get_plan_version_dtls'
3296: ||x_return_status,
3297: p_module_name => l_module_name,
3298: p_log_level => 5);
3299: END IF;
3324: dates, which honor the max and min of the individual budget lines. This
3325: should also be updated back to resource assignments. **/
3326: IF l_fp_cols_rec.x_time_phased_code = 'N' THEN
3327: IF p_pa_debug_mode = 'Y' THEN
3328: pa_fp_gen_amount_utils.fp_debug
3329: (p_msg => 'Before calling pa_fp_maintain_actual_pub.'||
3330: 'SYNC_UP_PLANNING_DATES_NONE_TP',
3331: p_module_name => l_module_name,
3332: p_log_level => 5);
3337: X_RETURN_STATUS => X_RETURN_STATUS,
3338: X_MSG_COUNT => X_MSG_COUNT,
3339: X_MSG_DATA => X_MSG_DATA);
3340: IF p_pa_debug_mode = 'Y' THEN
3341: pa_fp_gen_amount_utils.fp_debug
3342: (p_msg => 'Status after calling pa_fp_maintain_actual_pub.'||
3343: 'SYNC_UP_PLANNING_DATES_NONE_TP:'||x_return_status,
3344: p_module_name => l_module_name,
3345: p_log_level => 5);
3349: END IF;
3350: END IF;
3351:
3352: IF p_pa_debug_mode = 'Y' THEN
3353: pa_fp_gen_amount_utils.fp_debug
3354: (p_msg => 'Before calling
3355: PA_FP_GEN_PUB.MAINTAIN_FIXED_DATE_SP',
3356: p_module_name => l_module_name,
3357: p_log_level => 5);
3362: X_RETURN_STATUS => x_return_status,
3363: X_MSG_COUNT => x_msg_count,
3364: X_MSG_DATA => x_msg_data);
3365: IF p_pa_debug_mode = 'Y' THEN
3366: pa_fp_gen_amount_utils.fp_debug
3367: (p_msg => 'Status after calling
3368: PA_FP_GEN_PUB.MAINTAIN_FIXED_DATE_SP:'||x_return_status,
3369: p_module_name => l_module_name,
3370: p_log_level => 5);
3373: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3374: END IF;
3375:
3376: IF P_PA_DEBUG_MODE = 'Y' THEN
3377: pa_fp_gen_amount_utils.fp_debug
3378: (p_msg => 'Before calling PA_FP_MULTI_CURRENCY_PKG.CONVERT_TXN_CURRENCY',
3379: p_module_name => l_module_name,
3380: p_log_level => 5);
3381: END IF;
3386: X_RETURN_STATUS => X_RETURN_STATUS,
3387: X_MSG_COUNT => X_MSG_COUNT,
3388: X_MSG_DATA => X_MSG_DATA);
3389: IF P_PA_DEBUG_MODE = 'Y' THEN
3390: pa_fp_gen_amount_utils.fp_debug
3391: (p_msg => 'After calling PA_FP_MULTI_CURRENCY_PKG.CONVERT_TXN_CURRENCY,
3392: ret status: '||x_return_status,
3393: p_module_name => l_module_name,
3394: p_log_level => 5);
3398: raise PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3399: END IF;
3400:
3401: IF P_PA_DEBUG_MODE = 'Y' THEN
3402: pa_fp_gen_amount_utils.fp_debug
3403: (p_msg => 'Before calling PA_FP_ROLLUP_PKG.ROLLUP_BUDGET_VERSION',
3404: p_module_name => l_module_name,
3405: p_log_level => 5);
3406: END IF;
3410: X_RETURN_STATUS => X_RETURN_STATUS,
3411: X_MSG_COUNT => X_MSG_COUNT,
3412: X_MSG_DATA => X_MSG_DATA);
3413: IF P_PA_DEBUG_MODE = 'Y' THEN
3414: pa_fp_gen_amount_utils.fp_debug
3415: (p_msg => 'After calling PA_FP_ROLLUP_PKG.ROLLUP_BUDGET_VERSION,
3416: ret status: '||x_return_status,
3417: p_module_name => l_module_name,
3418: p_log_level => 5);
3429: IF l_wp_version_flag = 'Y' THEN
3430: IF l_fp_cols_rec.x_fin_plan_level_code <> 'P' THEN
3431: /* Calling the UPD_WBS_ELEMENT_VERSION_ID api */
3432: IF p_pa_debug_mode = 'Y' THEN
3433: pa_fp_gen_amount_utils.fp_debug
3434: (p_msg => 'Before calling
3435: PA_FP_GEN_PUB.UPD_WBS_ELEMENT_VERSION_ID',
3436: p_module_name => l_module_name,
3437: p_log_level => 5);
3445: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
3446: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3447: END IF;
3448: IF p_pa_debug_mode = 'Y' THEN
3449: pa_fp_gen_amount_utils.fp_debug
3450: (p_msg => 'Status after calling
3451: PA_FP_GEN_PUB.UPD_WBS_ELEMENT_VERSION_ID'
3452: ||x_return_status,
3453: p_module_name => l_module_name,
3460:
3461: IF l_fp_cols_rec.x_plan_in_multi_curr_flag = 'Y' THEN
3462: /* Calling insert_txn_currency api */
3463: IF p_pa_debug_mode = 'Y' THEN
3464: pa_fp_gen_amount_utils.fp_debug
3465: (p_msg => 'Before calling
3466: pa_fp_gen_budget_amt_pub.insert_txn_currency',
3467: p_module_name => l_module_name,
3468: p_log_level => 5);
3477: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
3478: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3479: END IF;
3480: IF p_pa_debug_mode = 'Y' THEN
3481: pa_fp_gen_amount_utils.fp_debug
3482: (p_msg => 'Status after calling
3483: pa_fp_gen_budget_amt_pub.insert_txn_currency'
3484: ||x_return_status,
3485: p_module_name => l_module_name,
3493: -- PA_MRC_FINPLAN.G_CALLING_MODULE based on Target Plan Class Code.
3494: IF PA_MRC_FINPLAN.G_MRC_ENABLED_FOR_BUDGETS IS NULL THEN
3495:
3496: IF P_PA_DEBUG_MODE = 'Y' THEN
3497: pa_fp_gen_amount_utils.fp_debug
3498: (p_msg => 'Before calling PA_MRC_FINPLAN.CHECK_MRC_INSTALL',
3499: p_module_name => l_module_name,
3500: p_log_level => 5);
3501: END IF;
3503: (x_return_status => x_return_status,
3504: x_msg_count => x_msg_count,
3505: x_msg_data => x_msg_data);
3506: IF P_PA_DEBUG_MODE = 'Y' THEN
3507: pa_fp_gen_amount_utils.fp_debug
3508: (p_msg => 'After calling PA_MRC_FINPLAN.CHECK_MRC_INSTALL,
3509: ret status: '||x_return_status,
3510: p_module_name => l_module_name,
3511: p_log_level => 5);
3524: PA_MRC_FINPLAN.G_CALLING_MODULE := PA_MRC_FINPLAN.G_GENERATE_BUDGET;
3525: END IF;
3526:
3527: IF P_PA_DEBUG_MODE = 'Y' THEN
3528: pa_fp_gen_amount_utils.fp_debug
3529: (p_msg => 'Before calling PA_MRC_FINPLAN.MAINTAIN_ALL_MC_BUDGET_LINES',
3530: p_module_name => l_module_name,
3531: p_log_level => 5);
3532: END IF;
3536: x_return_status => x_return_status,
3537: x_msg_count => x_msg_count,
3538: x_msg_data => x_msg_data);
3539: IF P_PA_DEBUG_MODE = 'Y' THEN
3540: pa_fp_gen_amount_utils.fp_debug
3541: (p_msg => 'After calling PA_MRC_FINPLAN.MAINTAIN_ALL_MC_BUDGET_LINES,
3542: ret status: '||x_return_status,
3543: p_module_name => l_module_name,
3544: p_log_level => 5);
3554: l_fp_version_ids_tab.extend;
3555: l_fp_version_ids_tab(1) := P_BUDGET_VERSION_ID;
3556:
3557: IF P_PA_DEBUG_MODE = 'Y' THEN
3558: pa_fp_gen_amount_utils.fp_debug
3559: (p_msg => 'Before calling PJI_FM_XBS_ACCUM_MAINT.PLAN_DELETE',
3560: p_module_name => l_module_name,
3561: p_log_level => 5);
3562: END IF;
3564: p_fp_version_ids => l_fp_version_ids_tab,
3565: x_return_status => x_return_status,
3566: x_msg_code => x_msg_data );
3567: IF P_PA_DEBUG_MODE = 'Y' THEN
3568: pa_fp_gen_amount_utils.fp_debug
3569: (p_msg => 'After calling PJI_FM_XBS_ACCUM_MAINT.PLAN_DELETE,
3570: ret status: '||x_return_status,
3571: p_module_name => l_module_name,
3572: p_log_level => 5);
3577:
3578: IF l_fp_cols_rec.X_RBS_VERSION_ID IS NOT NULL THEN
3579:
3580: IF P_PA_DEBUG_MODE = 'Y' THEN
3581: pa_fp_gen_amount_utils.fp_debug
3582: (p_msg => 'Before calling
3583: pa_fp_map_bv_pub.maintain_rbs_dtls',
3584: p_module_name => l_module_name,
3585: p_log_level => 5);
3594: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3595: END IF;
3596:
3597: IF P_PA_DEBUG_MODE = 'Y' THEN
3598: pa_fp_gen_amount_utils.fp_debug
3599: (p_msg => 'After calling pa_fp_map_bv_pub.maintain_rbs_dtls,
3600: ret status: '||x_return_status,
3601: p_module_name => l_module_name,
3602: p_log_level => 5);
3602: p_log_level => 5);
3603: END IF;
3604: END IF;
3605: IF P_PA_DEBUG_MODE = 'Y' THEN
3606: pa_fp_gen_amount_utils.fp_debug
3607: (p_msg => 'Before calling PJI_FM_XBS_ACCUM_MAINT.PLAN_CREATE',
3608: p_module_name => l_module_name,
3609: p_log_level => 5);
3610: END IF;
3612: p_fp_version_ids => l_fp_version_ids_tab,
3613: x_return_status => x_return_status,
3614: x_msg_code => x_msg_data );
3615: IF P_PA_DEBUG_MODE = 'Y' THEN
3616: pa_fp_gen_amount_utils.fp_debug
3617: (p_msg => 'After calling PJI_FM_XBS_ACCUM_MAINT.PLAN_CREATE,
3618: ret status: '||x_return_status,
3619: p_module_name => l_module_name,
3620: p_log_level => 5);
3623: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3624: END IF;
3625:
3626: IF P_PA_DEBUG_MODE = 'Y' THEN
3627: pa_fp_gen_amount_utils.fp_debug
3628: (p_msg => 'Before calling PA_FP_GEN_BUDGET_AMT_PUB.UPDATE_BV_FOR_GEN_DATE',
3629: p_module_name => l_module_name,
3630: p_log_level => 5);
3631: END IF;
3636: X_RETURN_STATUS => X_RETURN_STATUS,
3637: X_MSG_COUNT => X_MSG_COUNT,
3638: X_MSG_DATA => X_MSG_DATA);
3639: IF P_PA_DEBUG_MODE = 'Y' THEN
3640: pa_fp_gen_amount_utils.fp_debug
3641: (p_msg => 'After calling PA_FP_GEN_BUDGET_AMT_PUB.UPDATE_BV_FOR_GEN_DATE,
3642: ret status: '||x_return_status,
3643: p_module_name => l_module_name,
3644: p_log_level => 5);
3655:
3656: IF P_CALL_MAINTAIN_DATA_API = 'Y' THEN
3657: -- Call the maintenance api in ROLLUP mode
3658: IF p_pa_debug_mode = 'Y' THEN
3659: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3660: P_MSG => 'Before calling PA_FP_GEN_FCST_AMT_PUB1.' ||
3661: 'UPD_NRB_TXN_OVR_RATES',
3662: --P_CALLED_MODE => p_called_mode,
3663: P_MODULE_NAME => l_module_name);
3670: X_RETURN_STATUS => X_RETURN_STATUS,
3671: X_MSG_COUNT => X_MSG_COUNT,
3672: X_MSG_DATA => X_MSG_DATA);
3673: IF p_pa_debug_mode = 'Y' THEN
3674: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3675: P_MSG => 'After calling PA_FP_GEN_FCST_AMT_PUB1.' ||
3676: 'UPD_NRB_TXN_OVR_RATES: '||x_return_status,
3677: --P_CALLED_MODE => p_called_mode,
3678: P_MODULE_NAME => l_module_name);
3709: WHERE ra.budget_version_id = p_budget_version_id
3710: AND ra.transaction_source_code IS NOT NULL;
3711:
3712: IF p_pa_debug_mode = 'Y' THEN
3713: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3714: P_MSG => 'Before calling PA_BUDGET_LINES_UTILS.' ||
3715: 'POPULATE_DISPLAY_QTY',
3716: --P_CALLED_MODE => p_called_mode,
3717: P_MODULE_NAME => l_module_name);
3721: P_CONTEXT => 'FINANCIAL',
3722: P_USE_TEMP_TABLE_FLAG => 'Y',
3723: X_RETURN_STATUS => x_return_status );
3724: IF p_pa_debug_mode = 'Y' THEN
3725: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3726: P_MSG => 'After calling PA_BUDGET_LINES_UTILS.' ||
3727: 'POPULATE_DISPLAY_QTY: '||x_return_status,
3728: --P_CALLED_MODE => p_called_mode,
3729: P_MODULE_NAME => l_module_name);
3759: AND bl.resource_assignment_id = rbc.resource_assignment_id (+)
3760: AND bl.txn_currency_code = rbc.txn_currency_code (+);
3761:
3762: IF p_pa_debug_mode = 'Y' THEN
3763: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3764: P_MSG => 'Before calling PA_RES_ASG_CURRENCY_PUB.' ||
3765: 'MAINTAIN_DATA',
3766: --P_CALLED_MODE => p_called_mode,
3767: P_MODULE_NAME => l_module_name);
3775: X_RETURN_STATUS => x_return_status,
3776: X_MSG_COUNT => x_msg_count,
3777: X_MSG_DATA => x_msg_data );
3778: IF p_pa_debug_mode = 'Y' THEN
3779: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3780: P_MSG => 'After calling PA_RES_ASG_CURRENCY_PUB.' ||
3781: 'MAINTAIN_DATA: '||x_return_status,
3782: --P_CALLED_MODE => p_called_mode,
3783: P_MODULE_NAME => l_module_name);
3798:
3799: -- Populate the display quantity for all resources in the version.
3800:
3801: IF p_pa_debug_mode = 'Y' THEN
3802: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3803: P_MSG => 'Before calling PA_BUDGET_LINES_UTILS.' ||
3804: 'POPULATE_DISPLAY_QTY',
3805: --P_CALLED_MODE => p_called_mode,
3806: P_MODULE_NAME => l_module_name);
3810: P_CONTEXT => 'FINANCIAL',
3811: P_USE_TEMP_TABLE_FLAG => 'N',
3812: X_RETURN_STATUS => x_return_status );
3813: IF p_pa_debug_mode = 'Y' THEN
3814: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3815: P_MSG => 'After calling PA_BUDGET_LINES_UTILS.' ||
3816: 'POPULATE_DISPLAY_QTY: '||x_return_status,
3817: --P_CALLED_MODE => p_called_mode,
3818: P_MODULE_NAME => l_module_name);
3829: l_calling_module := 'FORECAST_GENERATION';
3830: END IF;
3831:
3832: IF p_pa_debug_mode = 'Y' THEN
3833: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3834: P_MSG => 'Before calling PA_RES_ASG_CURRENCY_PUB.' ||
3835: 'MAINTAIN_DATA',
3836: --P_CALLED_MODE => p_called_mode,
3837: P_MODULE_NAME => l_module_name);
3845: X_RETURN_STATUS => x_return_status,
3846: X_MSG_COUNT => x_msg_count,
3847: X_MSG_DATA => x_msg_data );
3848: IF p_pa_debug_mode = 'Y' THEN
3849: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
3850: P_MSG => 'After calling PA_RES_ASG_CURRENCY_PUB.' ||
3851: 'MAINTAIN_DATA: '||x_return_status,
3852: --P_CALLED_MODE => p_called_mode,
3853: P_MODULE_NAME => l_module_name);
3903: ROLLBACK;
3904: x_return_status := FND_API.G_RET_STS_ERROR;
3905:
3906: IF P_PA_DEBUG_MODE = 'Y' THEN
3907: pa_fp_gen_amount_utils.fp_debug
3908: (p_msg => 'Invalid Arguments Passed',
3909: p_module_name => l_module_name,
3910: p_log_level => 5);
3911: PA_DEBUG.RESET_CURR_FUNCTION;
3922: p_procedure_name => 'MAINTAIN_BUDGET_VERSION',
3923: p_error_text => substr(sqlerrm,1,240));
3924:
3925: IF P_PA_DEBUG_MODE = 'Y' THEN
3926: pa_fp_gen_amount_utils.fp_debug
3927: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
3928: p_module_name => l_module_name,
3929: p_log_level => 5);
3930: PA_DEBUG.RESET_CURR_FUNCTION;
4136: OR l_etc_fp_ver_code = 'ORIGINAL_BASELINED'
4137: OR l_etc_fp_ver_code = 'CURRENT_APPROVED'
4138: OR l_etc_fp_ver_code = 'ORIGINAL_APPROVED' THEN
4139: /*Get the current baselined or original baselined version*/
4140: pa_fp_gen_amount_utils.Get_Curr_Original_Version_Info(
4141: p_project_id => l_project_id,
4142: p_fin_plan_type_id => l_src_plan_type_id,
4143: p_version_type => 'COST',
4144: p_status_code => l_etc_fp_ver_code,
4183: END GET_ETC_FP_PVERSION_DTLS;
4184:
4185:
4186: PROCEDURE GET_WP_ACTUALS_FOR_RA
4187: (P_FP_COLS_SRC_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
4188: P_FP_COLS_TGT_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
4189: P_SRC_RES_ASG_ID IN PA_RESOURCE_ASSIGNMENTS.RESOURCE_ASSIGNMENT_ID%TYPE,
4190: P_TASK_ID IN PA_TASKS.TASK_ID%TYPE,
4191: P_RES_LIST_MEM_ID IN PA_RESOURCE_LIST_MEMBERS.RESOURCE_LIST_MEMBER_ID%TYPE,
4184:
4185:
4186: PROCEDURE GET_WP_ACTUALS_FOR_RA
4187: (P_FP_COLS_SRC_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
4188: P_FP_COLS_TGT_REC IN PA_FP_GEN_AMOUNT_UTILS.FP_COLS,
4189: P_SRC_RES_ASG_ID IN PA_RESOURCE_ASSIGNMENTS.RESOURCE_ASSIGNMENT_ID%TYPE,
4190: P_TASK_ID IN PA_TASKS.TASK_ID%TYPE,
4191: P_RES_LIST_MEM_ID IN PA_RESOURCE_LIST_MEMBERS.RESOURCE_LIST_MEMBER_ID%TYPE,
4192: P_ACTUALS_THRU_DATE IN DATE,
4328: ROLLBACK;
4329: x_return_status := FND_API.G_RET_STS_ERROR;
4330:
4331: IF P_PA_DEBUG_MODE = 'Y' THEN
4332: pa_fp_gen_amount_utils.fp_debug
4333: (p_msg => 'Invalid Arguments Passed',
4334: p_module_name => l_module_name,
4335: p_log_level => 5);
4336: PA_DEBUG.RESET_CURR_FUNCTION;
4347: p_procedure_name => 'GET_WP_ACTUALS_FOR_RA',
4348: p_error_text => substr(sqlerrm,1,240));
4349:
4350: IF P_PA_DEBUG_MODE = 'Y' THEN
4351: pa_fp_gen_amount_utils.fp_debug
4352: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
4353: p_module_name => l_module_name,
4354: p_log_level => 5);
4355: PA_DEBUG.RESET_CURR_FUNCTION;
4370: l_data VARCHAR2(2000);
4371: l_msg_index_out NUMBER:=0;
4372: l_module_name VARCHAR2(200) := 'call_clnt_extn_and_update_bl';
4373:
4374: l_fp_cols_rec PA_FP_GEN_AMOUNT_UTILS.FP_COLS;
4375: l_budget_lines_exist VARCHAR2(1) DEFAULT 'N';
4376:
4377: l_ra_id_tbl SYSTEM.pa_num_tbl_type;
4378: l_task_id_tbl SYSTEM.pa_num_tbl_type;
4565:
4566:
4567: IF p_project_id IS NULL OR p_budget_version_id IS NULL THEN
4568: IF p_pa_debug_mode = 'Y' THEN
4569: pa_fp_gen_amount_utils.fp_debug
4570: (p_msg => 'PA_FP_INV_PARAM_PASSED',
4571: p_module_name => l_module_name,
4572: p_log_level => 5);
4573: PA_DEBUG.RESET_CURR_FUNCTION;
4575: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
4576: END IF;
4577:
4578: IF p_pa_debug_mode = 'Y' THEN
4579: pa_fp_gen_amount_utils.fp_debug
4580: (p_msg => 'Before calling pa_fp_gen_amount_utils.get_plan_version_dtls',
4581: p_module_name => l_module_name,
4582: p_log_level => 5);
4583: END IF;
4576: END IF;
4577:
4578: IF p_pa_debug_mode = 'Y' THEN
4579: pa_fp_gen_amount_utils.fp_debug
4580: (p_msg => 'Before calling pa_fp_gen_amount_utils.get_plan_version_dtls',
4581: p_module_name => l_module_name,
4582: p_log_level => 5);
4583: END IF;
4584:
4581: p_module_name => l_module_name,
4582: p_log_level => 5);
4583: END IF;
4584:
4585: PA_FP_GEN_AMOUNT_UTILS.GET_PLAN_VERSION_DTLS
4586: (P_PROJECT_ID => P_PROJECT_ID,
4587: P_BUDGET_VERSION_ID => P_BUDGET_VERSION_ID,
4588: X_FP_COLS_REC => l_fp_cols_rec,
4589: X_RETURN_STATUS => X_RETURN_STATUS,
4589: X_RETURN_STATUS => X_RETURN_STATUS,
4590: X_MSG_COUNT => X_MSG_COUNT,
4591: X_MSG_DATA => X_MSG_DATA);
4592: IF p_pa_debug_mode = 'Y' THEN
4593: pa_fp_gen_amount_utils.fp_debug
4594: (p_msg => 'Status after calling pa_fp_gen_amount_utils.get_plan_version_dtls'||x_return_status,
4595: p_module_name => l_module_name,
4596: p_log_level => 5);
4597: END IF;
4590: X_MSG_COUNT => X_MSG_COUNT,
4591: X_MSG_DATA => X_MSG_DATA);
4592: IF p_pa_debug_mode = 'Y' THEN
4593: pa_fp_gen_amount_utils.fp_debug
4594: (p_msg => 'Status after calling pa_fp_gen_amount_utils.get_plan_version_dtls'||x_return_status,
4595: p_module_name => l_module_name,
4596: p_log_level => 5);
4597: END IF;
4598: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
4598: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
4599: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
4600: END IF;
4601:
4602: l_etc_start_date := PA_FP_GEN_AMOUNT_UTILS.GET_ETC_START_DATE(p_budget_version_id);
4603: l_act_thru_date := PA_FP_GEN_AMOUNT_UTILS.GET_ACTUALS_THRU_DATE(p_budget_version_id);
4604:
4605:
4606:
4599: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
4600: END IF;
4601:
4602: l_etc_start_date := PA_FP_GEN_AMOUNT_UTILS.GET_ETC_START_DATE(p_budget_version_id);
4603: l_act_thru_date := PA_FP_GEN_AMOUNT_UTILS.GET_ACTUALS_THRU_DATE(p_budget_version_id);
4604:
4605:
4606:
4607: --Calling this procedure to set the global parameters to for getting the task percent complete.
4617:
4618: -- Getting the project percent complete.
4619:
4620: IF p_pa_debug_mode = 'Y' THEN
4621: pa_fp_gen_amount_utils.fp_debug
4622: (p_msg => 'Getting the project percent complete',
4623: p_module_name => l_module_name,
4624: p_log_level => 5);
4625: END IF;
4638: x_msg_count => x_msg_count,
4639: x_msg_data => x_msg_data );
4640:
4641: IF P_PA_DEBUG_MODE = 'Y' THEN
4642: pa_fp_gen_amount_utils.fp_debug
4643: (p_msg => 'After calling PA_PROGRESS_UTILS.REDEFAULT_BASE_PC,
4644: return status is:'||x_return_status,
4645: p_module_name => l_module_name,
4646: p_log_level => 5);
4654:
4655:
4656:
4657: IF p_pa_debug_mode = 'Y' THEN
4658: pa_fp_gen_amount_utils.fp_debug
4659: (p_msg => 'Start of bulk collecting budget lines',
4660: p_module_name => l_module_name,
4661: p_log_level => 5);
4662: END IF;
4668: x_return_status => X_RETURN_STATUS);
4669:
4670: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
4671: IF P_PA_debug_mode = 'Y' THEN
4672: pa_fp_gen_amount_utils.fp_debug
4673: (p_msg => 'Status after calling PA_BUDGET_LINES_UTILS.populate_display_qty'||X_RETURN_STATUS,
4674: p_module_name => l_module_name,
4675: p_log_level => 5);
4676: END IF;
4682: -- Call MAINTAIN_DATA to roll up amounts to pa_resource_asgn_curr
4683:
4684:
4685: IF p_pa_debug_mode = 'Y' THEN
4686: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
4687: P_MSG => 'Before calling PA_FP_GEN_FCST_AMT_PUB1.' ||
4688: 'UPD_NRB_TXN_OVR_RATES',
4689: --P_CALLED_MODE => p_called_mode,
4690: P_MODULE_NAME => l_module_name);
4697: X_RETURN_STATUS => X_RETURN_STATUS,
4698: X_MSG_COUNT => X_MSG_COUNT,
4699: X_MSG_DATA => X_MSG_DATA);
4700: IF p_pa_debug_mode = 'Y' THEN
4701: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
4702: P_MSG => 'After calling PA_FP_GEN_FCST_AMT_PUB1.' ||
4703: 'UPD_NRB_TXN_OVR_RATES: '||x_return_status,
4704: --P_CALLED_MODE => p_called_mode,
4705: P_MODULE_NAME => l_module_name);
4722: x_msg_count => X_MSG_COUNT);
4723:
4724: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
4725: IF P_PA_debug_mode = 'Y' THEN
4726: pa_fp_gen_amount_utils.fp_debug
4727: (p_msg => 'Status after calling PA_RES_ASG_CURRENCY_PUB.maintain_data'||X_RETURN_STATUS,
4728: p_module_name => l_module_name,
4729: p_log_level => 5);
4730: END IF;
4743: X_MSG_DATA => X_MSG_DATA);
4744:
4745: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
4746: IF P_PA_debug_mode = 'Y' THEN
4747: pa_fp_gen_amount_utils.fp_debug
4748: (p_msg => 'PA_FP_MAINTAIN_ACTUAL_PUB.SYNC_UP_PLANNING_DATES_NONE_TP'||X_RETURN_STATUS,
4749: p_module_name => l_module_name,
4750: p_log_level => 5);
4751: END IF;
4819: AND pra.budget_version_id = p_budget_version_id
4820: AND prac.resource_assignment_id = pra.resource_assignment_id;
4821:
4822: IF p_pa_debug_mode = 'Y' THEN
4823: pa_fp_gen_amount_utils.fp_debug
4824: (p_msg => 'End of bulk collecting budget lines',
4825: p_module_name => l_module_name,
4826: p_log_level => 5);
4827: END IF;
4856: l_actual_burdened_cost := l_init_burd_cost_tbl_1(kk);
4857: l_actual_revenue := l_init_revenue_tbl_1(kk);
4858: l_total_quantity := l_etc_qty_tbl_1(kk) + l_init_quantity_tbl_1(kk);
4859: IF p_pa_debug_mode = 'Y' THEN
4860: pa_fp_gen_amount_utils.fp_debug
4861: (p_msg => 'Before collecting budget lines for a ra id',
4862: p_module_name => l_module_name,
4863: p_log_level => 5);
4864: END IF;
4900: AND txn_currency_code = l_txn_currency_code_tbl_1(kk)
4901: ORDER BY pbl.start_date; -- Added for Bug 8718969
4902:
4903: IF p_pa_debug_mode = 'Y' THEN
4904: pa_fp_gen_amount_utils.fp_debug
4905: (p_msg => 'After collecting budget lines for a ra id',
4906: p_module_name => l_module_name,
4907: p_log_level => 5);
4908: END IF;
4955:
4956:
4957: -- Call the client extension for each planning transaction
4958: IF P_PA_DEBUG_MODE = 'Y' THEN
4959: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
4960: P_MSG =>
4961: 'Before calling pa_fp_fcst_gen_client_ext.fcst_gen_client_extn',
4962: P_MODULE_NAME => l_module_name);
4963: END IF;
5074:
5075:
5076:
5077: IF P_PA_DEBUG_MODE = 'Y' THEN
5078: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
5079: P_MSG => 'After calling pa_fp_fcst_gen_client_ext.fcst_gen_client_extn: '||x_return_status,
5080: P_MODULE_NAME => l_module_name);
5081: END IF;
5082: IF X_RETURN_STATUS <> FND_API.G_RET_STS_SUCCESS THEN
5730: --For Bug 6722414
5731: pa_fp_calc_plan_pkg.g_from_etc_client_extn_flag := 'N';
5732:
5733: IF P_PA_DEBUG_MODE = 'Y' THEN
5734: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
5735: P_MSG =>
5736: 'After calling PA_FP_CALC_PLAN_PKG.calculate '
5737: ||x_return_status,
5738: P_MODULE_NAME => l_module_name);
5770: IF l_call_calculate_flag = 'N' and l_upd_count = 0 and l_del_count = 0 THEN
5771: x_call_maintain_data_api := 'N';
5772: END IF;
5773: IF P_PA_DEBUG_MODE = 'Y' THEN
5774: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG(
5775: P_MSG =>
5776: 'After calling PA_FP_CALC_PLAN_PKG.CheckZeroQTyNegETC '
5777: ||x_return_status,
5778: P_MODULE_NAME => l_module_name);
5810: p_procedure_name => 'call_clnt_extn_and_update_bl',
5811: p_error_text => substr(sqlerrm,1,240));
5812:
5813: IF p_pa_debug_mode = 'Y' THEN
5814: PA_FP_GEN_AMOUNT_UTILS.FP_DEBUG
5815: (p_msg => 'Unexpected Error'||substr(sqlerrm, 1, 240),
5816: p_module_name => l_module_name,
5817: p_log_level => 5);
5818: PA_DEBUG.RESET_CURR_FUNCTION;