DBA Data[Home] [Help]

PACKAGE BODY: APPS.PER_LETTER_TYPES_PKG

Source


1 PACKAGE BODY PER_LETTER_TYPES_PKG as
2 /* $Header: peltt01t.pkb 115.1 99/07/18 14:02:00 porting ship $ */
3 
4 procedure LETTER_TYPE_NOT_UNIQUE (
5 --
6 -- Returns TRUE if the letter type name is not unique, then the check is for a
7 -- new record within generic data
8 --
9 -- Parameters are:
10 --
11 p_letter_type        in varchar2,
12 p_business_group_id  in number,
13 p_letter_type_id     in number) is
14 --
15 v_not_unique    boolean := FALSE;
16 g_dummy_number  number;
17 --
18 cursor csr_duplicate is
19 		select  null
20                 from per_letter_types
21 		where upper(p_letter_type) = upper(letter_type_name)
22 	    	and p_business_group_id = business_group_id + 0
23 		and (p_letter_type_id is null
24 		    or (p_letter_type_id is not null
25 		    and letter_type_id <> p_letter_type_id));
26 begin
27 --
28   open csr_duplicate;
29   fetch csr_duplicate into g_dummy_number;
30   v_not_unique := csr_duplicate%found;
31   close csr_duplicate;
32 --
33 if v_not_unique then
34     hr_utility.set_message (801,'PER_7856_DEF_LETTER_EXISTS');
35     hr_utility.raise_error;
36 end if;
37 --
38 end letter_type_not_unique;
39 
40 procedure check_delete_letter_type (p_letter_type_id in number) is
41 --
42 g_dummy_number    number;
43 v_no_delete       boolean := FALSE;
44 --
45 cursor csr_status is
46 	   select null
47 	   from per_letter_gen_statuses
48            where p_letter_type_id = letter_type_id;
49 --
50 cursor csr_request is
51 	   select null
52 	   from per_letter_requests
53            where p_letter_type_id = letter_type_id;
54 --
55 -- Check there are no dependencies of the letter type record
56 -- in the per_letter_gen_statuses and per_letter_requests table
57 --
58 begin
59   open csr_status;
60   fetch csr_status into g_dummy_number;
61   v_no_delete := csr_status%found;
62   close csr_status;
63   --
64   if  v_no_delete then
65       hr_utility.set_message (801,'PER_7857_DEF_LETTER_STATUSES');
66       hr_utility.raise_error;
67   end if;
68   --
69   open csr_request;
70   fetch csr_request into g_dummy_number;
71   v_no_delete := csr_request%found;
72   close csr_request;
73   --
74   if  v_no_delete then
75       hr_utility.set_message (801,'PER_7858_DEF_LETTER_REQUESTS');
76       hr_utility.raise_error;
77   end if;
78   --
79 end check_delete_letter_type;
80 --
81 --
82 procedure get_next_sequence(p_letter_type_id in out number) is
83 --
84 cursor c1 is select per_letter_types_s.nextval
85 	     from sys.dual;
86 --
87 begin
88   --
89   -- Retrieve the next sequence number for letter_type_id
90   --
91   if (p_letter_type_id is null) then
92     open c1;
93     fetch c1 into p_letter_type_id;
94     if (C1%NOTFOUND) then
95 	 CLOSE C1;
96          hr_utility.set_message(801,'HR_6153_ALL_PROCEDURE_FAIL');
97          hr_utility.set_message_token('PROCEDURE','peltt01t.get_next_sequence');
98          hr_utility.set_message_token('STEP','1');
99 	 hr_utility.raise_error;
100     end if;
101     close c1;
102   end if;
103 end get_next_sequence;
104 --
105 procedure get_concurrent_program(p_concurrent_program_id in number,
106 				 p_concurrent_program_name in out varchar2) is
107 --
108 cursor c1 is select concurrent_program_name
109              from fnd_concurrent_programs fcp
110 	     where p_concurrent_program_id = fcp.concurrent_program_id;
111 
112 begin
113    --
114    -- Get the concurrent program value for the non-db field
115    --
116    open c1;
117    fetch c1 into p_concurrent_program_name;
118      if (C1%NOTFOUND) then
119 	 CLOSE C1;
120          hr_utility.set_message(801,'HR_6153_ALL_PROCEDURE_FAIL');
121          hr_utility.set_message_token('PROCEDURE','peltt01t.concurrent_program_name');
122          hr_utility.set_message_token('STEP','1');
123 	 hr_utility.raise_error;
124      end if;
125    close c1;
126    --
127 end get_concurrent_program;
128 --
129 END PER_LETTER_TYPES_PKG;