1 PACKAGE BODY PA_CLIENT_EXTN_BURDEN_SUMMARY AS
2 /* $Header: PAXBSGCB.pls 120.4 2006/05/26 07:46:54 rahariha noship $ */
3
4 /* Start : Add a variable (G_GMS_ENABLED) to hold the value of GMS implemented
5 ** status for Operating Unit with a default value of NULL.
6 ** 2981752 - PA.L:BURDENING ENHANCEMENTS : TRACKING BUG
7 */
8
9 G_gms_enabled varchar2(1) := NULL ;
10
11 /* End : Add a variable (G_GMS_ENABLED) to hold the value of GMS implemented
12 ** status for Operating Unit with a default value of NULL.
13 ** 2981752 - PA.L:BURDENING ENHANCEMENTS : TRACKING BUG
14 */
15
16
17 FUNCTION CLIENT_GROUPING
18 (p_src_expnd_type IN PA_EXPENDITURE_TYPES.expenditure_type%TYPE,
19 p_src_ind_expnd_type IN PA_EXPENDITURE_TYPES.expenditure_type%TYPE,
20 p_src_attribute1 IN PA_EXPENDITURE_TYPES.attribute1%TYPE,
21 p_src_attribute2 IN PA_EXPENDITURE_TYPES.attribute2%TYPE,
22 p_src_attribute3 IN PA_EXPENDITURE_TYPES.attribute3%TYPE,
23 p_src_attribute4 IN PA_EXPENDITURE_TYPES.attribute4%TYPE,
24 p_src_attribute5 IN PA_EXPENDITURE_TYPES.attribute5%TYPE,
25 p_src_attribute6 IN PA_EXPENDITURE_TYPES.attribute6%TYPE,
26 p_src_attribute7 IN PA_EXPENDITURE_TYPES.attribute7%TYPE,
27 p_src_attribute8 IN PA_EXPENDITURE_TYPES.attribute8%TYPE,
28 p_src_attribute9 IN PA_EXPENDITURE_TYPES.attribute9%TYPE,
29 p_src_attribute10 IN PA_EXPENDITURE_TYPES.attribute10%TYPE,
30 p_src_attribute_category IN PA_EXPENDITURE_TYPES.attribute_category%TYPE
31 ,p_src_exp_item_date IN PA_EXPENDITURE_ITEMS_ALL.expenditure_item_date%TYPE DEFAULT NULL
32 ,p_src_acct_rate_date IN PA_COST_DISTRIBUTION_LINES_ALL.ACCT_RATE_DATE%TYPE DEFAULT NULL
33 ,p_src_acct_rate_type IN PA_COST_DISTRIBUTION_LINES_ALL.ACCT_RATE_TYPE%TYPE DEFAULT NULL
34 ,p_src_acct_exchange_rate IN PA_COST_DISTRIBUTION_LINES_ALL.ACCT_EXCHANGE_RATE%TYPE DEFAULT NULL
35 ,p_src_project_rate_date IN PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_RATE_DATE%TYPE DEFAULT NULL
36 ,p_src_project_rate_type IN PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_RATE_TYPE%TYPE DEFAULT NULL
37 ,p_src_project_exchange_rate IN PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_EXCHANGE_RATE%TYPE DEFAULT NULL
38 ,p_src_projfunc_cost_rate_date IN PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_RATE_DATE%TYPE DEFAULT NULL
39 ,p_src_projfunc_cost_rate_type IN PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_RATE_TYPE%TYPE DEFAULT NULL
40 ,p_src_projfunc_cost_xchng_rate IN PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_EXCHANGE_RATE%TYPE DEFAULT NULL
41 ) RETURN varchar2 IS
42
43
44 v_grouping_method varchar2(2000) default null;
45
46 BEGIN
47
48 /* This Example groups the burden detail lines further by
49 attribute8,attribute9,attribute10 of PA_CDL_BURDEN_V table (which
50 are used to identify the expenditure lines with the assets in addition to
51 project_id||task_id||organization_id||pa_date||ind_cust_code
52 This is the CRL Projects Default code and should not be removed.
53 */
54
55 If (PA_INSTALL.is_product_installed('IPA')) then
56 v_grouping_method := p_src_attribute8||p_src_attribute9||p_src_attribute10;
57 End if;
58
59
60 /* Start : Grants Accounting specific grouping change:
61 ** Add award grouping criteria only when grants is implemented.
62 ** THIS SHOULD NOT BE REMOVED.
63 ** 2981752 - PA.L:BURDENING ENHANCEMENTS : TRACKING BUG
64 */
65
66 If G_gms_enabled is NULL THEN
67 G_gms_enabled := gms_pa_api3.grants_enabled ;
68 End If;
69
70 IF g_gms_enabled = 'Y' THEN
71 V_grouping_method := V_grouping_method||p_src_attribute1 ;
72 END IF ;
73 /* End : Grants Accounting specific grouping change.
74 ** 2981752 - PA.L:BURDENING ENHANCEMENTS : TRACKING BUG
75 */
76
77
78 /*
79 ** CLIENT CUSTOMIZATIONS BEGINS HERE .
80 * Enhancement :3010830 added new param p_src_exp_item_date as in param so that
81 * client can use this param to derive the grouping method
82 */
83
84 --Return the Grouping Method
85 return v_grouping_method;
86
87 EXCEPTION
88
89 WHEN OTHERS THEN
90 RAISE;
91
92 END CLIENT_GROUPING;
93
94 PROCEDURE CLIENT_COLUMN_VALUES
95 (
96 p_src_attribute2 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute2%TYPE,
97 p_src_attribute3 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute3%TYPE,
98 p_src_attribute4 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute4%TYPE,
99 p_src_attribute5 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute5%TYPE,
100 p_src_attribute6 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute6%TYPE,
101 p_src_attribute7 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute7%TYPE,
102 p_src_attribute8 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute8%TYPE,
103 p_src_attribute9 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute9%TYPE,
104 p_src_attribute10 IN OUT NOCOPY PA_EXPENDITURE_TYPES.attribute10%TYPE,
105 p_src_attribute_category IN PA_EXPENDITURE_TYPES.attribute_category%TYPE
106 ,p_src_acct_rate_date IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.ACCT_RATE_DATE%TYPE
107 ,p_src_acct_rate_type IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.ACCT_RATE_TYPE%TYPE
108 ,p_src_acct_exchange_rate IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.ACCT_EXCHANGE_RATE%TYPE
109 ,p_src_project_rate_date IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_RATE_DATE%TYPE
110 ,p_src_project_rate_type IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_RATE_TYPE%TYPE
111 ,p_src_project_exchange_rate IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJECT_EXCHANGE_RATE%TYPE
112 ,p_src_projfunc_cost_rate_date IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_RATE_DATE%TYPE
113 ,p_src_projfunc_cost_rate_type IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_RATE_TYPE%TYPE
114 ,p_src_projfunc_cost_xchng_rate IN OUT NOCOPY PA_COST_DISTRIBUTION_LINES_ALL.PROJFUNC_COST_EXCHANGE_RATE%TYPE
115 )
116
117 IS
118
119 BEGIN
120
121 /* This client extension filters out the attribute values needs to be
122 populated in pa_expenditure_items table, when a new EI is created by the
123 Burden Summarization process based on the additional summarization grouping
124 In this example since the burden detail lines are further grouped by
125 attribute8,attribute9,attribute10 for CRL Asset mechanization, all the
126 other attribute values will be set to null expect these three.
127 CAUTION !!! This include the default CRL code controlled by the CRL installed profile
128 and this should not be removed.
129 */
130 If (PA_INSTALL.is_product_installed('IPA')) then /*Bug 4739511:Added the If condition*/
131 p_src_attribute2 := null;
132 p_src_attribute3 := null;
133 p_src_attribute4 := null;
134 p_src_attribute5 := null;
135 p_src_attribute6 := null;
136 p_src_attribute7 := null;
137 End if; /*Bug# 4739511*/
138
139 /*Commenting for Bug# 4739511
140 If (NOT PA_INSTALL.is_product_installed('IPA')) then
141 p_src_attribute8 := null;
142 p_src_attribute9 := null;
143 p_src_attribute10 := null;
144 End if;******/
145
146 /* This client extension filters out the column values needs to be
147 populated in pa_expenditure_items table, when a new expenditure item is created by the
148 Burden Summarization process based on the additional summarization grouping.
149 These column values, which have been included in the grouping criteria in the function
150 CLIENT_GROUPING, should be commented out from the below code.
151 */
152 p_src_acct_rate_date := NULL;
153 p_src_acct_rate_type := NULL;
154 p_src_acct_exchange_rate := NULL;
155 p_src_project_rate_date := NULL;
156 p_src_project_rate_type := NULL;
157 p_src_project_exchange_rate := NULL;
158 p_src_projfunc_cost_rate_date := NULL;
159 p_src_projfunc_cost_rate_type := NULL;
160 p_src_projfunc_cost_xchng_rate := NULL;
161
162 END CLIENT_COLUMN_VALUES;
163
164 /* Function Same_Line_Burden_Cmt added for bug 2989775 */
165
166 FUNCTION Same_Line_Burden_Cmt RETURN BOOLEAN
167
168 IS
169
170 BEGIN
171
172 /* The value returned by this function determines if the burdening on commitment transactions, which can be
173 viewed from the Project Status Inquiry Screen, is to be done on the same item or separate item,
174 irrespective of the set up at the project type level. If the value returned by the function is FALSE,
175 burdening is as per the set up at project type level but if the value returned is TRUE, burdening will be
176 on the same line on commitment transactions. The default value of this function is FALSE and needs
177 to be set to TRUE as per the desired functionality. */
178
179 return FALSE;
180
181 END Same_Line_Burden_Cmt;
182
183 END PA_CLIENT_EXTN_BURDEN_SUMMARY;