DBA Data[Home] [Help]

PACKAGE BODY: APPS.RLM_RLMDPPSR_XMLP_PKG

Source


1 PACKAGE BODY RLM_RLMDPPSR_XMLP_PKG AS
2 /* $Header: RLMDPPSRB.pls 120.1 2008/02/12 13:26:12 dwkrishn noship $ */
3   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
4     L_CURRENT_ORG_ID NUMBER;
5     L_OU_NAME VARCHAR2(240);
6   BEGIN
7     BEGIN
8       BEGIN
9         P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
10         M_2 := M_2FORMATTRIGGER;
11         /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
12       EXCEPTION
13         WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
14           /*SRW.MESSAGE(1000
15                      ,'Failed in BEFORE REPORT trigger')*/NULL;
16           RETURN (FALSE);
17       END;
18       L_CURRENT_ORG_ID := MO_GLOBAL.GET_CURRENT_ORG_ID;
19       IF (L_CURRENT_ORG_ID IS NULL AND P_ORG_ID IS NOT NULL) THEN
20         MO_GLOBAL.SET_POLICY_CONTEXT(P_ACCESS_MODE => 'S'
21                                     ,P_ORG_ID => P_ORG_ID);
22         L_CURRENT_ORG_ID := P_ORG_ID;
23       END IF;
24       L_OU_NAME := FND_ACCESS_CONTROL_UTIL.GET_ORG_NAME(L_CURRENT_ORG_ID);
25       CP_DEFAULT_OU := L_OU_NAME;
26       IF (P_REQUEST_ID IS NOT NULL) THEN
27         P_WHERE_CLAUSE := ' and e.request_id = ' || P_REQUEST_ID;
28       END IF;
29     END;
30     RETURN (TRUE);
31   END BEFOREREPORT;
32 
33   FUNCTION AFTERREPORT RETURN BOOLEAN IS
34   BEGIN
35     BEGIN
36       /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
37     EXCEPTION
38       WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
39         /*SRW.MESSAGE(1
40                    ,'Failed in AFTER REPORT TRIGGER')*/NULL;
41         RETURN (FALSE);
42     END;
43     IF (P_REQUEST_ID IS NOT NULL) THEN
44       DELETE FROM RLM_DEMAND_EXCEPTIONS
45        WHERE REQUEST_ID = P_REQUEST_ID
46          AND PURGE_STATUS is not null;
47       COMMIT;
48     END IF;
49     RETURN (TRUE);
50   END AFTERREPORT;
51 
52   FUNCTION CF_SCHEDULE_TYPEFORMULA(SCHEDULE_TYPE IN VARCHAR2) RETURN VARCHAR2 IS
53   BEGIN
54     DECLARE
55       X_SCHEDULE_TYPE VARCHAR2(80);
56     BEGIN
57       SELECT
58         MEANING
59       INTO X_SCHEDULE_TYPE
60       FROM
61         FND_LOOKUPS
62       WHERE LOOKUP_TYPE = 'RLM_SCHEDULE_TYPE'
63         AND LOOKUP_CODE = SCHEDULE_TYPE;
64       RETURN X_SCHEDULE_TYPE;
65     EXCEPTION
66       WHEN OTHERS THEN
67         RETURN '-1';
68     END;
69     RETURN NULL;
70   END CF_SCHEDULE_TYPEFORMULA;
71 
72   FUNCTION CF_PURGE_STATUSFORMULA(PURGE_STATUS IN VARCHAR2) RETURN VARCHAR2 IS
73   BEGIN
74     DECLARE
75       V_PURGE_STATUS VARCHAR(20);
76       X_YES VARCHAR2(20);
77     BEGIN
78       IF (P_EXECUTION_MODE = 'V') THEN
79         SELECT
80           MEANING
81         INTO X_YES
82         FROM
83           FND_LOOKUPS
84         WHERE LOOKUP_TYPE = 'YES_NO'
85           AND LOOKUP_CODE = 'N';
86         RETURN X_YES;
87       ELSE
88         SELECT
89           MEANING
90         INTO X_YES
91         FROM
92           FND_LOOKUPS
93         WHERE LOOKUP_TYPE = 'YES_NO'
94           AND LOOKUP_CODE = PURGE_STATUS;
95         RETURN X_YES;
96       END IF;
97     END;
98     RETURN NULL;
99   END CF_PURGE_STATUSFORMULA;
100 
101   FUNCTION CF_1FORMULA RETURN NUMBER IS
102   BEGIN
103     DECLARE
104       V_COUNT NUMBER;
105       V_COUNT1 NUMBER;
106       V_COUNT2 NUMBER;
107     BEGIN
108       SELECT
109         count(distinct SCHEDULE_HEADER_ID)
110       INTO V_COUNT1
111       FROM
112         RLM_DEMAND_EXCEPTIONS
113       WHERE REQUEST_ID = P_REQUEST_ID
114         AND ( MESSAGE_NAME like '%SUCCESS%'
115       OR MESSAGE_NAME like '%PURGABLE%'
116       OR MESSAGE_NAME IS NULL );
117       SELECT
118         count(distinct SCHEDULE_HEADER_ID)
119       INTO V_COUNT2
120       FROM
121         RLM_DEMAND_EXCEPTIONS
122       WHERE REQUEST_ID = P_REQUEST_ID
123         AND MESSAGE_NAME NOT like '%SUCCESS%'
127       RETURN V_COUNT;
124         AND MESSAGE_NAME NOT like '%PURGABLE%'
125         AND MESSAGE_NAME IS NOT NULL;
126       V_COUNT := V_COUNT1 + V_COUNT2;
128     END;
129     RETURN NULL;
130   END CF_1FORMULA;
131 
132   FUNCTION CF_COUNT2FORMULA RETURN NUMBER IS
133   BEGIN
134     DECLARE
135       V_COUNT NUMBER;
136     BEGIN
137       SELECT
138         count(distinct SCHEDULE_HEADER_ID)
139       INTO V_COUNT
140       FROM
141         RLM_DEMAND_EXCEPTIONS
142       WHERE REQUEST_ID = P_REQUEST_ID
143         AND ( MESSAGE_NAME like '%SUCCESS%'
144       OR MESSAGE_NAME like '%PURGABLE%'
145       OR MESSAGE_NAME IS NULL );
146       RETURN V_COUNT;
147     END;
148     RETURN NULL;
149   END CF_COUNT2FORMULA;
150 
151   FUNCTION CF_COUNT3FORMULA RETURN NUMBER IS
152   BEGIN
153     DECLARE
154       V_COUNT NUMBER;
155     BEGIN
156       SELECT
157         count(distinct SCHEDULE_HEADER_ID)
158       INTO V_COUNT
159       FROM
160         RLM_DEMAND_EXCEPTIONS
161       WHERE REQUEST_ID = P_REQUEST_ID
162         AND MESSAGE_NAME NOT like '%SUCCESS%'
163         AND MESSAGE_NAME NOT like '%PURGABLE%'
164         AND MESSAGE_NAME IS NOT NULL;
165       RETURN V_COUNT;
166     END;
167     RETURN NULL;
168   END CF_COUNT3FORMULA;
169 
170   FUNCTION CF_1FORMULA0006 RETURN VARCHAR2 IS
171   BEGIN
172     DECLARE
173       V_REF VARCHAR2(35);
174     BEGIN
175       IF (P_SCHEDULE_REF_NO IS NOT NULL) THEN
176         SELECT
177           DISTINCT
178           SCHEDULE_REFERENCE_NUM
179         INTO V_REF
180         FROM
181           RLM_DEMAND_EXCEPTIONS
182         WHERE REQUEST_ID = P_REQUEST_ID;
183         RETURN V_REF;
184       ELSE
185         RETURN NULL;
186       END IF;
187     EXCEPTION
188       WHEN OTHERS THEN
189         RETURN '-1';
190     END;
191     RETURN NULL;
192   END CF_1FORMULA0006;
193 
194   FUNCTION CF_1FORMULA0004 RETURN VARCHAR2 IS
195   BEGIN
196     DECLARE
197       V_REF VARCHAR2(40);
198     BEGIN
199       IF (P_SHIP_TO_ADDRESS_ID_FROM IS NOT NULL) THEN
200         SELECT
201           ACCT_SITE.ECE_TP_LOCATION_CODE
202         INTO V_REF
203         FROM
204           HZ_CUST_ACCT_SITES ACCT_SITE
205         WHERE ACCT_SITE.CUST_ACCT_SITE_ID = P_SHIP_TO_ADDRESS_ID_FROM;
206         RETURN V_REF;
207       ELSE
208         RETURN NULL;
212         RETURN '-1';
209       END IF;
210     EXCEPTION
211       WHEN OTHERS THEN
213     END;
214     RETURN NULL;
215   END CF_1FORMULA0004;
216 
217   FUNCTION CF_SHIP_TO_TOFORMULA RETURN VARCHAR2 IS
218   BEGIN
219     DECLARE
220       V_REF VARCHAR2(40);
221     BEGIN
222       IF (P_SHIP_TO_ADDRESS_ID_TO IS NOT NULL) THEN
223         SELECT
224           ACCT_SITE.ECE_TP_LOCATION_CODE
225         INTO V_REF
226         FROM
227           HZ_CUST_ACCT_SITES ACCT_SITE
228         WHERE ACCT_SITE.CUST_ACCT_SITE_ID = P_SHIP_TO_ADDRESS_ID_TO;
229         RETURN V_REF;
230       ELSE
231         RETURN NULL;
232       END IF;
233     EXCEPTION
234       WHEN OTHERS THEN
235         RETURN '-1';
236     END;
237     RETURN NULL;
238   END CF_SHIP_TO_TOFORMULA;
239 
240   FUNCTION CF_P_SCHED_TYPEFORMULA RETURN VARCHAR2 IS
241   BEGIN
242     DECLARE
243       X_SCHEDULE_TYPE VARCHAR2(80);
244     BEGIN
245       IF (P_SCHEDULE_TYPE IS NULL) THEN
246         RETURN NULL;
247       ELSE
248         SELECT
249           MEANING
250         INTO X_SCHEDULE_TYPE
251         FROM
252           FND_LOOKUPS
253         WHERE LOOKUP_TYPE = 'RLM_SCHEDULE_TYPE'
254           AND LOOKUP_CODE = P_SCHEDULE_TYPE;
255         RETURN X_SCHEDULE_TYPE;
256       END IF;
257     EXCEPTION
258       WHEN OTHERS THEN
259         RETURN '-1';
260     END;
261     RETURN NULL;
262   END CF_P_SCHED_TYPEFORMULA;
263 
264   FUNCTION CF_EXECUTIONFORMULA RETURN VARCHAR2 IS
265   BEGIN
266     DECLARE
267       X_EXEC VARCHAR2(80);
268     BEGIN
269       SELECT
270         MEANING
271       INTO X_EXEC
272       FROM
273         FND_LOOKUPS
274       WHERE LOOKUP_TYPE = 'RLM_EXECUTION_MODE'
275         AND LOOKUP_CODE = P_EXECUTION_MODE;
276       RETURN X_EXEC;
277     EXCEPTION
278       WHEN OTHERS THEN
279         RETURN '-1';
280     END;
281     RETURN NULL;
282   END CF_EXECUTIONFORMULA;
283 
284   FUNCTION CF_YES_NOFORMULA RETURN VARCHAR2 IS
285   BEGIN
286     DECLARE
287       X_YES VARCHAR2(80);
288     BEGIN
289       SELECT
290         MEANING
291       INTO X_YES
292       FROM
293         FND_LOOKUPS
294       WHERE LOOKUP_TYPE = 'YES_NO'
295         AND LOOKUP_CODE = P_AUTHORIZATION;
296       RETURN X_YES;
297     EXCEPTION
298       WHEN OTHERS THEN
299         RETURN '-1';
300     END;
301     RETURN NULL;
302   END CF_YES_NOFORMULA;
303 
304   FUNCTION CF_PURGE_ELIGIBLEFORMULA(PURGE_STATUS IN VARCHAR2) RETURN VARCHAR2 IS
305   BEGIN
306     DECLARE
307       V_PURGE_STATUS VARCHAR(20);
308       X_YES VARCHAR2(20);
309     BEGIN
310       SELECT
311         MEANING
312       INTO X_YES
313       FROM
314         FND_LOOKUPS
315       WHERE LOOKUP_TYPE = 'YES_NO'
316         AND LOOKUP_CODE = PURGE_STATUS;
317       RETURN X_YES;
318     END;
319     RETURN NULL;
320   END CF_PURGE_ELIGIBLEFORMULA;
321 
322   FUNCTION CF_STATUS RETURN VARCHAR2 IS
323   BEGIN
324     DECLARE
325       X_STATUS VARCHAR2(80);
326     BEGIN
327       SELECT
328         MEANING
329       INTO X_STATUS
330       FROM
331         FND_LOOKUPS
332       WHERE LOOKUP_TYPE = 'RLM_STATUS'
333         AND LOOKUP_CODE = P_STATUS;
334       RETURN X_STATUS;
335     EXCEPTION
336       WHEN OTHERS THEN
337         RETURN '-1';
338     END;
339     RETURN NULL;
340   END CF_STATUS;
341 
342   FUNCTION CF_CUSTOMERFORMULA RETURN VARCHAR2 IS
343   BEGIN
344     DECLARE
345       V_CUSTOMER_NAME VARCHAR2(50);
346     BEGIN
347       IF (P_CUSTOMER IS NOT NULL) THEN
348         SELECT
349           SUBSTRB(PARTY.PARTY_NAME
350                  ,1
351                  ,50) CUSTOMER_NAME
352         INTO V_CUSTOMER_NAME
353         FROM
354           HZ_PARTIES PARTY,
355           HZ_CUST_ACCOUNTS CUST_ACCT
356         WHERE CUST_ACCT.CUST_ACCOUNT_ID = P_CUSTOMER
357           AND CUST_ACCT.PARTY_ID = PARTY.PARTY_ID;
358       END IF;
359       RETURN V_CUSTOMER_NAME;
360     EXCEPTION
361       WHEN OTHERS THEN
362         RETURN '-1';
363     END;
364   END CF_CUSTOMERFORMULA;
365 
366   FUNCTION CP_DEFAULT_OU_P RETURN VARCHAR2 IS
367   BEGIN
368     RETURN CP_DEFAULT_OU;
369   END CP_DEFAULT_OU_P;
370 
371   FUNCTION M_2FORMATTRIGGER RETURN VARCHAR2 IS
372   BEGIN
373 
374     DECLARE
375     V_COUNT NUMBER;
376 
377 
378   BEGIN
379 
380    SELECT COUNT(*) INTO V_COUNT FROM RLM_DEMAND_EXCEPTIONS
381    WHERE REQUEST_ID = P_REQUEST_ID;
382 
383    IF(V_COUNT > 0) THEN
384      RETURN ('Y');
385    ELSE
386       RETURN ('N');
387     END IF;
388 
389 
390   END;
391 
392   RETURN ('N');
393 
394 END;
395 
396 END RLM_RLMDPPSR_XMLP_PKG;