DBA Data[Home] [Help]

PACKAGE BODY: APPS.BOM_CSTRAIVR_XMLP_PKG

Source


1 PACKAGE BODY BOM_CSTRAIVR_XMLP_PKG AS
2 /* $Header: CSTRAIVRB.pls 120.0 2007/12/24 09:52:34 dwkrishn noship $ */
3   FUNCTION AFTERREPORT RETURN BOOLEAN IS
4   BEGIN
5     /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
6     /*SRW.MESSAGE(0
7                ,'BOM_CSTRAIVR_XMLP_PKG >>     ' || TO_CHAR(SYSDATE
8                       ,'Dy Mon FmDD HH24:MI:SS YYYY'))*/NULL;
9     RETURN (TRUE);
10   END AFTERREPORT;
11 
12   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
13     L_FCN_CURRENCY VARCHAR2(15);
14     L_STMT_NUM NUMBER;
15     L_MSG_COUNT NUMBER;
16     L_MSG_DATA VARCHAR2(8000);
17     L_RETURN_STATUS VARCHAR2(1);
18     L_AS_OF_DATE VARCHAR2(30);
19     L_CST_INV_VAL EXCEPTION;
20   BEGIN
21     L_STMT_NUM := 0;
22     P_EXCHANGE_RATE := FND_NUMBER.CANONICAL_TO_NUMBER(P_EXCHANGE_RATE_CHAR);
23     L_STMT_NUM := 1;
24     IF P_VIEW_COST <> 1 THEN
25       FND_MESSAGE.SET_NAME('null'
26                           ,'null');
27       /*SRW.USER_EXIT('FND MESSAGE_DISPLAY')*/NULL;
28       /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
29     END IF;
30     L_STMT_NUM := 3;
31     SELECT
32       O.ORGANIZATION_NAME,
33       MP.COST_ORGANIZATION_ID,
34       SOB.CURRENCY_CODE,
35       NVL(EXTENDED_PRECISION
36          ,PRECISION),
37       NVL(MINIMUM_ACCOUNTABLE_UNIT
38          ,POWER(10
39               ,NVL(-PRECISION
40                  ,0))),
41       MCS.CATEGORY_SET_NAME,
42       DEFAULT_COST_TYPE_ID,
43       COST_TYPE,
44       LU1.MEANING
45     INTO P_ORGANIZATION,P_COST_ORG_ID,L_FCN_CURRENCY,P_EXT_PREC,ROUND_UNIT,P_CAT_SET_NAME,P_DEF_COST_TYPE,P_COST_TYPE,P_SORT_BY
46     FROM
47       ORG_ORGANIZATION_DEFINITIONS O,
48       MTL_PARAMETERS MP,
49       GL_SETS_OF_BOOKS SOB,
50       FND_CURRENCIES FC,
51       MTL_CATEGORY_SETS MCS,
52       CST_COST_TYPES,
53       MFG_LOOKUPS LU1
54     WHERE FC.CURRENCY_CODE = P_CURRENCY_CODE
55       AND O.ORGANIZATION_ID = P_ORG_ID
56       AND MP.ORGANIZATION_ID = P_ORG_ID
57       AND SOB.SET_OF_BOOKS_ID = O.SET_OF_BOOKS_ID
58       AND MCS.CATEGORY_SET_ID = P_CATEGORY_SET
59       AND COST_TYPE_ID = P_COST_TYPE_ID
60       AND LU1.LOOKUP_TYPE (+) = 'CST_ITEM_REPORT_SORT'
61       AND LU1.LOOKUP_CODE (+) = P_SORT_OPTION;
62     L_STMT_NUM := 4;
63     IF L_FCN_CURRENCY = P_CURRENCY_CODE THEN
64       P_CURRENCY_DSP := P_CURRENCY_CODE;
65     ELSE
66       P_CURRENCY_DSP := P_CURRENCY_CODE || ' @ ' || TO_CHAR(ROUND(1 / P_EXCHANGE_RATE
67                                      ,5)) || L_FCN_CURRENCY;
68     END IF;
69     L_STMT_NUM := 5;
70     P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
71     /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
72     L_STMT_NUM := 6;
73     L_STMT_NUM := 7;
74     L_STMT_NUM := 8;
75     CST_INVENTORY_PUB.CALCULATE_INVENTORYVALUE(P_API_VERSION => 1.0
76                                               ,P_INIT_MSG_LIST => CST_UTILITY_PUB.GET_TRUE
77                                               ,P_ORGANIZATION_ID => P_ORG_ID
78                                               ,P_ONHAND_VALUE => 1
79                                               ,P_INTRANSIT_VALUE => 1
80                                               ,P_RECEIVING_VALUE => 1
81                                               ,P_VALUATION_DATE => TO_DATE(P_AS_OF_DATE
82                                                      ,'YYYY/MM/DD HH24:MI:SS')
83                                               ,P_COST_TYPE_ID => P_COST_TYPE_ID
84                                               ,P_ITEM_FROM => P_ITEM_FROM
85                                               ,P_ITEM_TO => P_ITEM_TO
86                                               ,P_CATEGORY_SET_ID => P_CATEGORY_SET
87                                               ,P_CATEGORY_FROM => P_CAT_FROM
88                                               ,P_CATEGORY_TO => P_CAT_TO
89                                               ,P_COST_GROUP_FROM => NULL
90                                               ,P_COST_GROUP_TO => NULL
91                                               ,P_SUBINVENTORY_FROM => NULL
92                                               ,P_SUBINVENTORY_TO => NULL
93                                               ,P_QTY_BY_REVISION => NULL
94                                               ,P_ZERO_COST_ONLY => P_ZERO_COST
95                                               ,P_ZERO_QTY => NULL
96                                               ,P_EXPENSE_ITEM => P_EXP_ITEM
97                                               ,P_EXPENSE_SUB => P_EXP_SUBINV
98                                               ,P_UNVALUED_TXNS => NULL
99                                               ,P_RECEIPT => 1
100                                               ,P_SHIPMENT => 1
101                                               ,P_OWN => 1
102                                               ,P_DETAIL => NULL
103                                               ,X_RETURN_STATUS => L_RETURN_STATUS
104                                               ,X_MSG_COUNT => L_MSG_COUNT
105                                               ,X_MSG_DATA => L_MSG_DATA);
106     L_STMT_NUM := 9;
107     IF L_RETURN_STATUS <> CST_UTILITY_PUB.GET_RET_STS_SUCCESS THEN
108       RAISE L_CST_INV_VAL;
109     END IF;
110     L_STMT_NUM := 10;
111     FND_MSG_PUB.COUNT_AND_GET(P_ENCODED => CST_UTILITY_PUB.GET_FALSE
112                              ,P_COUNT => L_MSG_COUNT
113                              ,P_DATA => L_MSG_DATA);
114     L_STMT_NUM := 11;
115     IF L_MSG_COUNT > 0 THEN
116       FOR i IN 1 .. L_MSG_COUNT LOOP
117         L_MSG_DATA := FND_MSG_PUB.GET(I
118                                      ,CST_UTILITY_PUB.GET_FALSE);
119         FND_FILE.PUT_LINE(CST_UTILITY_PUB.GET_LOG
120                          ,I || '-' || L_MSG_DATA);
121       END LOOP;
122     END IF;
123     SELECT
124       TO_CHAR(TO_DATE(P_AS_OF_DATE
125                      ,'YYYY/MM/DD HH24:MI:SS')
126              ,'DD-MON-YYYY HH24:MI:SS')
127     INTO L_AS_OF_DATE
128     FROM
129       DUAL;
130     P_AS_OF_DATE1 := L_AS_OF_DATE;
131     /*SRW.MESSAGE(0
132                ,'BOM_CSTRAIVR_XMLP_PKG <<     ' || TO_CHAR(SYSDATE
133                       ,'Dy Mon FmDD HH24:MI:SS YYYY'))*/NULL;
134     RETURN TRUE;
135   EXCEPTION
136     WHEN OTHERS THEN
137       /*SRW.MESSAGE(999
138                  ,L_STMT_NUM || ': ' || SQLERRM)*/NULL;
139       /*SRW.MESSAGE(999
140                  ,'BOM_CSTRAIVR_XMLP_PKG >X     ' || TO_CHAR(SYSDATE
141                         ,'Dy Mon FmDD HH24:MI:SS YYYY'))*/NULL;
142       FND_MSG_PUB.COUNT_AND_GET(P_ENCODED => CST_UTILITY_PUB.GET_FALSE
143                                ,P_COUNT => L_MSG_COUNT
144                                ,P_DATA => L_MSG_DATA);
145       IF L_MSG_COUNT > 0 THEN
146         FOR i IN 1 .. L_MSG_COUNT LOOP
147           L_MSG_DATA := FND_MSG_PUB.GET(I
148                                        ,CST_UTILITY_PUB.GET_FALSE);
149           FND_FILE.PUT_LINE(CST_UTILITY_PUB.GET_LOG
150                            ,I || '-' || L_MSG_DATA);
151         END LOOP;
152       END IF;
153       /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
154   END BEFOREREPORT;
155 
156   FUNCTION CATEGORY_PSEGFORMULA(CATEGORY IN VARCHAR2
157                                ,CATEGORY_SEGMENT IN VARCHAR2
158                                ,CATEGORY_PSEG IN VARCHAR2) RETURN VARCHAR2 IS
159   BEGIN
160     /*SRW.REFERENCE(CATEGORY)*/NULL;
161     /*SRW.REFERENCE(CATEGORY_SEGMENT)*/NULL;
162     RETURN (CATEGORY_PSEG);
163   END CATEGORY_PSEGFORMULA;
164 
165   FUNCTION ITEM_PSEGFORMULA(ITEM_NUMBER IN VARCHAR2
166                            ,ITEM_SEGMENT IN VARCHAR2
167                            ,ITEM_PSEG IN VARCHAR2) RETURN VARCHAR2 IS
168   BEGIN
169     /*SRW.REFERENCE(ITEM_NUMBER)*/NULL;
170     /*SRW.REFERENCE(ITEM_SEGMENT)*/NULL;
171     RETURN (ITEM_PSEG);
172   END ITEM_PSEGFORMULA;
173 
174   FUNCTION ITEM_TOTAL_QUANTITYFORMULA(STK_QUANTITY IN NUMBER
175                                      ,INT_QUANTITY IN NUMBER
176                                      ,RCV_QUANTITY IN NUMBER) RETURN NUMBER IS
177   BEGIN
178     RETURN (STK_QUANTITY + INT_QUANTITY + RCV_QUANTITY);
179   END ITEM_TOTAL_QUANTITYFORMULA;
180 
181   FUNCTION ITEM_TOTAL_VALUEFORMULA(ITEM_STK_VALUE IN NUMBER
182                                   ,ITEM_INT_VALUE IN NUMBER
183                                   ,ITEM_RCV_VALUE IN NUMBER) RETURN NUMBER IS
184   BEGIN
185     RETURN (ITEM_STK_VALUE + ITEM_INT_VALUE + ITEM_RCV_VALUE);
186   END ITEM_TOTAL_VALUEFORMULA;
187 
188   FUNCTION CAT_TOTAL_VALUEFORMULA(CAT_STK_VALUE IN NUMBER
189                                  ,CAT_INT_VALUE IN NUMBER
190                                  ,CAT_RCV_VALUE IN NUMBER) RETURN NUMBER IS
191   BEGIN
192     RETURN (CAT_STK_VALUE + CAT_INT_VALUE + CAT_RCV_VALUE);
193   END CAT_TOTAL_VALUEFORMULA;
194 
195   FUNCTION C_ORDERFORMULA(ITEM_NUMBER IN VARCHAR2
196                          ,ITEM_SEGMENT IN VARCHAR2
197                          ,ITEM_PSEG IN VARCHAR2
198                          ,CATEGORY IN VARCHAR2
199                          ,CATEGORY_SEGMENT IN VARCHAR2
200                          ,CATEGORY_PSEG IN VARCHAR2) RETURN VARCHAR2 IS
201   BEGIN
202     /*SRW.REFERENCE(ITEM_NUMBER)*/NULL;
203     /*SRW.REFERENCE(ITEM_SEGMENT)*/NULL;
204     /*SRW.REFERENCE(ITEM_PSEG)*/NULL;
205     /*SRW.REFERENCE(CATEGORY)*/NULL;
206     /*SRW.REFERENCE(CATEGORY_SEGMENT)*/NULL;
207     /*SRW.REFERENCE(CATEGORY_PSEG)*/NULL;
208     IF P_SORT_OPTION = 1 THEN
209       RETURN (NULL);
210     ELSE
211       RETURN (CATEGORY_PSEG);
212     END IF;
213     RETURN NULL;
214   END C_ORDERFORMULA;
215 
216   FUNCTION REP_TOTAL_VALUEFORMULA(REP_STK_VALUE IN NUMBER
217                                  ,REP_INT_VALUE IN NUMBER
218                                  ,REP_RCV_VALUE IN NUMBER) RETURN NUMBER IS
219   BEGIN
220     RETURN (REP_STK_VALUE + REP_INT_VALUE + REP_RCV_VALUE);
221   END REP_TOTAL_VALUEFORMULA;
222 
223   FUNCTION P_TITLEVALIDTRIGGER RETURN BOOLEAN IS
224   BEGIN
225     RETURN (TRUE);
226   END P_TITLEVALIDTRIGGER;
227 
228 END BOM_CSTRAIVR_XMLP_PKG;
229