1 PACKAGE BODY WIP_WIPUTACD_XMLP_PKG AS
2 /* $Header: WIPUTACDB.pls 120.2 2008/01/31 13:14:10 npannamp noship $ */
3 FUNCTION LIMIT_DATES RETURN CHARACTER IS
4 LIMIT_DATES VARCHAR2(150);
5 BEGIN
6 IF (P_FROM_DATE IS NOT NULL) THEN
7 IF (P_TO_DATE IS NOT NULL) THEN
8 LIMIT_DATES := ' AND WT.transaction_date >= TO_DATE(''' || TO_CHAR(P_FROM_DATE
9 ,'YYYYMMDD') || ''',''YYYYMMDD'')' || ' AND WT.transaction_date < TO_DATE(''' || TO_CHAR(P_TO_DATE + 1
10 ,'YYYYMMDD') || ''',''YYYYMMDD'')';
11 ELSE
12 LIMIT_DATES := ' AND WT.transaction_date >= TO_DATE(''' || TO_CHAR(P_FROM_DATE
13 ,'YYYYMMDD') || ''',''YYYYMMDD'')';
14 END IF;
15 ELSE
16 IF (P_TO_DATE IS NOT NULL) THEN
17 LIMIT_DATES := ' AND WT.transaction_date < TO_DATE(''' || TO_CHAR(P_TO_DATE + 1
18 ,'YYYYMMDD') || ''',''YYYYMMDD'')';
19 ELSE
20 LIMIT_DATES := ' ';
21 END IF;
22 END IF;
23 RETURN (LIMIT_DATES);
24 END LIMIT_DATES;
25 FUNCTION BEFOREREPORT RETURN BOOLEAN IS
26 BEGIN
27 DECLARE
28 L_STMT_NUM VARCHAR2(10);
29 DATE_FORMAT varchar2(20):='DD'||'-MON-'||'YY';
30 BEGIN
31 qty_precision:=wip_common_xmlp_pkg.get_precision(P_qty_precision);
32 P_EXCHANGE_RATE := FND_NUMBER.CANONICAL_TO_NUMBER(P_EXCHANGE_RATE_CHAR);
33 P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
34 /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
35 /*SRW.USER_EXIT('
36 FND FLEXSQL
37 CODE="GL#"
38 NUM=":P_STRUCT_NUM"
39 APPL_SHORT_NAME="SQLGL"
40 OUTPUT=":P_FLEXDATA"
41 TABLEALIAS="L"
42 MODE="SELECT"
43 DISPLAY="ALL"
44 ')*/NULL;
45 L_STMT_NUM := '1';
46 L_STMT_NUM := '2';
47 L_STMT_NUM := '3';
48 L_STMT_NUM := '4';
49 IF (P_PROJECT_ID IS NOT NULL) THEN
50 P_PROJECT_WHERE := 'WDJ.PROJECT_ID = ' || P_PROJECT_ID;
51 P_PROJ_WHERE := 'WT.PROJECT_ID = ' || P_PROJECT_ID;
52 END IF;
53 P_FROM_DATE_DISP:=to_char(P_FROM_DATE,DATE_FORMAT);
54 P_TO_DATE_DISP:=to_char(P_TO_DATE,DATE_FORMAT);
55 EXCEPTION
56 WHEN OTHERS THEN
57 /*SRW.MESSAGE(999
58 ,L_STMT_NUM)*/NULL;
59 /*SRW.MESSAGE(999
60 ,'FND FLEXSQL(MCAT) >X')*/NULL;
61 RAISE;
62 END;
63 RETURN (TRUE);
64 END BEFOREREPORT;
65 FUNCTION AFTERREPORT RETURN BOOLEAN IS
66 BEGIN
67 /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
68 RETURN (TRUE);
69 RETURN (TRUE);
70 END AFTERREPORT;
71 FUNCTION CLASS(R_CLASS IN VARCHAR2
72 ,D_CLASS IN VARCHAR2) RETURN CHARACTER IS
73 CLASS VARCHAR2(10);
74 BEGIN
75 IF (R_CLASS IS NULL) THEN
76 CLASS := D_CLASS;
77 ELSE
78 CLASS := R_CLASS;
79 END IF;
80 RETURN (CLASS);
81 END CLASS;
82 FUNCTION LIMIT_CLASSES RETURN CHARACTER IS
83 LIMIT_CLASSES VARCHAR2(80);
84 CL_TYPE NUMBER(10);
85 BEGIN
86 IF (P_CLASS_CODE IS NOT NULL) THEN
87 BEGIN
88 SELECT
89 DISTINCT
90 CLASS_TYPE
91 INTO CL_TYPE
92 FROM
93 WIP_ACCOUNTING_CLASSES
94 WHERE CLASS_CODE = P_CLASS_CODE
95 AND ORGANIZATION_ID = P_ORGANIZATION_ID;
96 EXCEPTION
97 WHEN NO_DATA_FOUND THEN
98 /*SRW.MESSAGE(30
99 ,'No Rows Found for the Class Specified')*/NULL;
100 RAISE;
101 END;
102 IF CL_TYPE = 2 THEN
103 LIMIT_CLASSES := ' AND WRI.CLASS_CODE = ''' || P_CLASS_CODE || '''';
104 ELSE
105 LIMIT_CLASSES := ' AND WDJ.CLASS_CODE = ''' || P_CLASS_CODE || '''';
106 END IF;
107 ELSE
108 LIMIT_CLASSES := ' ';
109 END IF;
110 RETURN (LIMIT_CLASSES);
111 END LIMIT_CLASSES;
112 FUNCTION C_SUBTITLE_CURRENCYFORMULA RETURN VARCHAR2 IS
113 BEGIN
114 RETURN ('(' || P_CURRENCY_CODE || ')');
115 END C_SUBTITLE_CURRENCYFORMULA;
116 FUNCTION C_ACCT_DESCRIPFORMULA(C_FLEXDATA IN VARCHAR2
117 ,ACCOUNT IN VARCHAR2
118 ,C_ACCT_DESCRIP IN VARCHAR2) RETURN VARCHAR2 IS
119 BEGIN
120 BEGIN
121 /*SRW.REFERENCE(C_FLEXDATA)*/NULL;
122 /*SRW.REFERENCE(ACCOUNT)*/NULL;
123 RETURN (C_ACCT_DESCRIP);
124 END;
125 RETURN NULL;
126 END C_ACCT_DESCRIPFORMULA;
127 FUNCTION C_FLEX_SORTFORMULA(C_FLEXDATA IN VARCHAR2
128 ,ACCOUNT IN VARCHAR2
129 ,C_FLEX_SORT IN VARCHAR2) RETURN VARCHAR2 IS
130 BEGIN
131 BEGIN
132 /*SRW.REFERENCE(C_FLEXDATA)*/NULL;
133 /*SRW.REFERENCE(ACCOUNT)*/NULL;
134 RETURN (C_FLEX_SORT);
135 END;
136 RETURN NULL;
137 END C_FLEX_SORTFORMULA;
138 FUNCTION AFTERPFORM RETURN BOOLEAN IS
139 BEGIN
140 IF P_JOB IS NOT NULL THEN
141 P_LIMIT_ENTITY := 'and WT.wip_entity_id = :P_Job';
142 END IF;
143 IF P_ACCOUNT IS NOT NULL THEN
144 P_LIMIT_ACCOUNT := 'and WA.reference_account = :P_Account';
145 END IF;
146 RETURN (TRUE);
147 END AFTERPFORM;
148 END WIP_WIPUTACD_XMLP_PKG;
149