DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSTPCWPB

Source


1 PACKAGE BODY CSTPCWPB AS
2 /* $Header: CSTPWPBB.pls 120.1.12000000.3 2007/05/31 14:20:45 sbhati ship $ */
3 
4 FUNCTION WIPCBR (
5     i_org_id                      NUMBER,
6     i_user_id                     NUMBER,
7     i_login_id                    NUMBER,
8     i_from_period_id              NUMBER,
9     err_buf                OUT NOCOPY    VARCHAR2)
10 RETURN INTEGER
11 IS
12     where_num        NUMBER;
13 
14    cursor c_period_lists
15           (l_organization_id number,
16 	   l_acct_per_id     number)
17 	  is
18   select acct_period_id
19     from org_acct_periods
20    where organization_id   = l_organization_id
21      and acct_period_id   >= l_acct_per_id;
22 
23 BEGIN
24 
25     err_buf   := ' ';
26 
27     /*----------------------------------------------------------+
28     | Process discrete jobs                                     |
29     +-----------------------------------------------------------*/
30 
31     FOR acct_period_rec IN c_period_lists(i_org_id,i_from_period_id) LOOP
32 
33     where_num := 100;
34 
35     INSERT INTO WIP_PERIOD_BALANCES
36         (ACCT_PERIOD_ID, WIP_ENTITY_ID,
37         REPETITIVE_SCHEDULE_ID, LAST_UPDATE_DATE,
38         LAST_UPDATED_BY, CREATION_DATE,
39         CREATED_BY, LAST_UPDATE_LOGIN,
40         ORGANIZATION_ID, CLASS_TYPE,
41         TL_RESOURCE_IN, TL_OVERHEAD_IN,
42         TL_OUTSIDE_PROCESSING_IN, PL_MATERIAL_IN,
43         PL_MATERIAL_OVERHEAD_IN, PL_RESOURCE_IN,
44         PL_OVERHEAD_IN, PL_OUTSIDE_PROCESSING_IN,
45         TL_MATERIAL_OUT, TL_MATERIAL_OVERHEAD_OUT, TL_RESOURCE_OUT,
46         TL_OVERHEAD_OUT, TL_OUTSIDE_PROCESSING_OUT,
47         PL_MATERIAL_OUT, PL_MATERIAL_OVERHEAD_OUT,
48         PL_RESOURCE_OUT, PL_OVERHEAD_OUT,
49         PL_OUTSIDE_PROCESSING_OUT,
50         PL_MATERIAL_VAR, PL_MATERIAL_OVERHEAD_VAR,
51         PL_RESOURCE_VAR, PL_OUTSIDE_PROCESSING_VAR,
52         PL_OVERHEAD_VAR, TL_MATERIAL_VAR, TL_MATERIAL_OVERHEAD_VAR,
53         TL_RESOURCE_VAR, TL_OUTSIDE_PROCESSING_VAR,
54         TL_OVERHEAD_VAR)
55     SELECT
56         acct_period_rec.acct_period_id,
57 	WDJ.WIP_ENTITY_ID,
58         NULL, SYSDATE,
59         i_user_id, SYSDATE,
60         i_user_id, i_login_id,
61         i_org_id, WAC.CLASS_TYPE,
62         0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
63     FROM WIP_DISCRETE_JOBS WDJ,
64          WIP_ACCOUNTING_CLASSES WAC
65     WHERE WDJ.STATUS_TYPE IN (3, 4, 5, 6, 7, 14, 15)
66     AND   WDJ.DATE_RELEASED is not NULL
67     AND   WDJ.ORGANIZATION_ID = i_org_id
68     AND   WAC.CLASS_CODE = WDJ.CLASS_CODE
69     AND   WAC.ORGANIZATION_ID = i_org_id;
70 
71 
72     /*----------------------------------------------------------+
73     | Process repetitive schedules                              |
74     +-----------------------------------------------------------*/
75 
76     where_num := 200;
77     INSERT INTO WIP_PERIOD_BALANCES
78         (ACCT_PERIOD_ID, WIP_ENTITY_ID,
79         REPETITIVE_SCHEDULE_ID, LAST_UPDATE_DATE,
80         LAST_UPDATED_BY, CREATION_DATE,
81         CREATED_BY, LAST_UPDATE_LOGIN,
82         ORGANIZATION_ID, CLASS_TYPE,
83         TL_RESOURCE_IN, TL_OVERHEAD_IN,
84         TL_OUTSIDE_PROCESSING_IN, PL_MATERIAL_IN,
85         PL_MATERIAL_OVERHEAD_IN, PL_RESOURCE_IN,
86         PL_OVERHEAD_IN, PL_OUTSIDE_PROCESSING_IN,
87         TL_MATERIAL_OUT, TL_MATERIAL_OVERHEAD_OUT, TL_RESOURCE_OUT,
88         TL_OVERHEAD_OUT, TL_OUTSIDE_PROCESSING_OUT,
89         PL_MATERIAL_OUT, PL_MATERIAL_OVERHEAD_OUT,
90         PL_RESOURCE_OUT, PL_OVERHEAD_OUT,
91         PL_OUTSIDE_PROCESSING_OUT,
92         PL_MATERIAL_VAR, PL_MATERIAL_OVERHEAD_VAR,
93         PL_RESOURCE_VAR, PL_OUTSIDE_PROCESSING_VAR,
94         PL_OVERHEAD_VAR, TL_MATERIAL_VAR, TL_MATERIAL_OVERHEAD_VAR,
95         TL_RESOURCE_VAR, TL_OUTSIDE_PROCESSING_VAR,
96         TL_OVERHEAD_VAR)
97     SELECT
98         acct_period_rec.acct_period_id,
99 	WRS.WIP_ENTITY_ID,
100         WRS.REPETITIVE_SCHEDULE_ID, SYSDATE,
101         i_user_id, SYSDATE,
102         i_user_id, i_login_id,
103         i_org_id, 2,
104         0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
105     FROM WIP_REPETITIVE_SCHEDULES WRS
106     WHERE WRS.STATUS_TYPE IN (3, 4, 6)
107     AND   WRS.ORGANIZATION_ID = i_org_id;
108 
109     RETURN(0); /* No error */
110 
111     END LOOP;
112 
113 EXCEPTION
114     WHEN OTHERS THEN
115         ROLLBACK;
116         err_buf := 'CSTPCWPB:' || to_char(where_num) || substr(SQLERRM,1,150);
117         RETURN(SQLCODE);
118 
119 END WIPCBR;
120 
121 END CSTPCWPB; /* end package body */