DBA Data[Home] [Help]

PACKAGE BODY: APPS.PQH_PQHWSBPR_XMLP_PKG

Source


1 PACKAGE BODY PQH_PQHWSBPR_XMLP_PKG AS
2 /* $Header: PQHWSBPRB.pls 120.2 2007/12/21 19:31:13 vjaganat noship $ */
3   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4   l_dummy boolean;
5   BEGIN
6     DECLARE
7       CURSOR CSR_BDGT_NO IS
8         SELECT
9           BUDGET_NAME,
10           VERSION_NUMBER
11         FROM
12           PQH_BUDGETS BGT,
13           PQH_BUDGET_VERSIONS BVR
14         WHERE BGT.BUDGET_ID = BVR.BUDGET_ID
15           AND BGT.BUSINESS_GROUP_ID = P_BUSINESS_GROUP_ID
16           AND BUDGET_VERSION_ID = P_BUDGET_VERSION_ID;
17       CURSOR CSR_CURR_CODE IS
18         SELECT
19           BG.CURRENCY_CODE
20         FROM
21           PER_BUSINESS_GROUPS BG,
22           PQH_BUDGETS BGT,
23           PQH_BUDGET_VERSIONS BVR
24         WHERE BGT.BUDGET_ID = BVR.BUDGET_ID
25           AND BVR.BUDGET_VERSION_ID = P_BUDGET_VERSION_ID
26           AND BGT.BUSINESS_GROUP_ID = BG.BUSINESS_GROUP_ID;
27       CURSOR CSR_BGT_CURR IS
28         SELECT
29           BGT.CURRENCY_CODE
30         FROM
31           PQH_BUDGETS BGT,
32           PQH_BUDGET_VERSIONS BVR
33         WHERE BGT.BUDGET_ID = BVR.BUDGET_ID
34           AND BVR.BUDGET_VERSION_ID = P_BUDGET_VERSION_ID;
35       CURSOR CSR_SESSION_DATE IS
36         SELECT
37           sysdate
38         FROM
39           DUAL;
40       CURSOR CSR_RECORD_VALUE IS
41         SELECT
42           MEANING
43         FROM
44           HR_LOOKUPS
45         WHERE LOOKUP_TYPE = 'PQH_BUDGET_DETAIL_RECORD_TYPE'
46           AND LOOKUP_CODE = P_RECORD_TYPE;
47       L_BG_CURR_CODE VARCHAR2(150) := '';
48       L_BUDGET_CURR VARCHAR2(150) := '';
49     BEGIN
50       l_dummy := BEFOREPFORM;
51       P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
52       OPEN CSR_BDGT_NO;
53       FETCH CSR_BDGT_NO
54        INTO
55          CP_BUDGET_NAME
56          ,CP_BUDGET_VERSION;
57       CLOSE CSR_BDGT_NO;
58       OPEN CSR_RECORD_VALUE;
59       FETCH CSR_RECORD_VALUE
60        INTO
61          CP_RECORD_VALUE;
62       CLOSE CSR_RECORD_VALUE;
63       P_REPORT_TITLE := HR_GENERAL.DECODE_LOOKUP('PQH_REPORT_TITLES'
64                                                 ,'PQHWSBPR');
65       C_BUSINESS_GROUP_NAME := GET_BUSINESS_GROUP(P_BUSINESS_GROUP_ID);
66       OPEN CSR_BGT_CURR;
67       FETCH CSR_BGT_CURR
68        INTO
69          L_BUDGET_CURR;
70       CLOSE CSR_BGT_CURR;
71       IF L_BUDGET_CURR IS NOT NULL THEN
72         CP_CURRENCY_CODE := L_BUDGET_CURR;
73       ELSE
74         OPEN CSR_CURR_CODE;
75         FETCH CSR_CURR_CODE
76          INTO
77            L_BG_CURR_CODE;
78         CLOSE CSR_CURR_CODE;
79         CP_CURRENCY_CODE := L_BG_CURR_CODE;
80       END IF;
81       OPEN CSR_SESSION_DATE;
82       FETCH CSR_SESSION_DATE
83        INTO
84          CP_SESSION_DT;
85       CLOSE CSR_SESSION_DATE;
86     END;
87     RETURN (TRUE);
88   END BEFOREREPORT;
89 
90   FUNCTION CF_1FORMULA(BUDGET_UNIT_ID IN NUMBER
91                       ,BUDGET_PERIOD_ACTUAL_VALUE IN NUMBER
92                       ,BUDGET_PERIOD_CMMTMNT_VALUE IN NUMBER) RETURN NUMBER IS
93     CURSOR SHARED_TYPES IS
94       SELECT
95         SYSTEM_TYPE_CD
96       FROM
97         PER_SHARED_TYPES
98       WHERE SHARED_TYPE_ID = BUDGET_UNIT_ID;
99     L_SHARED_TYPE_CD PER_SHARED_TYPES.SYSTEM_TYPE_CD%TYPE;
100   BEGIN
101     OPEN SHARED_TYPES;
102     FETCH SHARED_TYPES
103      INTO
104        L_SHARED_TYPE_CD;
105     CLOSE SHARED_TYPES;
106     IF NVL(L_SHARED_TYPE_CD
107        ,'XX') = 'MONEY' THEN
108       RETURN (NVL(BUDGET_PERIOD_ACTUAL_VALUE
109                 ,0) + NVL(BUDGET_PERIOD_CMMTMNT_VALUE
110                 ,0));
111     ELSE
112       RETURN (NVL(BUDGET_PERIOD_ACTUAL_VALUE
113                 ,0));
114     END IF;
115   END CF_1FORMULA;
116 
117   FUNCTION CF_DEF_EX_AMTFORMULA(BUDGET_PERIOD_BUDGETED_VALUE IN NUMBER
118                                ,CF_PROJECTED_EXP IN NUMBER) RETURN NUMBER IS
119   BEGIN
120     RETURN (NVL(BUDGET_PERIOD_BUDGETED_VALUE
121               ,0) - NVL(CF_PROJECTED_EXP
122               ,0));
123   END CF_DEF_EX_AMTFORMULA;
124 
125   FUNCTION BEFOREPFORM RETURN BOOLEAN IS
126   BEGIN
127     INSERT INTO FND_SESSIONS
128       (SESSION_ID
129       ,EFFECTIVE_DATE)
130     VALUES   (USERENV('sessionid')
131       ,P_EFFECTIVE_DATE);
132     RETURN (TRUE);
133   END BEFOREPFORM;
134 
135   FUNCTION CF_ACT_PERFORMULA(BUDGET_PERIOD_BUDGETED_VALUE IN NUMBER
136                             ,BUDGET_PERIOD_ACTUAL_VALUE IN NUMBER) RETURN NUMBER IS
137   BEGIN
138     IF BUDGET_PERIOD_BUDGETED_VALUE = 0 THEN
139       RETURN 0;
140     ELSE
141       RETURN (NVL(BUDGET_PERIOD_ACTUAL_VALUE
142                 ,0) / BUDGET_PERIOD_BUDGETED_VALUE) * 100;
143     END IF;
144   END CF_ACT_PERFORMULA;
145 
146   FUNCTION CF_COM_PERFORMULA(BUDGET_PERIOD_BUDGETED_VALUE IN NUMBER
147                             ,BUDGET_PERIOD_CMMTMNT_VALUE IN NUMBER) RETURN NUMBER IS
148   BEGIN
149     IF BUDGET_PERIOD_BUDGETED_VALUE = 0 THEN
150       RETURN 0;
151     ELSE
152       RETURN (NVL(BUDGET_PERIOD_CMMTMNT_VALUE
153                 ,0) / BUDGET_PERIOD_BUDGETED_VALUE) * 100;
154     END IF;
155   END CF_COM_PERFORMULA;
156 
157   FUNCTION CF_PROJ_PERFORMULA(BUDGET_PERIOD_BUDGETED_VALUE IN NUMBER
158                              ,CF_PROJECTED_EXP IN NUMBER) RETURN NUMBER IS
159   BEGIN
160     IF BUDGET_PERIOD_BUDGETED_VALUE = 0 THEN
161       RETURN 0;
162     ELSE
163       RETURN (NVL(CF_PROJECTED_EXP
164                 ,0) / BUDGET_PERIOD_BUDGETED_VALUE) * 100;
165     END IF;
166   END CF_PROJ_PERFORMULA;
167 
168   FUNCTION CF_DEF_EX_PERFORMULA(BUDGET_PERIOD_BUDGETED_VALUE IN NUMBER
169                                ,CF_DEF_EX_AMT IN NUMBER) RETURN NUMBER IS
170   BEGIN
171     IF BUDGET_PERIOD_BUDGETED_VALUE = 0 THEN
172       RETURN 0;
173     ELSE
174       RETURN (NVL(CF_DEF_EX_AMT
175                 ,0) / BUDGET_PERIOD_BUDGETED_VALUE) * 100;
176     END IF;
177   END CF_DEF_EX_PERFORMULA;
178 
179   FUNCTION CF_FORMAT_MASKFORMULA(BUDGET_UNIT_ID IN NUMBER) RETURN CHAR IS
180     BUDGET_UNIT_CD VARCHAR2(30);
181     L_FORMAT_MASK VARCHAR2(40);
182   BEGIN
183     SELECT
184       SYSTEM_TYPE_CD
185     INTO
186       BUDGET_UNIT_CD
187     FROM
188       PER_SHARED_TYPES
189     WHERE SHARED_TYPE_ID = BUDGET_UNIT_ID;
190     IF BUDGET_UNIT_CD = 'MONEY' THEN
191       L_FORMAT_MASK := FND_CURRENCY.GET_FORMAT_MASK(CP_CURRENCY_CODE
192                                                    ,22);
193     ELSE
194       FND_CURRENCY.BUILD_FORMAT_MASK(L_FORMAT_MASK
195                                     ,22
196                                     ,2
197                                     ,NULL
198                                     ,NULL
199                                     ,NULL
200                                     ,NULL);
201     END IF;
202     RETURN L_FORMAT_MASK;
203   END CF_FORMAT_MASKFORMULA;
204 
205   FUNCTION AFTERREPORT RETURN BOOLEAN IS
206   BEGIN
207     RETURN (TRUE);
208   END AFTERREPORT;
209 
210   FUNCTION C_REPORT_SUBTITLE_P RETURN VARCHAR2 IS
211   BEGIN
212     RETURN C_REPORT_SUBTITLE;
213   END C_REPORT_SUBTITLE_P;
214 
215   FUNCTION CP_BUDGET_NAME_P RETURN VARCHAR2 IS
216   BEGIN
217     RETURN CP_BUDGET_NAME;
218   END CP_BUDGET_NAME_P;
219 
220   FUNCTION CP_BUDGET_VERSION_P RETURN NUMBER IS
221   BEGIN
222     RETURN CP_BUDGET_VERSION;
223   END CP_BUDGET_VERSION_P;
224 
225   FUNCTION CP_CURRENCY_CODE_P RETURN VARCHAR2 IS
226   BEGIN
227     RETURN CP_CURRENCY_CODE;
228   END CP_CURRENCY_CODE_P;
229 
230   FUNCTION C_BUSINESS_GROUP_NAME_P RETURN VARCHAR2 IS
231   BEGIN
232     RETURN C_BUSINESS_GROUP_NAME;
233   END C_BUSINESS_GROUP_NAME_P;
234 
235   FUNCTION CP_SESSION_DT_P RETURN DATE IS
236   BEGIN
237     RETURN CP_SESSION_DT;
238   END CP_SESSION_DT_P;
239 
240   FUNCTION CP_RECORD_VALUE_P RETURN VARCHAR2 IS
241   BEGIN
242     RETURN CP_RECORD_VALUE;
243   END CP_RECORD_VALUE_P;
244 
245   FUNCTION GET_BUSINESS_GROUP(P_BUSINESS_GROUP_ID IN NUMBER) RETURN VARCHAR2 IS
246     X0 VARCHAR2(2000);
247   BEGIN
248     X0 := HR_REPORTS.GET_BUSINESS_GROUP(P_BUSINESS_GROUP_ID);
249     RETURN X0;
250   END GET_BUSINESS_GROUP;
251 
252 END PQH_PQHWSBPR_XMLP_PKG;