1 PACKAGE body hr_cn_utility as
2 /* $Header: hrcnutil.pkb 120.3 2011/06/30 10:51:02 scireddy ship $ */
3 FUNCTION per_cn_full_name(
4 p_first_name in varchar2
5 ,p_middle_names in varchar2
6 ,p_last_name in varchar2
7 ,p_known_as in varchar2
8 ,p_title in varchar2
9 ,p_suffix in varchar2
10 ,p_pre_name_adjunct in varchar2
11 ,p_per_information1 in varchar2
12 ,p_per_information2 in varchar2
13 ,p_per_information3 in varchar2
14 ,p_per_information4 in varchar2
15 ,p_per_information5 in varchar2
16 ,p_per_information6 in varchar2
17 ,p_per_information7 in varchar2
18 ,p_per_information8 in varchar2
19 ,p_per_information9 in varchar2
20 ,p_per_information10 in varchar2
21 ,p_per_information11 in varchar2
22 ,p_per_information12 in varchar2
23 ,p_per_information13 in varchar2
24 ,p_per_information14 in varchar2
25 ,p_per_information15 in varchar2
26 ,p_per_information16 in varchar2
27 ,p_per_information17 in varchar2
28 ,p_per_information18 in varchar2
29 ,p_per_information19 in varchar2
30 ,p_per_information20 in varchar2
31 ,p_per_information21 in varchar2
32 ,p_per_information22 in varchar2
33 ,p_per_information23 in varchar2
34 ,p_per_information24 in varchar2
35 ,p_per_information25 in varchar2
36 ,p_per_information26 in varchar2
37 ,p_per_information27 in varchar2
38 ,p_per_information28 in varchar2
39 ,p_per_information29 in varchar2
40 ,p_per_information30 in varchar2
41 ) return varchar2 as
42
43 cursor cn_name_info is
44 SELECT hoi.org_information1
45 FROM hr_organization_information hoi
46 WHERE hoi.org_information_context = 'PER_CN_NAME_INFO'
47 AND hoi.organization_id = FND_PROFILE.VALUE('PER_BUSINESS_GROUP_ID');
48
49 l_full_name VARCHAR2(240);
50 l_name_CN_char varchar2(10); -- Bug#10427266
51
52 BEGIN
53 -- Added this cursor for the Bug# 10427266.
54 open cn_name_info;
55 fetch cn_name_info into l_name_CN_char;
56 if (cn_name_info%notfound) then
57 l_name_CN_char := 'Y';
58 end if;
59 close cn_name_info;
60
61 IF p_per_information8 = 'N'
62 THEN
63 /* BUG# 10427266, If condition is added to display title in
64 employee`s FULL NAME for Chinese Character Set.*/
65 if l_name_CN_char ='Y' then
66 l_full_name := p_last_name||p_first_name||' '||p_title;
67 else
68 l_full_name := HR_US_UTILITY.per_us_full_name
69 (
70 p_first_name => p_first_name
71 ,p_middle_names => p_middle_names
72 ,p_last_name => p_last_name
73 ,p_known_as => p_known_as
74 ,p_title => p_title
75 ,p_suffix => p_suffix
76 ,p_pre_name_adjunct => p_pre_name_adjunct
77 );
78 end if;
79 ELSE
80 l_full_name := HR_US_UTILITY.per_us_full_name
81 (
82 p_first_name => p_first_name
83 ,p_middle_names => p_middle_names
84 ,p_last_name => p_last_name
85 ,p_known_as => p_known_as
86 ,p_title => p_title
87 ,p_suffix => p_suffix
88 ,p_pre_name_adjunct => p_pre_name_adjunct
89 );
90 END IF;
91 RETURN (l_full_name);
92
93 END per_cn_full_name;
94
95
96 FUNCTION per_cn_order_name(
97 p_first_name in varchar2
98 ,p_middle_names in varchar2
99 ,p_last_name in varchar2
100 ,p_known_as in varchar2
101 ,p_title in varchar2
102 ,p_suffix in varchar2
103 ,p_pre_name_adjunct in varchar2
104 ,p_per_information1 in varchar2
105 ,p_per_information2 in varchar2
106 ,p_per_information3 in varchar2
107 ,p_per_information4 in varchar2
108 ,p_per_information5 in varchar2
109 ,p_per_information6 in varchar2
110 ,p_per_information7 in varchar2
111 ,p_per_information8 in varchar2
112 ,p_per_information9 in varchar2
113 ,p_per_information10 in varchar2
114 ,p_per_information11 in varchar2
115 ,p_per_information12 in varchar2
116 ,p_per_information13 in varchar2
117 ,p_per_information14 in varchar2
118 ,p_per_information15 in varchar2
119 ,p_per_information16 in varchar2
120 ,p_per_information17 in varchar2
121 ,p_per_information18 in varchar2
122 ,p_per_information19 in varchar2
123 ,p_per_information20 in varchar2
124 ,p_per_information21 in varchar2
125 ,p_per_information22 in varchar2
126 ,p_per_information23 in varchar2
127 ,p_per_information24 in varchar2
128 ,p_per_information25 in varchar2
129 ,p_per_information26 in varchar2
130 ,p_per_information27 in varchar2
131 ,p_per_information28 in varchar2
132 ,p_per_information29 in varchar2
133 ,p_per_information30 in varchar2
134 ) return varchar2 as
135 l_order_name VARCHAR2(240);
136 BEGIN
137 IF p_per_information8 = 'N'
138 THEN
139 /*Changed the order_name construction w.r.t bug 3075230*/
140 l_order_name := p_last_name||p_first_name;
141 ELSE
142 l_order_name := HR_US_UTILITY.per_us_full_name
143 (
144 p_first_name => p_first_name
145 ,p_middle_names => p_middle_names
146 ,p_last_name => p_last_name
147 ,p_known_as => p_known_as
148 ,p_title => p_title
149 ,p_suffix => p_suffix
150 ,p_pre_name_adjunct => p_pre_name_adjunct
151 );
152 /*Bug 3075230 changes end here*/
153 END IF;
154 RETURN (l_order_name);
155 END per_cn_order_name;
156 /*Added this procedure w.r.t Bug 6713884*/
157 PROCEDURE derive_hr_loc_address(
158 p_tax_name IN VARCHAR2,
159 p_style IN VARCHAR2,
160 p_address_line_1 IN VARCHAR2,
161 p_address_line_2 IN VARCHAR2,
162 p_address_line_3 IN VARCHAR2,
163 p_town_or_city IN VARCHAR2,
164 p_country IN VARCHAR2,
165 p_postal_code IN VARCHAR2,
166 p_region_1 IN VARCHAR2,
167 p_region_2 IN VARCHAR2,
168 p_region_3 IN VARCHAR2,
169 p_telephone_number_1 IN VARCHAR2,
170 p_telephone_number_2 IN VARCHAR2,
171 p_telephone_number_3 IN VARCHAR2,
172 p_loc_information13 IN VARCHAR2,
173 p_loc_information14 IN VARCHAR2,
174 p_loc_information15 IN VARCHAR2,
175 p_loc_information16 IN VARCHAR2,
176 p_loc_information17 IN VARCHAR2,
177 p_attribute_category IN VARCHAR2,
178 p_attribute1 IN VARCHAR2,
179 p_attribute2 IN VARCHAR2,
180 p_attribute3 IN VARCHAR2,
181 p_attribute4 IN VARCHAR2,
182 p_attribute5 IN VARCHAR2,
183 p_attribute6 IN VARCHAR2,
184 p_attribute7 IN VARCHAR2,
185 p_attribute8 IN VARCHAR2,
186 p_attribute9 IN VARCHAR2,
187 p_attribute10 IN VARCHAR2,
188 p_attribute11 IN VARCHAR2,
189 p_attribute12 IN VARCHAR2,
190 p_attribute13 IN VARCHAR2,
191 p_attribute14 IN VARCHAR2,
192 p_attribute15 IN VARCHAR2,
193 p_attribute16 IN VARCHAR2,
194 p_attribute17 IN VARCHAR2,
195 p_attribute18 IN VARCHAR2,
196 p_attribute19 IN VARCHAR2,
197 p_attribute20 IN VARCHAR2,
198 p_global_attribute_category IN VARCHAR2,
199 p_global_attribute1 IN VARCHAR2,
200 p_global_attribute2 IN VARCHAR2,
201 p_global_attribute3 IN VARCHAR2,
202 p_global_attribute4 IN VARCHAR2,
203 p_global_attribute5 IN VARCHAR2,
204 p_global_attribute6 IN VARCHAR2,
205 p_global_attribute7 IN VARCHAR2,
206 p_global_attribute8 IN VARCHAR2,
207 p_global_attribute9 IN VARCHAR2,
208 p_global_attribute10 IN VARCHAR2,
209 p_global_attribute11 IN VARCHAR2,
210 p_global_attribute12 IN VARCHAR2,
211 p_global_attribute13 IN VARCHAR2,
212 p_global_attribute14 IN VARCHAR2,
213 p_global_attribute15 IN VARCHAR2,
214 p_global_attribute16 IN VARCHAR2,
215 p_global_attribute17 IN VARCHAR2,
216 p_global_attribute18 IN VARCHAR2,
217 p_global_attribute19 IN VARCHAR2,
218 p_global_attribute20 IN VARCHAR2,
219 p_loc_information18 IN VARCHAR2,
220 p_loc_information19 IN VARCHAR2,
221 p_loc_information20 IN VARCHAR2,
222 p_derived_locale OUT NOCOPY VARCHAR2
223 ) is
224 BEGIN
225 if (ltrim(p_town_or_city) is not null) then
226 p_derived_locale := hr_general.decode_lookup('CN_PROVINCE',p_town_or_city) || ', ';
227 end if;
228 if (ltrim(p_region_2) is not null) then
229 p_derived_locale := p_derived_locale || p_region_2 || ', ';
230 end if;
231 if (ltrim(p_country) is null) then
232 p_derived_locale := rtrim(p_derived_locale, ',');
233 else
234 p_derived_locale := p_derived_locale || p_country;
235 end if;
236 END;
237 /*Bug 6713884 ends*/
238 END hr_cn_utility;