DBA Data[Home] [Help]

PACKAGE BODY: APPS.RLM_RLMNETCH_XMLP_PKG

Source


1 PACKAGE BODY RLM_RLMNETCH_XMLP_PKG AS
2 /* $Header: RLMNETCHB.pls 120.0 2008/01/25 11:58:38 krreddy noship $ */
3   FUNCTION C_CHANGE_CUMFORMULA(CF_NEW_CUM IN NUMBER
4                               ,CF_OLD_CUM IN NUMBER) RETURN NUMBER IS
5     CHANGE NUMBER;
6   BEGIN
7     CHANGE := CF_NEW_CUM - CF_OLD_CUM;
8     RETURN (CHANGE);
9   END C_CHANGE_CUMFORMULA;
10 
11   FUNCTION C_NET_CHANGEFORMULA(C_ACTUAL_NEW_QTY IN NUMBER
12                               ,C_ACTUAL_OLD_QTY IN NUMBER) RETURN NUMBER IS
13     NETCHANGE NUMBER;
14   BEGIN
15     NETCHANGE := C_ACTUAL_NEW_QTY - C_ACTUAL_OLD_QTY;
16     RETURN (NETCHANGE);
17   END C_NET_CHANGEFORMULA;
18 
19   FUNCTION G_ITEM_1GROUPFILTER RETURN BOOLEAN IS
20   BEGIN
21     RETURN (TRUE);
22   END G_ITEM_1GROUPFILTER;
23 
24   FUNCTION G_CUSTOMER_ITEM_ID1GROUPFILTER RETURN BOOLEAN IS
25   BEGIN
26     CP_NEW_CUM := 0;
27     CP_OLD_CUM := 0;
28     RETURN (TRUE);
29   EXCEPTION
30     WHEN NO_DATA_FOUND THEN
31       CP_NEW_CUM := 0;
32       CP_OLD_CUM := 0;
33       RETURN (TRUE);
34   END G_CUSTOMER_ITEM_ID1GROUPFILTER;
35 
36   FUNCTION G_ITEM_HEADGROUPFILTER RETURN BOOLEAN IS
37   BEGIN
38     CP_PREV_VALUE := 0;
39     RETURN (TRUE);
40   END G_ITEM_HEADGROUPFILTER;
41 
42   FUNCTION G_HEADERGROUPFILTER RETURN BOOLEAN IS
43   BEGIN
44     RETURN (TRUE);
45   END G_HEADERGROUPFILTER;
46 
47   FUNCTION BEFOREREPORT RETURN BOOLEAN IS
48     L_RLM_SCHEDULE_TYPE VARCHAR2(30);
49     L_YES_NO VARCHAR2(30);
50     L_ENABLED_FLAG VARCHAR2(30);
51     L_SHIP_TO VARCHAR2(30);
52     L_STATUS VARCHAR2(1);
53     L_CURRENT_ORG_ID NUMBER;
54     L_OU_NAME VARCHAR2(240);
55     CURSOR CUR_CUST_NAME(V_CUSTOMER_ID IN NUMBER) IS
56       SELECT
57         PARTY.PARTY_NAME
58       FROM
59         HZ_PARTIES PARTY,
60         HZ_CUST_ACCOUNTS CUST_ACCT
61       WHERE PARTY.PARTY_ID = CUST_ACCT.PARTY_ID
62         AND CUST_ACCT.CUST_ACCOUNT_ID = V_CUSTOMER_ID;
63     CURSOR CUR_SCHEDULE_TYPE(V_SCHEDULE_TYPE IN VARCHAR2) IS
64       SELECT
65         MEANING
66       FROM
67         FND_LOOKUP_VALUES_VL
68       WHERE LOOKUP_TYPE = L_RLM_SCHEDULE_TYPE
69         AND LOOKUP_CODE = V_SCHEDULE_TYPE
70         AND ENABLED_FLAG = L_ENABLED_FLAG;
71     CURSOR CUR_SCH_REF_NUM(V_SCH_REF_NUM IN NUMBER) IS
72       SELECT
73         SCHEDULE_REFERENCE_NUM
74       FROM
75         RLM_SCHEDULE_HEADERS_ALL
76       WHERE HEADER_ID = V_SCH_REF_NUM;
77     CURSOR CUR_SHIP_FROM(V_SHIP_FROM IN NUMBER) IS
78       SELECT
79         ORGANIZATION_CODE
80       FROM
81         ORG_ORGANIZATION_DEFINITIONS
82       WHERE ORGANIZATION_ID = V_SHIP_FROM;
83     CURSOR CUR_P_SHIP_TO(NU_SHIP_TO IN NUMBER) IS
84       SELECT
85         ACCT_SITE.ECE_TP_LOCATION_CODE
86       FROM
87         HZ_CUST_SITE_USES_ALL CUST_SITE,
88         HZ_CUST_ACCT_SITES ACCT_SITE
89       WHERE CUST_SITE.SITE_USE_CODE = L_SHIP_TO
90         AND ACCT_SITE.STATUS = L_STATUS
91         AND CUST_SITE.SITE_USE_ID = NU_SHIP_TO
92         AND ACCT_SITE.CUST_ACCT_SITE_ID = CUST_SITE.CUST_ACCT_SITE_ID
93         AND CUST_SITE.ORG_ID = ACCT_SITE.ORG_ID;
94     CURSOR CUR_CHECK_YES_NO(V_YES_NO IN VARCHAR2) IS
95       SELECT
96         MEANING
97       FROM
98         FND_LOOKUP_VALUES_VL
99       WHERE LOOKUP_TYPE = L_YES_NO
100         AND LOOKUP_CODE = V_YES_NO
101         AND ENABLED_FLAG = L_ENABLED_FLAG;
102   BEGIN
103     L_RLM_SCHEDULE_TYPE := 'RLM_SCHEDULE_TYPE';
104     L_ENABLED_FLAG := 'Y';
105     L_SHIP_TO := 'SHIP_TO';
106     L_STATUS := 'A';
107     L_YES_NO := 'YES_NO';
108     BEGIN
109       P_CONC_REQUEST_ID := FND_GLOBAL.CONC_REQUEST_ID;
110       /*SRW.USER_EXIT('FND SRWINIT')*/NULL;
111     EXCEPTION
112       WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
113         /*SRW.MESSAGE(1
114                    ,'Failed FND SRWINIT.')*/NULL;
115         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
116     END;
117     L_CURRENT_ORG_ID := MO_GLOBAL.GET_CURRENT_ORG_ID;
118     IF (L_CURRENT_ORG_ID IS NULL AND P_ORG_ID IS NOT NULL) THEN
119       MO_GLOBAL.SET_POLICY_CONTEXT(P_ACCESS_MODE => 'S'
120                                   ,P_ORG_ID => P_ORG_ID);
121       L_CURRENT_ORG_ID := P_ORG_ID;
122     END IF;
123     L_OU_NAME := FND_ACCESS_CONTROL_UTIL.GET_ORG_NAME(L_CURRENT_ORG_ID);
124     CP_DEFAULT_OU := L_OU_NAME;
125     CP_ORG_ID := L_CURRENT_ORG_ID;
126     IF (P_CUSTOMER_ID IS NOT NULL) THEN
127       OPEN CUR_CUST_NAME(P_CUSTOMER_ID);
128       FETCH CUR_CUST_NAME
129        INTO CP_P_CUSTOMER_NAME;
130       CLOSE CUR_CUST_NAME;
131     END IF;
132     IF (P_SCHEDULE_TYPE IS NOT NULL) THEN
133       OPEN CUR_SCHEDULE_TYPE(P_SCHEDULE_TYPE);
134       FETCH CUR_SCHEDULE_TYPE
135        INTO CP_P_SCHEDULE_TYPE;
136       CLOSE CUR_SCHEDULE_TYPE;
137     END IF;
138     IF (P_NEW_HEADER_ID IS NOT NULL) THEN
139       OPEN CUR_SCH_REF_NUM(P_NEW_HEADER_ID);
140       FETCH CUR_SCH_REF_NUM
141        INTO CP_P_NEW_SCH_REF_NUM;
142       CLOSE CUR_SCH_REF_NUM;
143       OPEN CUR_SCH_REF_NUM(P_OLD_HEADER_ID);
144       FETCH CUR_SCH_REF_NUM
145        INTO CP_P_OLD_SCH_REF_NUM;
146       CLOSE CUR_SCH_REF_NUM;
147     END IF;
148     IF (P_SHIP_TO IS NOT NULL) THEN
149       OPEN CUR_P_SHIP_TO(P_SHIP_TO);
150       FETCH CUR_P_SHIP_TO
151        INTO CP_P_SHIP_TO;
152       CLOSE CUR_P_SHIP_TO;
153     END IF;
154     IF (P_SHIP_FROM IS NOT NULL) THEN
155       OPEN CUR_SHIP_FROM(P_SHIP_FROM);
156       FETCH CUR_SHIP_FROM
157        INTO CP_P_SHIP_FROM;
158       CLOSE CUR_SHIP_FROM;
159     END IF;
160     IF (P_AUTH_QUANT_FLAG IS NOT NULL) THEN
161       OPEN CUR_CHECK_YES_NO(P_AUTH_QUANT_FLAG);
162       FETCH CUR_CHECK_YES_NO
163        INTO CP_P_AUTH_QUANT_FLAG;
164       CLOSE CUR_CHECK_YES_NO;
165     END IF;
166     IF (P_OTHER_DETAIL_FLAG IS NOT NULL) THEN
167       OPEN CUR_CHECK_YES_NO(P_AUTH_QUANT_FLAG);
168       FETCH CUR_CHECK_YES_NO
169        INTO CP_P_OTHER_DETAIL_FLAG;
170       CLOSE CUR_CHECK_YES_NO;
171     END IF;
172     IF (P_NOCHANGE_LINES_FLAG IS NOT NULL) THEN
173       OPEN CUR_CHECK_YES_NO(P_NOCHANGE_LINES_FLAG);
174       FETCH CUR_CHECK_YES_NO
175        INTO CP_P_NOCHANGE_LINES_FLAG;
176       CLOSE CUR_CHECK_YES_NO;
177     END IF;
178     RETURN (TRUE);
179   END BEFOREREPORT;
180 
181   FUNCTION CF_PERCENTAGEFORMULA(C_SUM_OLD_QTY IN NUMBER
182                                ,CF_OLD_CUM IN NUMBER
183                                ,C_CHANGE_CUM IN NUMBER) RETURN NUMBER IS
184     PERCENTAGE NUMBER;
185   BEGIN
186     IF (C_SUM_OLD_QTY = 0 OR CF_OLD_CUM = 0) THEN
187       PERCENTAGE := 0;
188     ELSE
189       PERCENTAGE := C_CHANGE_CUM * 100 / CF_OLD_CUM;
190     END IF;
191     RETURN (PERCENTAGE);
192   END CF_PERCENTAGEFORMULA;
193 
194   FUNCTION C_ACTUAL_NEW_QTYFORMULA(NEW_CODE IN VARCHAR2
195                                   ,ITEM_DETAIL_QUANTITY IN NUMBER
196                                   ,CUST_RECORD_YEAR IN VARCHAR2
197                                   ,INTRMD_SHIP_TO_ID IN NUMBER
198                                   ,CUSTOMER_ITEM_ID IN NUMBER
199                                   ,SHIP_FROM_ORG_ID IN NUMBER
200                                   ,BILL_TO_ADDRESS_ID IN NUMBER
201                                   ,SHIP_TO_ADDRESS_ID IN NUMBER
202                                   ,INVENTORY_ITEM_ID IN NUMBER
203                                   ,CUST_PO_NUMBER IN VARCHAR2
204                                   ,SHIP_TO_ORG_ID IN NUMBER) RETURN NUMBER IS
205     NEW_QTY NUMBER;
206     CUM_START_DATE DATE;
207   BEGIN
208     NEW_QTY := 0;
209     IF NEW_CODE = 'CUMULATIVE' THEN
210       IF NOT (CP_NEW_CUM = 0 AND ITEM_DETAIL_QUANTITY <> 0) THEN
211         NEW_QTY := ITEM_DETAIL_QUANTITY - CP_NEW_CUM;
212       ELSE
213         /*CUM_START_DATE := GET_CUM_START_DATE(X_HEADER_ID
214                                             ,SHIP_FROM_ORG_ID
215                                             ,SHIP_TO_ORG_ID
216                                             ,CUSTOMER_ITEM_ID
217                                             ,INVENTORY_ITEM_ID);*/
218 	CUM_START_DATE := GET_CUM_START_DATE(P_NEW_HEADER_ID
219                                             ,SHIP_FROM_ORG_ID
220                                             ,SHIP_TO_ORG_ID
221                                             ,CUSTOMER_ITEM_ID
222                                             ,INVENTORY_ITEM_ID);
223 
224 	NEW_QTY := CUMKEYCALCULATION(CP_new_creation_date
225                                     ,CUM_START_DATE
226                                     ,CUSTOMER_ITEM_ID
227                                     ,SHIP_FROM_ORG_ID
228                                     ,INTRMD_SHIP_TO_ID
229                                     ,SHIP_TO_ADDRESS_ID
230                                     ,BILL_TO_ADDRESS_ID
231                                     ,CUST_PO_NUMBER
232                                     ,CUST_RECORD_YEAR
233                                     ,INVENTORY_ITEM_ID);
234         CP_NEW_SUP_CUM := NEW_QTY;
235         NEW_QTY := ITEM_DETAIL_QUANTITY - NEW_QTY;
236       END IF;
237       CP_NEW_CUM := ITEM_DETAIL_QUANTITY;
238       IF CP_NEW_ACT < 0 THEN
239         NEW_QTY := NEW_QTY + CP_NEW_ACT;
240       END IF;
241       IF NEW_QTY < 0 THEN
242         CP_NEW_ACT := NEW_QTY;
243       ELSE
244         CP_NEW_ACT := 0;
245       END IF;
246     ELSIF NEW_CODE = 'ACTUAL' THEN
247       NEW_QTY := ITEM_DETAIL_QUANTITY;
248     END IF;
249     RETURN (NEW_QTY);
250   END C_ACTUAL_NEW_QTYFORMULA;
251 
252   FUNCTION C_ACTUAL_OLD_QTYFORMULA(OLD_CODE IN VARCHAR2
253                                   ,ITEM_DETAIL_QUANTITY1 IN NUMBER
254                                   ,CUST_RECORD_YEAR IN VARCHAR2
255                                   ,INTRMD_SHIP_TO_ID IN NUMBER
256                                   ,CUSTOMER_ITEM_ID IN NUMBER
257                                   ,SHIP_FROM_ORG_ID IN NUMBER
258                                   ,BILL_TO_ADDRESS_ID IN NUMBER
259                                   ,SHIP_TO_ADDRESS_ID IN NUMBER
260                                   ,INVENTORY_ITEM_ID IN NUMBER
261                                   ,CUST_PO_NUMBER IN VARCHAR2
262                                   ,SHIP_TO_ORG_ID IN NUMBER) RETURN NUMBER IS
263     OLD_QTY NUMBER;
264     CUM_START_DATE DATE;
265   BEGIN
266     OLD_QTY := 0;
267     IF OLD_CODE = 'CUMULATIVE' THEN
268       IF NOT (CP_OLD_CUM = 0 AND ITEM_DETAIL_QUANTITY1 <> 0) THEN
269         OLD_QTY := ITEM_DETAIL_QUANTITY1 - CP_OLD_CUM;
270       ELSE
271         /*CUM_START_DATE := GET_CUM_START_DATE(X_HEADER_ID
272                                             ,SHIP_FROM_ORG_ID
273                                             ,SHIP_TO_ORG_ID
274                                             ,CUSTOMER_ITEM_ID
275                                             ,INVENTORY_ITEM_ID);*/
276 	CUM_START_DATE := GET_CUM_START_DATE(P_OLD_HEADER_ID
277                                             ,SHIP_FROM_ORG_ID
278                                             ,SHIP_TO_ORG_ID
279                                             ,CUSTOMER_ITEM_ID
280                                             ,INVENTORY_ITEM_ID);
281 	OLD_QTY := CUMKEYCALCULATION(CP_new_creation_date
282                                     ,CUM_START_DATE
283                                     ,CUSTOMER_ITEM_ID
284                                     ,SHIP_FROM_ORG_ID
285                                     ,INTRMD_SHIP_TO_ID
286                                     ,SHIP_TO_ADDRESS_ID
287                                     ,BILL_TO_ADDRESS_ID
288                                     ,CUST_PO_NUMBER
289                                     ,CUST_RECORD_YEAR
290                                     ,INVENTORY_ITEM_ID);
291         CP_OLD_SUP_CUM := OLD_QTY;
292         OLD_QTY := ITEM_DETAIL_QUANTITY1 - OLD_QTY;
293       END IF;
294       CP_OLD_CUM := ITEM_DETAIL_QUANTITY1;
295       IF CP_OLD_ACT < 0 THEN
296         OLD_QTY := OLD_QTY + CP_OLD_ACT;
297       END IF;
298       IF OLD_QTY < 0 THEN
299         CP_OLD_ACT := OLD_QTY;
300       ELSE
301         CP_OLD_ACT := 0;
302       END IF;
303     ELSIF OLD_CODE = 'ACTUAL' THEN
304       OLD_QTY := ITEM_DETAIL_QUANTITY1;
305     END IF;
306     RETURN (OLD_QTY);
307   END C_ACTUAL_OLD_QTYFORMULA;
308 
309   FUNCTION CF_1FORMULA(NEW_CODE IN VARCHAR2
310                       ,ITEM_DETAIL_QUANTITY IN NUMBER
311                       ,OLD_CODE IN VARCHAR2
312                       ,CUST_RECORD_YEAR IN VARCHAR2
313                       ,INTRMD_SHIP_TO_ID IN NUMBER
314                       ,CUSTOMER_ITEM_ID IN NUMBER
315                       ,SHIP_FROM_ORG_ID IN NUMBER
316                       ,BILL_TO_ADDRESS_ID IN NUMBER
317                       ,SHIP_TO_ADDRESS_ID IN NUMBER
318                       ,INVENTORY_ITEM_ID IN NUMBER
319                       ,CUST_PO_NUMBER IN VARCHAR2
320                       ,SHIP_TO_ORG_ID IN NUMBER) RETURN NUMBER IS
321     CUMQTY NUMBER;
322     CUM_START_DATE DATE;
323   BEGIN
324     IF NEW_CODE = 'CUMULATIVE' THEN
325       CUMQTY := ITEM_DETAIL_QUANTITY;
326     ELSIF NEW_CODE = 'ACTUAL' THEN
327       CUMQTY := ITEM_DETAIL_QUANTITY + CP_NEW_CUM;
328       CP_NEW_CUM := CUMQTY;
329     ELSIF OLD_CODE = 'ACTUAL' THEN
330       CUMQTY := CP_NEW_CUM;
331     ELSIF OLD_CODE = 'CUMULATIVE' THEN
332       IF CP_NEW_CUM = 0 AND NVL(ITEM_DETAIL_QUANTITY
333          ,0) = 0 THEN
334         IF CP_NEW_SUP_CUM = 0 THEN
335           /*CUM_START_DATE := GET_CUM_START_DATE(X_HEADER_ID
336                                               ,SHIP_FROM_ORG_ID
337                                               ,SHIP_TO_ORG_ID
338                                               ,CUSTOMER_ITEM_ID
339                                               ,INVENTORY_ITEM_ID);*/
340 	CUM_START_DATE := GET_CUM_START_DATE(P_NEW_HEADER_ID
341                                               ,SHIP_FROM_ORG_ID
342                                               ,SHIP_TO_ORG_ID
343                                               ,CUSTOMER_ITEM_ID
344                                               ,INVENTORY_ITEM_ID);
345 
346           CP_NEW_SUP_CUM := CUMKEYCALCULATION(CP_new_creation_date
347                                              ,CUM_START_DATE
348                                              ,CUSTOMER_ITEM_ID
349                                              ,SHIP_FROM_ORG_ID
350                                              ,INTRMD_SHIP_TO_ID
351                                              ,SHIP_TO_ADDRESS_ID
352                                              ,BILL_TO_ADDRESS_ID
353                                              ,CUST_PO_NUMBER
354                                              ,CUST_RECORD_YEAR
355                                              ,INVENTORY_ITEM_ID);
356         END IF;
357         CUMQTY := CP_NEW_SUP_CUM;
358       ELSE
359         CUMQTY := CP_NEW_CUM;
360       END IF;
361     ELSIF OLD_CODE = 'ACTUAL' THEN
362       CUMQTY := CP_NEW_CUM;
363     END IF;
364     RETURN (CUMQTY);
365   END CF_1FORMULA;
366 
367   FUNCTION CF_OLD_CUMFORMULA(OLD_CODE IN VARCHAR2
368                             ,ITEM_DETAIL_QUANTITY1 IN NUMBER
369                             ,NEW_CODE IN VARCHAR2
370                             ,CUST_RECORD_YEAR IN VARCHAR2
371                             ,INTRMD_SHIP_TO_ID IN NUMBER
372                             ,CUSTOMER_ITEM_ID IN NUMBER
373                             ,SHIP_FROM_ORG_ID IN NUMBER
374                             ,BILL_TO_ADDRESS_ID IN NUMBER
375                             ,SHIP_TO_ADDRESS_ID IN NUMBER
376                             ,INVENTORY_ITEM_ID IN NUMBER
377                             ,CUST_PO_NUMBER IN VARCHAR2
378                             ,SHIP_TO_ORG_ID IN NUMBER) RETURN NUMBER IS
379     OLDCUM NUMBER;
380     TEMP NUMBER;
381     CUM_START_DATE DATE;
382   BEGIN
383     IF OLD_CODE = 'CUMULATIVE' THEN
384       OLDCUM := ITEM_DETAIL_QUANTITY1;
385     ELSIF OLD_CODE = 'ACTUAL' THEN
386       OLDCUM := ITEM_DETAIL_QUANTITY1 + CP_OLD_CUM;
387       CP_OLD_CUM := OLDCUM;
388     ELSIF NEW_CODE = 'ACTUAL' THEN
389       OLDCUM := CP_OLD_CUM;
390     ELSIF NEW_CODE = 'CUMULATIVE' THEN
391       IF CP_OLD_CUM = 0 AND NVL(ITEM_DETAIL_QUANTITY1
392          ,0) = 0 THEN
393         IF CP_OLD_SUP_CUM = 0 THEN
394 /*          CUM_START_DATE := GET_CUM_START_DATE(X_HEADER_ID
395                                               ,SHIP_FROM_ORG_ID
396                                               ,SHIP_TO_ORG_ID
397                                               ,CUSTOMER_ITEM_ID
398                                               ,INVENTORY_ITEM_ID);*/
399 	CUM_START_DATE := GET_CUM_START_DATE(P_OLD_HEADER_ID
400                                               ,SHIP_FROM_ORG_ID
401                                               ,SHIP_TO_ORG_ID
402                                               ,CUSTOMER_ITEM_ID
403                                               ,INVENTORY_ITEM_ID);
404           CP_OLD_SUP_CUM := CUMKEYCALCULATION(CP_new_creation_date
405                                              ,CUM_START_DATE
406                                              ,CUSTOMER_ITEM_ID
407                                              ,SHIP_FROM_ORG_ID
408                                              ,INTRMD_SHIP_TO_ID
409                                              ,SHIP_TO_ADDRESS_ID
410                                              ,BILL_TO_ADDRESS_ID
411                                              ,CUST_PO_NUMBER
412                                              ,CUST_RECORD_YEAR
413                                              ,INVENTORY_ITEM_ID);
414         END IF;
415         OLDCUM := CP_OLD_SUP_CUM;
416       ELSE
417         OLDCUM := CP_OLD_CUM;
418       END IF;
419     ELSIF NEW_CODE = 'ACTUAL' THEN
420       OLDCUM := CP_OLD_CUM;
421     END IF;
422     RETURN (OLDCUM);
423   END CF_OLD_CUMFORMULA;
424 
425   FUNCTION INTRMD_SHIP_TO_EXTFORMULA(ITRMD_SHIP_TO_ID IN NUMBER) RETURN CHAR IS
426     V_INTRMD_SHIP_TO_EXT VARCHAR2(35);
427   BEGIN
428     SELECT
429       ACCT_SITE.ECE_TP_LOCATION_CODE
430     INTO V_INTRMD_SHIP_TO_EXT
431     FROM
432       HZ_CUST_ACCT_SITES ACCT_SITE
433     WHERE ACCT_SITE.CUST_ACCT_SITE_ID = ITRMD_SHIP_TO_ID;
434     RETURN (V_INTRMD_SHIP_TO_EXT);
435   EXCEPTION
436     WHEN OTHERS THEN
437       RETURN (NULL);
438   END INTRMD_SHIP_TO_EXTFORMULA;
439 
440   FUNCTION CUSTOMER_ITEM_NUMBERFORMULA(CUSTOMER_ITEM_ID1 IN NUMBER) RETURN CHAR IS
441     V_CUST_ITEM_NUMBER VARCHAR2(50);
442   BEGIN
443     SELECT
444       CUSTOMER_ITEM_NUMBER
445     INTO V_CUST_ITEM_NUMBER
446     FROM
447       MTL_CUSTOMER_ITEMS
448     WHERE CUSTOMER_ITEM_ID = CUSTOMER_ITEM_ID1;
449     RETURN (V_CUST_ITEM_NUMBER);
450   EXCEPTION
451     WHEN OTHERS THEN
452       RETURN (NULL);
453   END CUSTOMER_ITEM_NUMBERFORMULA;
454 
455   FUNCTION CUSTOMER_ITEM_DESCFORMULA(CUSTOMER_ITEM_ID1 IN NUMBER) RETURN CHAR IS
456     V_CUST_ITEM_DESC VARCHAR2(240);
457   BEGIN
458     SELECT
459       CUSTOMER_ITEM_DESC
460     INTO V_CUST_ITEM_DESC
461     FROM
462       MTL_CUSTOMER_ITEMS
463     WHERE CUSTOMER_ITEM_ID = CUSTOMER_ITEM_ID1;
464     RETURN (V_CUST_ITEM_DESC);
465   EXCEPTION
466     WHEN OTHERS THEN
467       RETURN (NULL);
468   END CUSTOMER_ITEM_DESCFORMULA;
469 
470   FUNCTION ITEM_NUMBER1FORMULA(INVENTORY_ITEM_ID1 IN NUMBER
471                               ,SHIP_FROM_ORG_ID1 IN NUMBER) RETURN CHAR IS
472     V_ITEM_NUMBER VARCHAR2(40);
473   BEGIN
474     SELECT
475       ITEM_NUMBER
476     INTO V_ITEM_NUMBER
477     FROM
478       MTL_ITEM_FLEXFIELDS
479     WHERE INVENTORY_ITEM_ID = INVENTORY_ITEM_ID1
480       AND ORGANIZATION_ID = SHIP_FROM_ORG_ID1;
481     RETURN (V_ITEM_NUMBER);
482   EXCEPTION
483     WHEN OTHERS THEN
484       RETURN (NULL);
485   END ITEM_NUMBER1FORMULA;
486 
487   FUNCTION SHIP_TO_NAME1FORMULA(SHIP_TO_ORG_ID1 IN NUMBER) RETURN CHAR IS
488     V_SHIP_TO_NAME VARCHAR2(40);
489   BEGIN
490     SELECT
491       CUST_SITE.LOCATION
492     INTO V_SHIP_TO_NAME
493     FROM
494       HZ_CUST_SITE_USES_ALL CUST_SITE,
495       HZ_CUST_ACCT_SITES ACCT_SITE
496     WHERE CUST_SITE.SITE_USE_CODE = 'SHIP_TO'
497       AND CUST_SITE.SITE_USE_ID = SHIP_TO_ORG_ID1
498       AND ACCT_SITE.STATUS = 'A'
499       AND ACCT_SITE.CUST_ACCT_SITE_ID = CUST_SITE.CUST_ACCT_SITE_ID
500       AND CUST_SITE.ORG_ID = ACCT_SITE.ORG_ID;
501     RETURN (V_SHIP_TO_NAME);
502   EXCEPTION
503     WHEN OTHERS THEN
504       RETURN (NULL);
505   END SHIP_TO_NAME1FORMULA;
506 
507   FUNCTION ORG_NAME1FORMULA(SHIP_FROM_ORG_ID1 IN NUMBER) RETURN CHAR IS
508     V_ORG_NAME ORG_ORGANIZATION_DEFINITIONS.ORGANIZATION_NAME%TYPE;
509   BEGIN
510     SELECT
511       ORGANIZATION_NAME
512     INTO V_ORG_NAME
513     FROM
514       ORG_ORGANIZATION_DEFINITIONS
515     WHERE ORGANIZATION_ID = SHIP_FROM_ORG_ID1;
516     RETURN (V_ORG_NAME);
517   EXCEPTION
518     WHEN OTHERS THEN
519       RETURN (NULL);
520   END ORG_NAME1FORMULA;
521 
522   FUNCTION SHIP_FROM_NAMEFORMULA(SHIP_FROM_ORG_ID1 IN NUMBER) RETURN CHAR IS
523     V_SHIP_FROM_NAME ORG_ORGANIZATION_DEFINITIONS.ORGANIZATION_NAME%TYPE;
524   BEGIN
525     SELECT
526       ORGANIZATION_NAME
527     INTO V_SHIP_FROM_NAME
528     FROM
529       ORG_ORGANIZATION_DEFINITIONS
530     WHERE ORGANIZATION_ID = SHIP_FROM_ORG_ID1;
531     RETURN (V_SHIP_FROM_NAME);
532   EXCEPTION
533     WHEN OTHERS THEN
534       RETURN (NULL);
535   END SHIP_FROM_NAMEFORMULA;
536 
537   FUNCTION AFTERPFORM RETURN BOOLEAN IS
538     STATEMENT0 VARCHAR2(200);
539     STATEMENT1 VARCHAR2(200);
540     STATEMENT2 VARCHAR2(200);
541     STATEMENT3 VARCHAR2(200);
542     STATEMENT4 VARCHAR2(200);
543     STATEMENT5 VARCHAR2(200);
544     STATEMENT6 VARCHAR2(200);
545     STATEMENT7 VARCHAR2(200);
546   BEGIN
547     IF (P_SHIP_TO IS NOT NULL) THEN
548       STATEMENT0 := ' and a.ship_to_org_id (+) = :P_ship_to and b.ship_to_org_id = :P_ship_to';
549       STATEMENT1 := ' and a.ship_to_org_id = :P_ship_to and b.ship_to_org_id (+) = :P_ship_to';
550     ELSE
551       STATEMENT0 := NULL;
552       STATEMENT1 := NULL;
553     END IF;
554     IF (P_SHIP_FROM IS NOT NULL) THEN
555       STATEMENT6 := ' and a.ship_from_org_id (+) = :P_ship_from and b.ship_from_org_id = :P_ship_from';
556       STATEMENT7 := ' and a.ship_from_org_id = :P_ship_from and b.ship_from_org_id (+) = :P_ship_from';
557     ELSE
558       STATEMENT6 := NULL;
559       STATEMENT7 := NULL;
560     END IF;
561     IF (P_CUST_ITEM_START IS NOT NULL AND P_CUST_ITEM_END IS NOT NULL) THEN
562       STATEMENT2 := ' and nvl(a.customer_item_ext, b.customer_item_ext) between :P_cust_item_start' || ' and :P_cust_item_end';
563       STATEMENT3 := ' and nvl(b.customer_item_ext, a.customer_item_ext) between :P_cust_item_start' || ' and :P_cust_item_end';
564     ELSE
565       STATEMENT2 := NULL;
566       STATEMENT3 := NULL;
567     END IF;
568     IF (P_CUST_PRODSEQ_START IS NOT NULL AND P_CUST_PRODSEQ_END IS NOT NULL) THEN
569       STATEMENT4 := ' and nvl(to_number(a.cust_production_seq_num), to_number(b.cust_production_seq_num) ) between to_number(:P_cust_prodseq_start)' || ' and to_number(:P_cust_prodseq_end)';
570       STATEMENT5 := ' and nvl(to_number(a.cust_production_seq_num), to_number(b.cust_production_seq_num) ) between to_number(:P_cust_prodseq_start)' || ' and to_number(:P_cust_prodseq_end))';
571     ELSE
572       STATEMENT4 := NULL;
573       STATEMENT5 := NULL;
574     END IF;
575 
576     P_WHERE1 := STATEMENT0 || STATEMENT6 || STATEMENT2;
577     P_WHERE2 := STATEMENT1 || STATEMENT7 || STATEMENT3;
578     P_WHERE3 := STATEMENT4;
579 if (P_WHERE1 is null) then
580 P_WHERE1 := ' ';
581 end if;
582 if (P_WHERE2 is null) then
583 P_WHERE2 := ' ';
584 end if;
585 if (P_WHERE3 is null) then
586 P_WHERE3 := ' ';
587 end if;
588     RETURN (TRUE);
589   END AFTERPFORM;
590 
591   FUNCTION DETAIL_TYPE_SFORMULA(ITEM_DETAIL_TYPE2 IN VARCHAR2) RETURN CHAR IS
592     V_DETAIL_TYPE VARCHAR2(80);
593   BEGIN
594     SELECT
595       MEANING
596     INTO V_DETAIL_TYPE
597     FROM
598       FND_LOOKUPS FND
599     WHERE FND.LOOKUP_CODE = ITEM_DETAIL_TYPE2
600       AND FND.LOOKUP_TYPE = 'RLM_DETAIL_TYPE_CODE';
601     RETURN (V_DETAIL_TYPE);
602   EXCEPTION
603     WHEN OTHERS THEN
604       RETURN (NULL);
605   END DETAIL_TYPE_SFORMULA;
606 
607   FUNCTION DETAIL_SUBTYPE_SFORMULA(ITEM_DETAIL_SUBTYPE1 IN VARCHAR2) RETURN CHAR IS
608     V_DETAIL_SUBTYPE VARCHAR2(80);
609   BEGIN
610     SELECT
611       MEANING
612     INTO V_DETAIL_SUBTYPE
613     FROM
614       FND_LOOKUPS FND
615     WHERE FND.LOOKUP_CODE = ITEM_DETAIL_SUBTYPE1
616       AND FND.LOOKUP_TYPE = 'RLM_DETAIL_SUBTYPE_CODE';
617     RETURN (V_DETAIL_SUBTYPE);
618   EXCEPTION
619     WHEN OTHERS THEN
620       RETURN (NULL);
621   END DETAIL_SUBTYPE_SFORMULA;
622 
623   FUNCTION CUMKEYCALCULATION(V_AS_OF_DATE_TIME IN DATE
624                             ,V_CUM_START_DATE IN DATE
625 			    ,CUSTOMER_ITEM_ID IN NUMBER
626                                     ,SHIP_FROM_ORG_ID IN NUMBER
627                                     ,INTRMD_SHIP_TO_ID IN NUMBER
628                                     ,SHIP_TO_ADDRESS_ID IN NUMBER
629                                     ,BILL_TO_ADDRESS_ID IN NUMBER
630                                     ,CUST_PO_NUMBER IN VARCHAR2
631                                     ,CUST_RECORD_YEAR IN VARCHAR2
632                                     ,INVENTORY_ITEM_ID IN NUMBER) RETURN NUMBER IS
633     P_CUM_KEY_ID RLM_CUST_ITEM_CUM_KEYS.CUM_KEY_ID%TYPE := NULL;
634     P_CUM_START_DATE RLM_CUST_ITEM_CUM_KEYS.CUM_START_DATE%TYPE;
635     P_SHIPPED_QUANTITY OE_ORDER_LINES.SHIPPED_QUANTITY%TYPE := NULL;
636     P_ACTUAL_SHIPMENT_DATE OE_ORDER_LINES.ACTUAL_SHIPMENT_DATE%TYPE := NULL;
637     P_CUM_KEY_CREATED_FLAG BOOLEAN := FALSE;
638     P_CUM_QTY RLM_CUST_ITEM_CUM_KEYS.CUM_QTY%TYPE := NULL;
639     P_AS_OF_DATE_CUM_QTY RLM_CUST_ITEM_CUM_KEYS.CUM_QTY%TYPE := NULL;
640     P_CUM_QTY_TO_BE_ACCUMULATED RLM_CUST_ITEM_CUM_KEYS.CUM_QTY_TO_BE_ACCUMULATED%TYPE := NULL;
641     P_CUM_QTY_AFTER_CUTOFF RLM_CUST_ITEM_CUM_KEYS.CUM_QTY_AFTER_CUTOFF%TYPE := NULL;
642     P_LAST_CUM_QTY_UPDATE_DATE RLM_CUST_ITEM_CUM_KEYS.LAST_CUM_QTY_UPDATE_DATE%TYPE := NULL;
643     P_CUST_UOM_CODE RLM_CUST_ITEM_CUM_KEYS.CUST_UOM_CODE%TYPE := NULL;
644     P_USE_SHIP_INCL_RULE_FLAG VARCHAR2(1) := 'N';
645     P_SHIPMENT_RULE_CODE RLM_CUST_SHIPTO_TERMS.CUM_SHIPMENT_RULE_CODE%TYPE := NULL;
646     P_YESTERDAY_TIME_CUTOFF RLM_CUST_ITEM_CUM_KEYS.LAST_UPDATE_DATE%TYPE := NULL;
647     P_LAST_UPDATE_DATE RLM_CUST_ITEM_CUM_KEYS.LAST_UPDATE_DATE%TYPE := NULL;
648     P_AS_OF_DATE_TIME OE_ORDER_LINES.ACTUAL_SHIPMENT_DATE%TYPE;
649     P_MESG_DATA VARCHAR2(32767) := NULL;
650     P_RECORD_RETURN_STATUS BOOLEAN := FALSE;
651     V_TMP_CUST_RECORD_YEAR VARCHAR2(240);
652     V_TMP_RETURN_MESSAGE VARCHAR2(4000);
653     V_TMP_RETURN_STATUS BOOLEAN;
654   BEGIN
655     P_AS_OF_DATE_TIME := V_AS_OF_DATE_TIME;
656     P_CUM_START_DATE := V_CUM_START_DATE;
657     RLM_CUM_SV.CALCULATECUMKEYCLIENT(X_CUSTOMER_ID => CP_CUSTOMER_ID
658                                     ,X_CUSTOMER_ITEM_ID => CUSTOMER_ITEM_ID
659                                     ,X_SHIP_FROM_ORG_ID => SHIP_FROM_ORG_ID
660                                     ,X_INTRMD_SHIP_TO_ADDRESS_ID => INTRMD_SHIP_TO_ID
661                                     ,X_SHIP_TO_ADDRESS_ID => SHIP_TO_ADDRESS_ID
662                                     ,X_BILL_TO_ADDRESS_ID => BILL_TO_ADDRESS_ID
663                                     ,X_PURCHASE_ORDER_NUMBER => CUST_PO_NUMBER
664                                     ,X_CUST_RECORD_YEAR => CUST_RECORD_YEAR
665                                     ,X_CREATE_CUM_KEY_FLAG => 'N'
666                                     ,X_MSG_DATA => P_MESG_DATA
667                                     ,X_RECORD_RETURN_STATUS => P_RECORD_RETURN_STATUS
668                                     ,X_CUM_KEY_ID => P_CUM_KEY_ID
669                                     ,X_CUM_START_DATE => P_CUM_START_DATE
670                                     ,X_SHIPPED_QUANTITY => P_SHIPPED_QUANTITY
671                                     ,X_ACTUAL_SHIPMENT_DATE => P_ACTUAL_SHIPMENT_DATE
672                                     ,X_CUM_KEY_CREATED_FLAG => P_CUM_KEY_CREATED_FLAG
673                                     ,X_CUM_QTY => P_CUM_QTY
674                                     ,X_AS_OF_DATE_CUM_QTY => P_AS_OF_DATE_CUM_QTY
675                                     ,X_CUM_QTY_TO_BE_ACCUMULATED => P_CUM_QTY_TO_BE_ACCUMULATED
676                                     ,X_CUM_QTY_AFTER_CUTOFF => P_CUM_QTY_AFTER_CUTOFF
677                                     ,X_LAST_CUM_QTY_UPDATE_DATE => P_LAST_CUM_QTY_UPDATE_DATE
678                                     ,X_CUST_UOM_CODE => P_CUST_UOM_CODE
679                                     ,X_USE_SHIP_INCL_RULE_FLAG => P_USE_SHIP_INCL_RULE_FLAG
680                                     ,X_SHIPMENT_RULE_CODE => P_SHIPMENT_RULE_CODE
681                                     ,X_YESTERDAY_TIME_CUTOFF => P_YESTERDAY_TIME_CUTOFF
682                                     ,X_LAST_UPDATE_DATE => P_LAST_UPDATE_DATE
683                                     ,X_AS_OF_DATE_TIME => P_AS_OF_DATE_TIME);
684     IF P_RECORD_RETURN_STATUS <> FALSE THEN
685       RLM_CUM_SV.CALCULATESUPPLIERCUMCLIENT(X_CUSTOMER_ID => CP_CUSTOMER_ID
686                                            ,X_CUSTOMER_ITEM_ID => CUSTOMER_ITEM_ID
687                                            ,X_INVENTORY_ITEM_ID => INVENTORY_ITEM_ID
688                                            ,X_SHIP_FROM_ORG_ID => SHIP_FROM_ORG_ID
689                                            ,X_INTRMD_SHIP_TO_ADDRESS_ID => INTRMD_SHIP_TO_ID
690                                            ,X_SHIP_TO_ADDRESS_ID => SHIP_TO_ADDRESS_ID
691                                            ,X_BILL_TO_ADDRESS_ID => BILL_TO_ADDRESS_ID
692                                            ,X_PURCHASE_ORDER_NUMBER => CUST_PO_NUMBER
693                                            ,X_CUST_RECORD_YEAR => CUST_RECORD_YEAR
694                                            ,X_CREATE_CUM_KEY_FLAG => 'N'
695                                            ,X_MSG_DATA => V_TMP_RETURN_MESSAGE
696                                            ,X_RECORD_RETURN_STATUS => V_TMP_RETURN_STATUS
697                                            ,X_CUM_KEY_ID => P_CUM_KEY_ID
698                                            ,X_CUM_START_DATE => P_CUM_START_DATE
699                                            ,X_SHIPPED_QUANTITY => P_SHIPPED_QUANTITY
700                                            ,X_ACTUAL_SHIPMENT_DATE => P_ACTUAL_SHIPMENT_DATE
701                                            ,X_CUM_KEY_CREATED_FLAG => P_CUM_KEY_CREATED_FLAG
702                                            ,X_CUM_QTY => P_CUM_QTY
703                                            ,X_AS_OF_DATE_CUM_QTY => P_AS_OF_DATE_CUM_QTY
704                                            ,X_CUM_QTY_TO_BE_ACCUMULATED => P_CUM_QTY_TO_BE_ACCUMULATED
705                                            ,X_CUM_QTY_AFTER_CUTOFF => P_CUM_QTY_AFTER_CUTOFF
706                                            ,X_LAST_CUM_QTY_UPDATE_DATE => P_LAST_CUM_QTY_UPDATE_DATE
707                                            ,X_CUST_UOM_CODE => P_CUST_UOM_CODE
708                                            ,X_USE_SHIP_INCL_RULE_FLAG => P_USE_SHIP_INCL_RULE_FLAG
709                                            ,X_SHIPMENT_RULE_CODE => P_SHIPMENT_RULE_CODE
710                                            ,X_YESTERDAY_TIME_CUTOFF => P_YESTERDAY_TIME_CUTOFF
711                                            ,X_LAST_UPDATE_DATE => P_LAST_UPDATE_DATE
712                                            ,X_AS_OF_DATE_TIME => P_AS_OF_DATE_TIME);
713       IF V_TMP_RETURN_STATUS <> FALSE THEN
714         RETURN NVL(P_AS_OF_DATE_CUM_QTY
715                   ,0);
716       ELSE
717         /*SRW.MESSAGE(123
718                    ,'Error : ' || V_TMP_RETURN_MESSAGE)*/NULL;
719         /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
720       END IF;
721     ELSE
722       /*SRW.MESSAGE(124
723                  ,'Error : ' || P_MESG_DATA)*/NULL;
724       /*RAISE SRW.PROGRAM_ABORT*/RAISE_APPLICATION_ERROR(-20101,null);
725     END IF;
726   END CUMKEYCALCULATION;
727 
728   FUNCTION CF_PLACEHOLDERFORMULA(NEW_CREATION_DATE IN DATE
729                                 ,OLD_CREATION_DATE IN DATE
730                                 ,CUSTOMER_ID IN NUMBER) RETURN NUMBER IS
731   BEGIN
732     CP_NEW_CREATION_DATE := NEW_CREATION_DATE;
733     CP_OLD_CREATION_DATE := OLD_CREATION_DATE;
734     CP_CUSTOMER_ID := CUSTOMER_ID;
735     RETURN (0);
736   END CF_PLACEHOLDERFORMULA;
737 
738   FUNCTION AFTERREPORT RETURN BOOLEAN IS
739   BEGIN
740     BEGIN
741       /*SRW.USER_EXIT('FND SRWEXIT')*/NULL;
742     EXCEPTION
743       WHEN /*SRW.USER_EXIT_FAILURE*/OTHERS THEN
744         /*SRW.MESSAGE(1
745                    ,'Failed in SRWEXIT')*/NULL;
746         RAISE;
747     END;
748     RETURN (TRUE);
749   END AFTERREPORT;
750 
751   FUNCTION GET_CUM_START_DATE(X_HEADER_ID IN NUMBER,
752   SHIP_FROM_ORG_ID1 IN NUMBER,
753   SHIP_TO_ORG_ID1 IN NUMBER,
754   CUSTOMER_ITEM_ID1 IN NUMBER,
755   INVENTORY_ITEM_ID1 IN NUMBER) RETURN DATE IS
756     V_CUM_START_DATE DATE;
757     V_K_DNULL DATE;
758   BEGIN
759     V_K_DNULL := RLM_MANAGE_DEMAND_SV.GETVARK_DNULL;
760     SELECT
761       START_DATE_TIME
762     INTO V_CUM_START_DATE
763     FROM
764     RLM_SCHEDULE_LINES_ALL
765     WHERE ORG_ID = CP_ORG_ID
766       AND HEADER_ID = X_HEADER_ID
767       AND SHIP_FROM_ORG_ID = SHIP_FROM_ORG_ID1
768       AND SHIP_TO_ORG_ID = SHIP_TO_ORG_ID1
769       AND CUSTOMER_ITEM_ID = CUSTOMER_ITEM_ID1
770       AND INVENTORY_ITEM_ID = INVENTORY_ITEM_ID1
771       AND ITEM_DETAIL_TYPE = '4'
772       AND ITEM_DETAIL_SUBTYPE = 'CUM';
773     RETURN (V_CUM_START_DATE);
774   EXCEPTION
775     WHEN NO_DATA_FOUND THEN
776       RETURN (V_K_DNULL);
777     WHEN OTHERS THEN
778       RETURN (NULL);
779   END GET_CUM_START_DATE;
780 
781   FUNCTION CP_PREV_VALUE_P RETURN NUMBER IS
782   BEGIN
783     RETURN CP_PREV_VALUE;
784   END CP_PREV_VALUE_P;
785 
786   FUNCTION CP_NEW_START_P RETURN DATE IS
787   BEGIN
788     RETURN CP_NEW_START;
789   END CP_NEW_START_P;
790 
791   FUNCTION CP_NEW_END_P RETURN DATE IS
792   BEGIN
793     RETURN CP_NEW_END;
794   END CP_NEW_END_P;
795 
796   FUNCTION CP_OLD_START_P RETURN DATE IS
797   BEGIN
798     RETURN CP_OLD_START;
799   END CP_OLD_START_P;
800 
801   FUNCTION CP_OLD_END_P RETURN DATE IS
802   BEGIN
803     RETURN CP_OLD_END;
804   END CP_OLD_END_P;
805 
806   FUNCTION CP_NEW_CUM_P RETURN NUMBER IS
807   BEGIN
808     RETURN CP_NEW_CUM;
809   END CP_NEW_CUM_P;
810 
811   FUNCTION CP_OLD_CUM_P RETURN NUMBER IS
812   BEGIN
813     RETURN CP_OLD_CUM;
814   END CP_OLD_CUM_P;
815 
816   FUNCTION CP_NEW_CREATION_DATE_P RETURN DATE IS
817   BEGIN
818     RETURN CP_NEW_CREATION_DATE;
819   END CP_NEW_CREATION_DATE_P;
820 
821   FUNCTION CP_OLD_CREATION_DATE_P RETURN DATE IS
822   BEGIN
823     RETURN CP_OLD_CREATION_DATE;
824   END CP_OLD_CREATION_DATE_P;
825 
826   FUNCTION CP_CUSTOMER_ID_P RETURN NUMBER IS
827   BEGIN
828     RETURN CP_CUSTOMER_ID;
829   END CP_CUSTOMER_ID_P;
830 
831   FUNCTION CP_OLD_ACT_P RETURN NUMBER IS
832   BEGIN
833     RETURN CP_OLD_ACT;
834   END CP_OLD_ACT_P;
835 
836   FUNCTION CP_NEW_ACT_P RETURN NUMBER IS
837   BEGIN
838     RETURN CP_NEW_ACT;
839   END CP_NEW_ACT_P;
840 
841   FUNCTION CP_NEW_SUP_CUM_P RETURN NUMBER IS
842   BEGIN
843     RETURN CP_NEW_SUP_CUM;
844   END CP_NEW_SUP_CUM_P;
845 
846   FUNCTION CP_OLD_SUP_CUM_P RETURN NUMBER IS
847   BEGIN
848     RETURN CP_OLD_SUP_CUM;
849   END CP_OLD_SUP_CUM_P;
850 
851   FUNCTION CP_P_SHIP_FROM_P RETURN VARCHAR2 IS
852   BEGIN
853     RETURN CP_P_SHIP_FROM;
854   END CP_P_SHIP_FROM_P;
855 
856   FUNCTION CP_P_SHIP_TO_P RETURN VARCHAR2 IS
857   BEGIN
858     RETURN CP_P_SHIP_TO;
859   END CP_P_SHIP_TO_P;
860 
861   FUNCTION CP_P_CUSTOMER_NAME_P RETURN VARCHAR2 IS
862   BEGIN
863     RETURN CP_P_CUSTOMER_NAME;
864   END CP_P_CUSTOMER_NAME_P;
865 
866   FUNCTION CP_P_SCHEDULE_TYPE_P RETURN VARCHAR2 IS
867   BEGIN
868     RETURN CP_P_SCHEDULE_TYPE;
869   END CP_P_SCHEDULE_TYPE_P;
870 
871   FUNCTION CP_P_NEW_SCH_REF_NUM_P RETURN VARCHAR2 IS
872   BEGIN
873     RETURN CP_P_NEW_SCH_REF_NUM;
874   END CP_P_NEW_SCH_REF_NUM_P;
875 
876   FUNCTION CP_P_OLD_SCH_REF_NUM_P RETURN VARCHAR2 IS
877   BEGIN
878     RETURN CP_P_OLD_SCH_REF_NUM;
879   END CP_P_OLD_SCH_REF_NUM_P;
880 
881   FUNCTION CP_P_AUTH_QUANT_FLAG_P RETURN VARCHAR2 IS
882   BEGIN
883     RETURN CP_P_AUTH_QUANT_FLAG;
884   END CP_P_AUTH_QUANT_FLAG_P;
885 
886   FUNCTION CP_P_OTHER_DETAIL_FLAG_P RETURN VARCHAR2 IS
887   BEGIN
888     RETURN CP_P_OTHER_DETAIL_FLAG;
889   END CP_P_OTHER_DETAIL_FLAG_P;
890 
891   FUNCTION CP_P_NOCHANGE_LINES_FLAG_P RETURN VARCHAR2 IS
892   BEGIN
893     RETURN CP_P_NOCHANGE_LINES_FLAG;
894   END CP_P_NOCHANGE_LINES_FLAG_P;
895 
896   FUNCTION CP_DEFAULT_OU_P RETURN VARCHAR2 IS
897   BEGIN
898     RETURN CP_DEFAULT_OU;
899   END CP_DEFAULT_OU_P;
900 
901   FUNCTION CP_ORG_ID_P RETURN NUMBER IS
902   BEGIN
903     RETURN CP_ORG_ID;
904   END CP_ORG_ID_P;
905 
906 END RLM_RLMNETCH_XMLP_PKG;