DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_FP_WP_GEN_AMT_UTILS

Source


1 PACKAGE BODY Pa_Fp_wp_gen_amt_utils AS
2 /* $Header: PAFPWPUB.pls 120.0 2005/05/29 21:52:29 appldev noship $ */
3 
4     function get_wp_ptype_id(p_project_id in number)
5     return number is
6       l_pt_id number := null;
7     begin
8        select opt.fin_plan_type_id  into l_pt_id
9        from pa_proj_fp_options opt,
10             pa_fin_plan_types_b pt
11        where
12        opt.FIN_PLAN_OPTION_LEVEL_CODE = 'PLAN_TYPE' and
13        opt.FIN_PLAN_TYPE_ID = pt.FIN_PLAN_TYPE_ID and
14        nvl(pt.USE_FOR_WORKPLAN_FLAG,'N') = 'Y' and
15        opt.project_id = p_project_id;
16 
17        return l_pt_id;
18     exception
19     when others then
20          return l_pt_id;
21     end get_wp_ptype_id;
22 
23     /* p_plan_type_id is not used in this function.
24        Any dummy value can be passed from the calling API. */
25 
26     function get_wp_version_id(p_project_id in number,
27                                p_plan_type_id in number,
28 			       p_proj_str_ver_id in number)
29 	return number is
30     l_ver_id number:=null;
31     begin
32        select budget_version_id into l_ver_id
33        from pa_budget_versions where
34        project_id = p_project_id  and
35 	   project_structure_version_id = p_proj_str_ver_id and
36            nvl(wp_version_flag,'N') = 'Y';
37          return l_ver_id;
38     exception
39     when no_data_found then
40          return l_ver_id;
41     end get_wp_version_id;
42 
43 /**Returns 'Y' if tracking workplan cost amts is enabled.
44   *Returns 'N' if tracking workplan cost amts is disabled.
45   *Returns Null if no workplan usage is enabled. **/
46 FUNCTION get_wp_track_cost_amt_flag (p_project_id IN NUMBER)
47 RETURN VARCHAR2
48 IS
49     l_flag VARCHAR2(5) := NULL;
50 BEGIN
51     SELECT NVL(TRACK_WORKPLAN_COSTS_FLAG,'N') INTO l_flag
52     FROM pa_proj_fp_options opt, pa_fin_plan_types_b pt
53     WHERE opt.project_id = P_PROJECT_ID
54 	  AND opt.FIN_PLAN_OPTION_LEVEL_CODE = 'PLAN_TYPE'
55 	  AND pt.fin_plan_type_id = opt.fin_plan_type_id
56   	  AND NVL(pt.USE_FOR_WORKPLAN_FLAG,'N') = 'Y';
57     RETURN l_flag;
58 
59 EXCEPTION
60     WHEN OTHERS THEN
61 	RETURN l_flag;
62 END get_wp_track_cost_amt_flag;
63 
64 FUNCTION get_wp_pt_time_phase_code(p_project_id IN NUMBER)
65     RETURN VARCHAR2  IS
66      l_time_phase_code pa_proj_fp_options.cost_time_phased_code%type;
67 BEGIN
68     SELECT opt.cost_time_phased_code INTO l_time_phase_code
69     FROM pa_proj_fp_options opt, pa_fin_plan_types_b pt
70     WHERE opt.project_id = P_PROJECT_ID
71           AND opt.FIN_PLAN_OPTION_LEVEL_CODE = 'PLAN_TYPE'
72           AND pt.fin_plan_type_id = opt.fin_plan_type_id
73           AND NVL(pt.USE_FOR_WORKPLAN_FLAG,'N') = 'Y';
74     RETURN l_time_phase_code;
75 
76 EXCEPTION
77     WHEN OTHERS THEN
78         RETURN l_time_phase_code;
79 END get_wp_pt_time_phase_code;
80 
81 END Pa_Fp_wp_gen_amt_utils;