2725: l_index NUMBER := 1;
2726:
2727: BEGIN
2728:
2729: fnd_profile.get('PA_DEBUG_MODE',l_debug_mode);
2730: l_debug_mode := NVL(l_debug_mode, 'Y');
2731: x_msg_count := 0;
2732: x_return_status := FND_API.G_RET_STS_SUCCESS;
2733: PA_DEBUG.Set_Curr_Function( p_function => 'PAFPPEUB.add_new_resource_assignments',
2729: fnd_profile.get('PA_DEBUG_MODE',l_debug_mode);
2730: l_debug_mode := NVL(l_debug_mode, 'Y');
2731: x_msg_count := 0;
2732: x_return_status := FND_API.G_RET_STS_SUCCESS;
2733: PA_DEBUG.Set_Curr_Function( p_function => 'PAFPPEUB.add_new_resource_assignments',
2734: p_debug_mode => l_debug_mode );
2735:
2736: IF l_debug_mode = 'Y' THEN
2737: pa_debug.g_err_stage:='Adding minimum Validations Here - COUNT of tables to be Same';
2733: PA_DEBUG.Set_Curr_Function( p_function => 'PAFPPEUB.add_new_resource_assignments',
2734: p_debug_mode => l_debug_mode );
2735:
2736: IF l_debug_mode = 'Y' THEN
2737: pa_debug.g_err_stage:='Adding minimum Validations Here - COUNT of tables to be Same';
2738: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2739: END IF;
2740: IF (p_task_elem_version_id_tbl.COUNT <> p_resource_list_member_id_tbl.COUNT OR
2741: p_resource_list_member_id_tbl.COUNT <> p_currency_code_tbl.COUNT) THEN
2734: p_debug_mode => l_debug_mode );
2735:
2736: IF l_debug_mode = 'Y' THEN
2737: pa_debug.g_err_stage:='Adding minimum Validations Here - COUNT of tables to be Same';
2738: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2739: END IF;
2740: IF (p_task_elem_version_id_tbl.COUNT <> p_resource_list_member_id_tbl.COUNT OR
2741: p_resource_list_member_id_tbl.COUNT <> p_currency_code_tbl.COUNT) THEN
2742:
2740: IF (p_task_elem_version_id_tbl.COUNT <> p_resource_list_member_id_tbl.COUNT OR
2741: p_resource_list_member_id_tbl.COUNT <> p_currency_code_tbl.COUNT) THEN
2742:
2743: IF l_debug_mode = 'Y' THEN
2744: pa_debug.g_err_stage:='p_task_elem_version_id_tbl.COUNT : '||p_task_elem_version_id_tbl.COUNT ;
2745: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2746:
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2741: p_resource_list_member_id_tbl.COUNT <> p_currency_code_tbl.COUNT) THEN
2742:
2743: IF l_debug_mode = 'Y' THEN
2744: pa_debug.g_err_stage:='p_task_elem_version_id_tbl.COUNT : '||p_task_elem_version_id_tbl.COUNT ;
2745: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2746:
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2749:
2743: IF l_debug_mode = 'Y' THEN
2744: pa_debug.g_err_stage:='p_task_elem_version_id_tbl.COUNT : '||p_task_elem_version_id_tbl.COUNT ;
2745: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2746:
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2749:
2750: pa_debug.g_err_stage:='p_currency_code_tbl.COUNT : '||p_currency_code_tbl.COUNT ;
2751: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2744: pa_debug.g_err_stage:='p_task_elem_version_id_tbl.COUNT : '||p_task_elem_version_id_tbl.COUNT ;
2745: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2746:
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2749:
2750: pa_debug.g_err_stage:='p_currency_code_tbl.COUNT : '||p_currency_code_tbl.COUNT ;
2751: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2752: END IF;
2746:
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2749:
2750: pa_debug.g_err_stage:='p_currency_code_tbl.COUNT : '||p_currency_code_tbl.COUNT ;
2751: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2752: END IF;
2753: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
2754: p_msg_name => 'PA_FP_INV_PARAM_PASSED',
2747: pa_debug.g_err_stage:='p_resource_list_member_id_tbl.COUNT : '||p_resource_list_member_id_tbl.COUNT ;
2748: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2749:
2750: pa_debug.g_err_stage:='p_currency_code_tbl.COUNT : '||p_currency_code_tbl.COUNT ;
2751: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2752: END IF;
2753: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
2754: p_msg_name => 'PA_FP_INV_PARAM_PASSED',
2755: p_token1 => 'PROCEDURENAME',
2760: END IF;
2761:
2762: IF (p_task_elem_version_id_tbl.COUNT = 0) THEN
2763: IF l_debug_mode = 'Y' THEN
2764: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... ';
2765: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2766: END IF;
2767: pa_debug.reset_curr_function;
2768: RETURN;
2761:
2762: IF (p_task_elem_version_id_tbl.COUNT = 0) THEN
2763: IF l_debug_mode = 'Y' THEN
2764: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... ';
2765: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2766: END IF;
2767: pa_debug.reset_curr_function;
2768: RETURN;
2769: END IF;
2763: IF l_debug_mode = 'Y' THEN
2764: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... ';
2765: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2766: END IF;
2767: pa_debug.reset_curr_function;
2768: RETURN;
2769: END IF;
2770:
2771: IF l_debug_mode = 'Y' THEN
2768: RETURN;
2769: END IF;
2770:
2771: IF l_debug_mode = 'Y' THEN
2772: pa_debug.g_err_stage:='Fetching PARENT_STRUCTURE_VERSION_ID';
2773: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2774: END IF;
2775: l_structure_version_id := PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(p_project_id);
2776:
2769: END IF;
2770:
2771: IF l_debug_mode = 'Y' THEN
2772: pa_debug.g_err_stage:='Fetching PARENT_STRUCTURE_VERSION_ID';
2773: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2774: END IF;
2775: l_structure_version_id := PA_PROJECT_STRUCTURE_UTILS.GET_FIN_STRUC_VER_ID(p_project_id);
2776:
2777: /*
2812:
2813: IF p_task_elem_version_id_tbl.COUNT > 0 THEN
2814: FOR i IN p_task_elem_version_id_tbl.FIRST .. p_task_elem_version_id_tbl.LAST LOOP
2815: IF l_debug_mode = 'Y' THEN
2816: pa_debug.g_err_stage:='Loop 1 : p_task_elem_version_id_tbl('||i||') - '||p_task_elem_version_id_tbl(i);
2817: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2818: END IF;
2819:
2820: -- Resetting flags Used
2813: IF p_task_elem_version_id_tbl.COUNT > 0 THEN
2814: FOR i IN p_task_elem_version_id_tbl.FIRST .. p_task_elem_version_id_tbl.LAST LOOP
2815: IF l_debug_mode = 'Y' THEN
2816: pa_debug.g_err_stage:='Loop 1 : p_task_elem_version_id_tbl('||i||') - '||p_task_elem_version_id_tbl(i);
2817: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2818: END IF;
2819:
2820: -- Resetting flags Used
2821: l_bl_already_exists := 'N';
2821: l_bl_already_exists := 'N';
2822: l_rec_already_exists := 'N';
2823:
2824: IF l_debug_mode = 'Y' THEN
2825: pa_debug.g_err_stage:='Checking if budget lines exist or not';
2826: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2827: END IF;
2828:
2829: -- For a Project level record p_task_elem_version_id_tbl is passed as 0
2822: l_rec_already_exists := 'N';
2823:
2824: IF l_debug_mode = 'Y' THEN
2825: pa_debug.g_err_stage:='Checking if budget lines exist or not';
2826: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2827: END IF;
2828:
2829: -- For a Project level record p_task_elem_version_id_tbl is passed as 0
2830: IF p_task_elem_version_id_tbl(i) <> 0 THEN -- For Task level record
2843: AND PBL.RESOURCE_ASSIGNMENT_ID = PRA.RESOURCE_ASSIGNMENT_ID
2844: AND PBL.TXN_CURRENCY_CODE = p_currency_code_tbl(i) );
2845:
2846: IF l_debug_mode = 'Y' THEN
2847: pa_debug.g_err_stage:='Budget Lines EXIST - l_bl_already_exists :'||l_bl_already_exists;
2848: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2849: END IF;
2850:
2851: EXCEPTION
2844: AND PBL.TXN_CURRENCY_CODE = p_currency_code_tbl(i) );
2845:
2846: IF l_debug_mode = 'Y' THEN
2847: pa_debug.g_err_stage:='Budget Lines EXIST - l_bl_already_exists :'||l_bl_already_exists;
2848: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2849: END IF;
2850:
2851: EXCEPTION
2852: WHEN NO_DATA_FOUND THEN
2851: EXCEPTION
2852: WHEN NO_DATA_FOUND THEN
2853: l_bl_already_exists := 'N';
2854: IF l_debug_mode = 'Y' THEN
2855: pa_debug.g_err_stage:='Budget Lines DONT EXIST - l_bl_already_exists :'||l_bl_already_exists;
2856: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2857: END IF;
2858: END;
2859:
2852: WHEN NO_DATA_FOUND THEN
2853: l_bl_already_exists := 'N';
2854: IF l_debug_mode = 'Y' THEN
2855: pa_debug.g_err_stage:='Budget Lines DONT EXIST - l_bl_already_exists :'||l_bl_already_exists;
2856: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2857: END IF;
2858: END;
2859:
2860: ELSE -- For Project level record
2879: AND PBL.RESOURCE_ASSIGNMENT_ID = PRA.RESOURCE_ASSIGNMENT_ID
2880: AND PBL.TXN_CURRENCY_CODE = p_currency_code_tbl(i) );
2881:
2882: IF l_debug_mode = 'Y' THEN
2883: pa_debug.g_err_stage:='Budget Lines EXIST - l_bl_already_exists :'||l_bl_already_exists;
2884: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2885: END IF;
2886:
2887: EXCEPTION
2880: AND PBL.TXN_CURRENCY_CODE = p_currency_code_tbl(i) );
2881:
2882: IF l_debug_mode = 'Y' THEN
2883: pa_debug.g_err_stage:='Budget Lines EXIST - l_bl_already_exists :'||l_bl_already_exists;
2884: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2885: END IF;
2886:
2887: EXCEPTION
2888: WHEN NO_DATA_FOUND THEN
2887: EXCEPTION
2888: WHEN NO_DATA_FOUND THEN
2889: l_bl_already_exists := 'N';
2890: IF l_debug_mode = 'Y' THEN
2891: pa_debug.g_err_stage:='Budget Lines DONT EXIST - l_bl_already_exists :'||l_bl_already_exists;
2892: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2893: END IF;
2894: END;
2895: END IF;
2888: WHEN NO_DATA_FOUND THEN
2889: l_bl_already_exists := 'N';
2890: IF l_debug_mode = 'Y' THEN
2891: pa_debug.g_err_stage:='Budget Lines DONT EXIST - l_bl_already_exists :'||l_bl_already_exists;
2892: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2893: END IF;
2894: END;
2895: END IF;
2896:
2899: -- By Output tables, Tables to be passed to Add API are referred.
2900: IF l_bl_already_exists = 'N' THEN
2901:
2902: IF l_debug_mode = 'Y' THEN
2903: pa_debug.g_err_stage:='BL Does Not Exist';
2904: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2905: END IF;
2906:
2907: -- If Output Table is not Empty
2900: IF l_bl_already_exists = 'N' THEN
2901:
2902: IF l_debug_mode = 'Y' THEN
2903: pa_debug.g_err_stage:='BL Does Not Exist';
2904: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2905: END IF;
2906:
2907: -- If Output Table is not Empty
2908: IF l_task_elem_version_id_tbl.COUNT > 0 THEN
2908: IF l_task_elem_version_id_tbl.COUNT > 0 THEN
2909: -- Loop Though Output Table
2910: FOR k IN l_task_elem_version_id_tbl.FIRST .. l_task_elem_version_id_tbl.LAST LOOP
2911: IF l_debug_mode = 'Y' THEN
2912: pa_debug.g_err_stage:='Loop 3 : l_task_elem_version_id_tbl('||k||') - '||l_task_elem_version_id_tbl(k);
2913: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2914: END IF;
2915: -- Compare if I/P Params have alreayd been added to output table or not.
2916: IF ((p_task_elem_version_id_tbl(i) = l_task_elem_version_id_tbl(k)) AND
2909: -- Loop Though Output Table
2910: FOR k IN l_task_elem_version_id_tbl.FIRST .. l_task_elem_version_id_tbl.LAST LOOP
2911: IF l_debug_mode = 'Y' THEN
2912: pa_debug.g_err_stage:='Loop 3 : l_task_elem_version_id_tbl('||k||') - '||l_task_elem_version_id_tbl(k);
2913: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2914: END IF;
2915: -- Compare if I/P Params have alreayd been added to output table or not.
2916: IF ((p_task_elem_version_id_tbl(i) = l_task_elem_version_id_tbl(k)) AND
2917: (p_resource_list_member_id_tbl(i) = l_resource_list_member_id_tbl(k)) AND
2917: (p_resource_list_member_id_tbl(i) = l_resource_list_member_id_tbl(k)) AND
2918: (p_currency_code_tbl(i) = l_currency_code_tbl(k))) THEN
2919: -- If Already Added Set l_rec_already_exists to Y
2920: IF l_debug_mode = 'Y' THEN
2921: pa_debug.g_err_stage:='Output Rec Exists';
2922: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2923: END IF;
2924: l_rec_already_exists := 'Y';
2925: EXIT;
2918: (p_currency_code_tbl(i) = l_currency_code_tbl(k))) THEN
2919: -- If Already Added Set l_rec_already_exists to Y
2920: IF l_debug_mode = 'Y' THEN
2921: pa_debug.g_err_stage:='Output Rec Exists';
2922: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2923: END IF;
2924: l_rec_already_exists := 'Y';
2925: EXIT;
2926: ELSE
2935:
2936: -- If Output Table does not have the I/P Rec add I/P Rec to Output Tables
2937: IF l_rec_already_exists = 'N' THEN
2938: IF l_debug_mode = 'Y' THEN
2939: pa_debug.g_err_stage:='Add to Output Rec';
2940: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2941: END IF;
2942:
2943: l_task_elem_version_id_tbl.extend(1);
2936: -- If Output Table does not have the I/P Rec add I/P Rec to Output Tables
2937: IF l_rec_already_exists = 'N' THEN
2938: IF l_debug_mode = 'Y' THEN
2939: pa_debug.g_err_stage:='Add to Output Rec';
2940: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2941: END IF;
2942:
2943: l_task_elem_version_id_tbl.extend(1);
2944: l_resource_list_member_id_tbl.extend(1);
2983: END IF;
2984:
2985: ELSE -- i.e. l_bl_already_exists = 'Y'
2986: IF l_debug_mode = 'Y' THEN
2987: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_task_elem_version_id_tbl : '||p_task_elem_version_id_tbl(i);
2988: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2989:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2984:
2985: ELSE -- i.e. l_bl_already_exists = 'Y'
2986: IF l_debug_mode = 'Y' THEN
2987: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_task_elem_version_id_tbl : '||p_task_elem_version_id_tbl(i);
2988: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2989:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2992:
2986: IF l_debug_mode = 'Y' THEN
2987: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_task_elem_version_id_tbl : '||p_task_elem_version_id_tbl(i);
2988: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2989:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2992:
2993: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_currency_code_tbl : '||p_currency_code_tbl(i);
2994: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2987: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_task_elem_version_id_tbl : '||p_task_elem_version_id_tbl(i);
2988: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2989:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2992:
2993: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_currency_code_tbl : '||p_currency_code_tbl(i);
2994: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2995: END IF;
2989:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2992:
2993: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_currency_code_tbl : '||p_currency_code_tbl(i);
2994: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2995: END IF;
2996: END IF;
2997:
2990: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_resource_list_member_id_tbl : '||p_resource_list_member_id_tbl(i);
2991: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2992:
2993: pa_debug.g_err_stage:='BL Exists - Skipping Rec p_currency_code_tbl : '||p_currency_code_tbl(i);
2994: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
2995: END IF;
2996: END IF;
2997:
2998: END LOOP;
2999:
3000: ELSE
3001: -- If Empty Tables are passed to Wrapper API. Simply Return
3002: IF l_debug_mode = 'Y' THEN
3003: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... '||p_context;
3004: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
3005: END IF;
3006: pa_debug.reset_curr_function;
3007: RETURN;
3000: ELSE
3001: -- If Empty Tables are passed to Wrapper API. Simply Return
3002: IF l_debug_mode = 'Y' THEN
3003: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... '||p_context;
3004: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
3005: END IF;
3006: pa_debug.reset_curr_function;
3007: RETURN;
3008: END IF;
3002: IF l_debug_mode = 'Y' THEN
3003: pa_debug.g_err_stage:='elem_version_id table is empty - RETURNING ... '||p_context;
3004: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
3005: END IF;
3006: pa_debug.reset_curr_function;
3007: RETURN;
3008: END IF;
3009:
3010: IF l_debug_mode = 'Y' THEN
3007: RETURN;
3008: END IF;
3009:
3010: IF l_debug_mode = 'Y' THEN
3011: pa_debug.g_err_stage:='Calling Add Planning TXN API';
3012: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
3013: END IF;
3014:
3015: pa_fp_planning_transaction_pub.add_planning_transactions
3008: END IF;
3009:
3010: IF l_debug_mode = 'Y' THEN
3011: pa_debug.g_err_stage:='Calling Add Planning TXN API';
3012: pa_debug.write('PAFPPEUB.add_new_resource_assignments',pa_debug.g_err_stage,3);
3013: END IF;
3014:
3015: pa_fp_planning_transaction_pub.add_planning_transactions
3016: (p_context => p_context,
3034: x_msg_data => l_msg_data);
3035:
3036: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
3037: IF l_debug_mode = 'Y' THEN
3038: pa_debug.g_err_stage:='ADD PLAN TXN Returned Error';
3039: pa_debug.write('PA_PLANNING_ELEMENT_UTILS.add_new_resource_assignments',pa_debug.g_err_stage,3);
3040: END IF;
3041:
3042: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3035:
3036: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
3037: IF l_debug_mode = 'Y' THEN
3038: pa_debug.g_err_stage:='ADD PLAN TXN Returned Error';
3039: pa_debug.write('PA_PLANNING_ELEMENT_UTILS.add_new_resource_assignments',pa_debug.g_err_stage,3);
3040: END IF;
3041:
3042: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3043: END IF;
3041:
3042: RAISE PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc;
3043: END IF;
3044:
3045: pa_debug.reset_curr_function;
3046:
3047: EXCEPTION
3048: WHEN PA_FP_CONSTANTS_PKG.Invalid_Arg_Exc THEN
3049: l_msg_count := FND_MSG_PUB.count_msg;
3060: ELSE
3061: x_msg_count := l_msg_count;
3062: END IF;
3063: x_return_status := FND_API.G_RET_STS_ERROR;
3064: pa_debug.reset_curr_function;
3065:
3066: WHEN OTHERS THEN
3067:
3068: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3071: FND_MSG_PUB.add_exc_msg( p_pkg_name => 'PA_PLANNING_ELEMENT_UTILS'
3072: ,p_procedure_name => 'add_new_resource_assignments');
3073:
3074: IF l_debug_mode = 'Y' THEN
3075: pa_debug.g_err_stage:='Unexpected Error'||SQLERRM;
3076: pa_debug.write('add_new_resource_assignments',pa_debug.g_err_stage,5);
3077: END IF;
3078: pa_debug.reset_curr_function;
3079: RAISE;
3072: ,p_procedure_name => 'add_new_resource_assignments');
3073:
3074: IF l_debug_mode = 'Y' THEN
3075: pa_debug.g_err_stage:='Unexpected Error'||SQLERRM;
3076: pa_debug.write('add_new_resource_assignments',pa_debug.g_err_stage,5);
3077: END IF;
3078: pa_debug.reset_curr_function;
3079: RAISE;
3080:
3074: IF l_debug_mode = 'Y' THEN
3075: pa_debug.g_err_stage:='Unexpected Error'||SQLERRM;
3076: pa_debug.write('add_new_resource_assignments',pa_debug.g_err_stage,5);
3077: END IF;
3078: pa_debug.reset_curr_function;
3079: RAISE;
3080:
3081: END add_new_resource_assignments;
3082: