DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_ORT_PKG

Source


1 package body HR_ORT_PKG as
2 /* $Header: hrortlct.pkb 115.3 2002/12/10 13:27:40 hjonnala noship $ */
3 procedure OWNER_TO_WHO (
4   X_OWNER in VARCHAR2,
5   X_CREATION_DATE out nocopy DATE,
6   X_CREATED_BY out nocopy NUMBER,
7   X_LAST_UPDATE_DATE out nocopy DATE,
8   X_LAST_UPDATED_BY out nocopy NUMBER,
9   X_LAST_UPDATE_LOGIN out nocopy NUMBER
10 ) is
11 begin
12   if X_OWNER = 'SEED' then
13     X_CREATED_BY := 1;
14     X_LAST_UPDATED_BY := 1;
15   else
16     X_CREATED_BY := 0;
17     X_LAST_UPDATED_BY := 0;
18   end if;
19   X_CREATION_DATE := sysdate;
20   X_LAST_UPDATE_DATE := sysdate;
21   X_LAST_UPDATE_LOGIN := 0;
22 end OWNER_TO_WHO;
23 procedure INSERT_ROW (
24   X_ORGANIZATION_ID in NUMBER,
25   X_NAME in VARCHAR2,
26   X_CREATION_DATE in DATE,
27   X_CREATED_BY in NUMBER,
28   X_LAST_UPDATE_DATE in DATE,
29   X_LAST_UPDATED_BY in NUMBER,
30   X_LAST_UPDATE_LOGIN in NUMBER
31 ) is
32 begin
33 
34   insert into HR_ALL_ORGANIZATION_UNITS_TL (
35     ORGANIZATION_ID,
36     NAME,
37     LAST_UPDATE_DATE,
38     LAST_UPDATED_BY,
39     LAST_UPDATE_LOGIN,
40     CREATED_BY,
41     CREATION_DATE,
42     LANGUAGE,
43     SOURCE_LANG
44   ) values (
45     X_ORGANIZATION_ID,
46     X_NAME,
47     X_LAST_UPDATE_DATE,
48     X_LAST_UPDATED_BY,
49     X_LAST_UPDATE_LOGIN,
50     X_CREATED_BY,
51     X_CREATION_DATE,
52     userenv('LANG'),
53     userenv('LANG'));
54 
55 end INSERT_ROW;
56 
57 procedure UPDATE_ROW (
58   X_ORGANIZATION_ID in NUMBER,
59   X_NAME in VARCHAR2,
60   X_LAST_UPDATE_DATE in DATE,
61   X_LAST_UPDATED_BY in NUMBER,
62   X_LAST_UPDATE_LOGIN in NUMBER
63 ) is
64 begin
65 
66   update HR_ALL_ORGANIZATION_UNITS_TL set
67     NAME = X_NAME,
68     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
69     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
70     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
71     SOURCE_LANG = userenv('LANG')
72   where ORGANIZATION_ID = X_ORGANIZATION_ID
73   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
74 
75   if (sql%notfound) then
76     raise no_data_found;
77   end if;
78 end UPDATE_ROW;
79 
80 procedure DELETE_ROW (
81   X_ORGANIZATION_ID in NUMBER
82 ) is
83 begin
84   delete from HR_ALL_ORGANIZATION_UNITS_TL
85   where ORGANIZATION_ID = X_ORGANIZATION_ID;
86 
87   if (sql%notfound) then
88     raise no_data_found;
89   end if;
90 
91 end DELETE_ROW;
92 
93 procedure ADD_LANGUAGE
94 is
95 begin
96   delete from HR_ALL_ORGANIZATION_UNITS_TL T
97   where not exists
98     (select NULL
99     from HR_ALL_ORGANIZATION_UNITS B
100     where B.ORGANIZATION_ID = T.ORGANIZATION_ID
101     );
102 
103   update HR_ALL_ORGANIZATION_UNITS_TL T set (
104       NAME
105     ) = (select
106       B.NAME
107     from HR_ALL_ORGANIZATION_UNITS_TL B
108     where B.ORGANIZATION_ID = T.ORGANIZATION_ID
109     and B.LANGUAGE = T.SOURCE_LANG)
110   where (
111       T.ORGANIZATION_ID,
112       T.LANGUAGE
113   ) in (select
114       SUBT.ORGANIZATION_ID,
115       SUBT.LANGUAGE
116     from HR_ALL_ORGANIZATION_UNITS_TL SUBB, HR_ALL_ORGANIZATION_UNITS_TL SUBT
117     where SUBB.ORGANIZATION_ID = SUBT.ORGANIZATION_ID
118     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
119     and (SUBB.NAME <> SUBT.NAME
120   ));
121 
122   insert into HR_ALL_ORGANIZATION_UNITS_TL (
123     ORGANIZATION_ID,
124     NAME,
125     LAST_UPDATE_DATE,
126     LAST_UPDATED_BY,
127     LAST_UPDATE_LOGIN,
128     CREATED_BY,
129     CREATION_DATE,
130     LANGUAGE,
131     SOURCE_LANG
132   ) select
133     B.ORGANIZATION_ID,
134     B.NAME,
135     B.LAST_UPDATE_DATE,
136     B.LAST_UPDATED_BY,
137     B.LAST_UPDATE_LOGIN,
138     B.CREATED_BY,
139     B.CREATION_DATE,
140     L.LANGUAGE_CODE,
141     B.SOURCE_LANG
142   from HR_ALL_ORGANIZATION_UNITS_TL B, FND_LANGUAGES L
143   where L.INSTALLED_FLAG in ('I', 'B')
144   and B.LANGUAGE = userenv('LANG')
145   and not exists
146     (select NULL
147     from HR_ALL_ORGANIZATION_UNITS_TL T
148     where T.ORGANIZATION_ID = B.ORGANIZATION_ID
149     and T.LANGUAGE = L.LANGUAGE_CODE);
150 end ADD_LANGUAGE;
151 
152 procedure LOAD_ROW(
153  X_ORGANIZATION_ID                IN VARCHAR2,
154  X_OWNER                          IN VARCHAR2,
155  X_NAME                           IN VARCHAR2) IS
156   X_ROWID ROWID;
157   X_CREATION_DATE DATE;
158   X_CREATED_BY NUMBER;
159   X_LAST_UPDATE_DATE DATE;
160   X_LAST_UPDATED_BY NUMBER;
161   X_LAST_UPDATE_LOGIN NUMBER;
162 
163 begin
164 
165   OWNER_TO_WHO (
166     X_OWNER,
167     X_CREATION_DATE,
168     X_CREATED_BY,
169     X_LAST_UPDATE_DATE,
170     X_LAST_UPDATED_BY,
171     X_LAST_UPDATE_LOGIN
172   );
173 
174  begin
175    UPDATE_ROW (
176      TO_NUMBER(X_ORGANIZATION_ID),
177      X_NAME,
178      X_LAST_UPDATE_DATE,
179      X_LAST_UPDATED_BY,
180      X_LAST_UPDATE_LOGIN
181    );
182 
183  exception
184   when no_data_found then
185 
186     INSERT_ROW (
187       TO_NUMBER(X_ORGANIZATION_ID),
188       X_NAME,
189       X_CREATION_DATE,
190       X_CREATED_BY,
191       X_LAST_UPDATE_DATE,
192       X_LAST_UPDATED_BY,
193       X_LAST_UPDATE_LOGIN);
194  end;
195 
196 end LOAD_ROW;
197 
198 procedure TRANSLATE_ROW(
199  X_ORGANIZATION_ID                IN VARCHAR2,
200  X_OWNER                          IN VARCHAR2,
201  X_NAME                           IN VARCHAR2) IS
202   X_ROWID ROWID;
203   X_CREATION_DATE DATE;
204   X_CREATED_BY NUMBER;
205   X_LAST_UPDATE_DATE DATE;
206   X_LAST_UPDATED_BY NUMBER;
207   X_LAST_UPDATE_LOGIN NUMBER;
208 
209 begin
210 
211   OWNER_TO_WHO (
212     X_OWNER,
213     X_CREATION_DATE,
214     X_CREATED_BY,
215     X_LAST_UPDATE_DATE,
216     X_LAST_UPDATED_BY,
217     X_LAST_UPDATE_LOGIN
218     );
219 
220  update HR_ALL_ORGANIZATION_UNITS_TL set
221   NAME = X_NAME,
222   LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
223   LAST_UPDATED_BY = X_LAST_UPDATED_BY,
224   LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
225   SOURCE_LANG = userenv('LANG')
226  where userenv('LANG') in (LANGUAGE,SOURCE_LANG)
227  and organization_id = TO_NUMBER(x_organization_id);
228 
229 end TRANSLATE_ROW;
230 end HR_ORT_PKG;