DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_SA_UTILITY

Source


1 PACKAGE BODY hr_sa_utility AS
2  /* $Header: hrsautil.pkb 115.3 2003/08/06 08:05:49 atrivedi noship $ */
3  --
4  --
5  -- Formats the full name for the Saudi legislation.
6  --
7  FUNCTION per_sa_full_name
8  (p_first_name        IN VARCHAR2
9  ,p_middle_names      IN VARCHAR2
10  ,p_last_name         IN VARCHAR2
11  ,p_known_as          IN VARCHAR2
12  ,p_title             IN VARCHAR2
13  ,p_suffix            IN VARCHAR2
14  ,p_pre_name_adjunct  IN VARCHAR2
15  ,p_per_information1  IN VARCHAR2
16  ,p_per_information2  IN VARCHAR2
17  ,p_per_information3  IN VARCHAR2
18  ,p_per_information4  IN VARCHAR2
19  ,p_per_information5  IN VARCHAR2
20  ,p_per_information6  IN VARCHAR2
21  ,p_per_information7  IN VARCHAR2
22  ,p_per_information8  IN VARCHAR2
23  ,p_per_information9  IN VARCHAR2
24  ,p_per_information10 IN VARCHAR2
25  ,p_per_information11 IN VARCHAR2
26  ,p_per_information12 IN VARCHAR2
27  ,p_per_information13 IN VARCHAR2
28  ,p_per_information14 IN VARCHAR2
29  ,p_per_information15 IN VARCHAR2
30  ,p_per_information16 IN VARCHAR2
31  ,p_per_information17 IN VARCHAR2
32  ,p_per_information18 IN VARCHAR2
33  ,p_per_information19 IN VARCHAR2
34  ,p_per_information20 IN VARCHAR2
35  ,p_per_information21 IN VARCHAR2
36  ,p_per_information22 IN VARCHAR2
37  ,p_per_information23 IN VARCHAR2
38  ,p_per_information24 IN VARCHAR2
39  ,p_per_information25 IN VARCHAR2
40  ,p_per_information26 IN VARCHAR2
41  ,p_per_information27 IN VARCHAR2
42  ,p_per_information28 IN VARCHAR2
43  ,p_per_information29 IN VARCHAR2
44  ,p_per_information30 in VARCHAR2) RETURN VARCHAR2 IS
45    --
46    --
47    -- Local variables
48    --
49    l_full_name varchar2(2000);
50  BEGIN
51    --
52    --
53    -- Construct the full name which has the following format:
54    --
55    -- <First>, <Father>, <Grandfather>, <Last>
56    --
57    -- NB.      <Father> is held in PER_INFORMATION1 and
58    --     <Grandfather> is held in PER_INFORMATION2.
59    --
60    SELECT SUBSTR(LTRIM(RTRIM (DECODE(p_first_name, null,'',' ' || p_first_name)
61           ||DECODE(p_per_information1, null, '', ' ' || p_per_information1) -- Father
62           ||DECODE(p_per_information2, null, '', ' ' || p_per_information2) -- Grandfather
63           ||DECODE(p_last_name, null, '', ' '||p_last_name)
64                 )), 1, 240)
65    INTO   l_full_name
66    FROM   dual;
67 
68    --
69    --
70    -- Return the full name.
71    --
72    RETURN (l_full_name);
73  END per_sa_full_name;
74 END hr_sa_utility;