DBA Data[Home] [Help]

PACKAGE BODY: APPS.EDW_HR_SERVICE_M_C

Source


1 Package Body EDW_HR_SERVICE_M_C AS
2 /* $Header: hrieplwb.pkb 120.1 2005/06/07 05:54:10 anmajumd noship $ */
3  G_PUSH_DATE_RANGE1         Date:=Null;
4  G_PUSH_DATE_RANGE2         Date:=Null;
5  g_row_count         Number:=0;
6  g_exception_msg     varchar2(2000):=Null;
7 
8 
9  Procedure Push(Errbuf       in out NOCOPY Varchar2,
10                 Retcode      in out NOCOPY Varchar2,
11                 p_from_date  IN   VARCHAR2,
12                 p_to_date    IN   VARCHAR2) IS
13  l_dimension_name   Varchar2(30) :='EDW_HR_SERVICE_M'  ;
14  l_temp_date                Date:=Null;
15  l_rows_inserted            Number:=0;
16  l_duration                 Number:=0;
17  l_exception_msg            Varchar2(2000):=Null;
18 
19    -- -------------------------------------------
20    -- Put any additional developer variables here
21    -- -------------------------------------------
22 Begin
23   Errbuf :=NULL;
24    Retcode:=0;
25   IF (Not EDW_COLLECTION_UTIL.setup(l_dimension_name)) THEN
26   errbuf := fnd_message.get;
27     Return;
28   END IF;
29 
30   IF (p_from_date IS NULL) THEN
31 		EDW_HR_SERVICE_M_C.g_push_date_range1 :=  EDW_COLLECTION_UTIL.G_local_last_push_start_date -
32 		EDW_COLLECTION_UTIL.g_offset;
33   ELSE
34 	EDW_HR_SERVICE_M_C.g_push_date_range1 := to_date(p_from_date, 'YYYY/MM/DD HH24:MI:SS');
35   END IF;
36 
37   IF (p_to_date IS NULL) THEN
38 		EDW_HR_SERVICE_M_C.g_push_date_range2 := EDW_COLLECTION_UTIL.G_local_curr_push_start_date;
39   ELSE
40 	EDW_HR_SERVICE_M_C.g_push_date_range2 := to_date(p_to_date, 'YYYY/MM/DD HH24:MI:SS');
41   END IF;
42 
43 
44    edw_log.put_line( 'The collection range is from '||
45         to_char(EDW_HR_SERVICE_M_C.g_push_date_range1,'MM/DD/YYYY HH24:MI:SS')||' to '||
46         to_char(EDW_HR_SERVICE_M_C.g_push_date_range2,'MM/DD/YYYY HH24:MI:SS'));
47    edw_log.put_line(' ');
48 
49 -- -----------------------------------------------------------------------------
50 -- Start of Collection , Developer Customizable Section
51 -- -----------------------------------------------------------------------------
52 
53    edw_log.put_line(' ');
54    edw_log.put_line('Pushing data');
55 
56    l_temp_date := sysdate;
57 
58 
59         Push_EDW_HR_SRVC_SRV_BAND_LSTG(EDW_HR_SERVICE_M_C.g_push_date_range1, EDW_HR_SERVICE_M_C.g_push_date_range2);
60 
61 
62    l_duration := sysdate - l_temp_date;
63 
64    edw_log.put_line('Total rows inserted : '||g_row_count);
65    edw_log.put_line('Process Time: '||edw_log.duration(l_duration));
66    edw_log.put_line(' ');
67 -- ---------------------------------------------------------------------------
68 -- END OF Collection , Developer Customizable Section
69 -- ---------------------------------------------------------------------------
70    EDW_COLLECTION_UTIL.wrapup(TRUE, g_row_count, null, g_push_date_range1, g_push_date_range2 );
71 commit;
72 
73  Exception When others then
74       Errbuf:=sqlerrm;
75       Retcode:=sqlcode;
76    l_exception_msg  := Retcode || ':' || Errbuf;
77    EDW_HR_SERVICE_M_C.g_exception_msg  := l_exception_msg;
78    rollback;
79    EDW_COLLECTION_UTIL.wrapup(FALSE, 0, EDW_HR_SERVICE_M_C.g_exception_msg, g_push_date_range1, g_push_date_range2);
80 
81 commit;
82 End;
83 
84 
85 Procedure Push_EDW_HR_SRVC_SRV_BAND_LSTG(p_from_date IN date, p_to_date IN DATE) IS
86     l_date1 DATE;
87     l_date2 DATE;
88     l_rows_inserted NUMBER :=0;
89 BEGIN
90    edw_log.put_line('Starting Push_EDW_HR_SRVC_SRV_BAND_LSTG');
91 l_date1 := p_from_date;
92 l_date2 := p_to_date;
93    Insert Into
94     EDW_HR_SRVC_SRV_BAND_LSTG@EDW_APPS_TO_WH(
95     SERVICE_BAND_PK,
96     ALL_FK,
97     NAME,
98     SERVICE_BAND_DP,
99     SERVICE_LENGTH_MAX_YEAR,
100     SERVICE_LENGTH_MAX_MONTH,
101     SERVICE_LENGTH_MAX_WEEK,
102     SERVICE_LENGTH_MAX_DAY,
103     SERVICE_LENGTH_MIN_YEAR,
104     SERVICE_LENGTH_MIN_MONTH,
105     SERVICE_LENGTH_MIN_WEEK,
106     SERVICE_LENGTH_MIN_DAY,
107     LAST_UPDATE_DATE,
108     CREATION_DATE,
109     USER_ATTRIBUTE1,
110     USER_ATTRIBUTE2,
111     USER_ATTRIBUTE3,
112     USER_ATTRIBUTE4,
113     USER_ATTRIBUTE5,
114     INSTANCE,
115     OPERATION_CODE,
116     COLLECTION_STATUS)
117    select SERVICE_BAND_PK,
118     NVL(ALL_FK, 'NA_EDW'),
119 NAME,
120 SERVICE_BAND_DP,
121 SERVICE_LENGTH_MAX_YEAR,
122 SERVICE_LENGTH_MAX_MONTH,
123 SERVICE_LENGTH_MAX_WEEK,
124 SERVICE_LENGTH_MAX_DAY,
125 SERVICE_LENGTH_MIN_YEAR,
126 SERVICE_LENGTH_MIN_MONTH,
127 SERVICE_LENGTH_MIN_WEEK,
128 SERVICE_LENGTH_MIN_DAY,
129 LAST_UPDATE_DATE,
130 CREATION_DATE,
131 USER_ATTRIBUTE1,
132 USER_ATTRIBUTE2,
133 USER_ATTRIBUTE3,
134 USER_ATTRIBUTE4,
135 USER_ATTRIBUTE5,
136 INSTANCE,
137     NULL, -- OPERATION_CODE
138     'READY'
139    from EDW_HR_SRVC_SRV_BAND_LCV@APPS_TO_APPS
140    where last_update_date between l_date1 and l_date2;
141 
142 
143    l_rows_inserted := sql%rowcount;
144    EDW_HR_SERVICE_M_C.g_row_count := EDW_HR_SERVICE_M_C.g_row_count + l_rows_inserted ;
145    edw_log.put_line('Inserted '||to_char(nvl(sql%rowcount,0))||
146 ' rows into the EDW_HR_SRVC_SRV_BAND_LSTG staging table');
147    edw_log.put_line('Commiting records for EDW_HR_SRVC_SRV_BAND_LSTG');
148 commit;
149 
150    edw_log.put_line('Completed Push_EDW_HR_SRVC_SRV_BAND_LSTG');
151  Exception When others then
152    raise;
153 commit;
154 END;
155 End EDW_HR_SERVICE_M_C;