DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_TAXABILITY_RULES_API

Source


1 Package body pay_taxability_rules_api as
2 /* $Header: paytxabltyrulapi.pkb 120.0 2005/05/29 11:51 appldev noship $ */
3 
4 -- Package Variables
5 g_package            VARCHAR2(33) := '  create_taxability_rules_api.';
6 --
7 
8   FUNCTION check_taxability_rule_exists
9                   (p_jurisdiction         IN VARCHAR2
10                   ,p_legislation_code     IN VARCHAR2
11                   ,p_classification_id    IN NUMBER default null
12                   ,p_tax_category         IN VARCHAR2 default null
13                   ,p_tax_type             IN VARCHAR2 default null
14                   ,p_secondary_classification_id IN NUMBER default null
15                   )
16   RETURN VARCHAR2
17   IS
18 
19     cursor c_check_taxability_rule(cp_jurisdiction      in varchar2
20                                   ,cp_legislation_code  in varchar2
21                                   ,cp_tax_type          in varchar2
22                                   ,cp_category          in varchar2
23                                   ,cp_classification_id in number
24                                   ,cp_secondary_classification_id in number) is
25          select nvl(status, 'V'),last_updated_by
26            from pay_taxability_rules
27           where jurisdiction_code = cp_jurisdiction
28             and nvl(tax_type,'X') = nvl(cp_tax_type,'X')
29             and nvl(tax_category,'X') = nvl(cp_category,'X')
30             and nvl(classification_id,0) = nvl(cp_classification_id,0)
31             and nvl(secondary_classification_id,0) =
32                            nvl(cp_secondary_classification_id,0)
33             and legislation_code = cp_legislation_code;
34 
35     lv_status VARCHAR2(1);
36     lv_last_updated_by NUMBER(15);
37     lv_seed_last_updated_by NUMBER(15);
38 
39   BEGIN
40 
41     hr_utility.trace('In check_taxability_rule_exists');
42     open c_check_taxability_rule
43              (p_jurisdiction
44              ,p_legislation_code
45              ,p_tax_type
46              ,p_tax_category
47              ,p_classification_id
48              ,p_secondary_classification_id);
49     fetch c_check_taxability_rule into lv_status,lv_last_updated_by;
50     if c_check_taxability_rule%notfound then
51        lv_status := 'N';
52     end if;
53     close c_check_taxability_rule;
54 
55     lv_seed_last_updated_by:=  fnd_load_util.owner_id('ORACLE');
56     hr_utility.trace('lv_seed_last_updated_by = '||to_char(lv_seed_last_updated_by));
57     hr_utility.trace('lv_last_updated_by = '||to_char(lv_last_updated_by));
58 
59     /* Check if its a seeded row. If so, set the return status to 'S' seed. */
60 
61     if lv_last_updated_by = lv_seed_last_updated_by  Then
62 
63          lv_status := 'S';
64 
65     end if;
66 
67     hr_utility.trace('lv_status = '||lv_status);
68 
69     return (lv_status);
70 
71   END check_taxability_rule_exists;
72 
73 
74 
75 
76   PROCEDURE create_taxability_rules
77                 (p_validate                 IN BOOLEAN
78                 ,p_jurisdiction             IN VARCHAR2
79                 ,p_tax_type                 IN VARCHAR2 default null
80                 ,p_tax_category             IN VARCHAR2 default null
81                 ,p_classification_id        IN  NUMBER default null
82                 ,p_taxability_rules_date_id IN NUMBER
83                 ,p_legislation_code         IN  VARCHAR2
84                 ,p_status                   IN  VARCHAR2
85                 ,p_secondary_classification_id IN  NUMBER default null)
86 IS
87 
88  l_proc            VARCHAR2(72) := g_package||'create_taxability_rules';
89 BEGIN
90 
91   hr_utility.trace('In paytxabltyrulapi package');
92 
93   hr_utility.set_location('Entering:'|| l_proc, 10);
94   --
95   -- Issue a savepoint
96   --
97   savepoint create_taxability_rules;
98 
99   hr_utility.trace('Before calling pay_txr_ins.ins');
100 
101   pay_txr_ins.ins(p_effective_date           => sysdate
102                  ,p_legislation_code         => p_legislation_code
103                  ,p_jurisdiction_code        => p_jurisdiction
104                  ,p_tax_type                 => p_tax_type
105                  ,p_tax_category             => p_tax_category
106                  ,p_classification_id        => p_classification_id
107                  ,p_taxability_rules_date_id => p_taxability_rules_date_id
108                  ,p_status                   => p_status
109                  ,p_secondary_classification_id => p_secondary_classification_id
110                 );
111 
112   hr_utility.trace('After calling pay_txr_ins.ins');
113 
114   IF p_validate THEN
115      hr_utility.set_location('Entering:'|| l_proc, 30);
116      RAISE hr_api.validate_enabled;
117   END IF;
118 
119 EXCEPTION
120 
121    WHEN hr_api.validate_enabled THEN
122      ROLLBACK TO create_taxability_rules;
123      hr_utility.set_location(' Leaving:'||l_proc, 80);
124 
125   WHEN OTHERS THEN
126      ROLLBACK TO create_taxability_rules;
127      hr_utility.set_location(' Leaving:'||l_proc, 80);
128      RAISE;
129 
130   hr_utility.trace('End create_taxability_rules');
131 
132 END create_taxability_rules;
133 
134 
135 PROCEDURE update_taxability_rules
136                 (p_validate                 IN BOOLEAN
137                 ,p_jurisdiction             IN VARCHAR2
138                 ,p_tax_type                 IN VARCHAR2 default null
139                 ,p_tax_category             IN VARCHAR2 default null
140                 ,p_classification_id        IN  NUMBER default null
141                 ,p_taxability_rules_date_id IN NUMBER
142                 ,p_legislation_code         IN  VARCHAR2
143                 ,p_status                   IN  VARCHAR2
144                 ,p_secondary_classification_id IN  NUMBER default null)
145 IS
146 
147   l_proc            VARCHAR2(72) := g_package||'update_taxability_rules';
148 
149 BEGIN
150 
151   hr_utility.set_location('Entering:'|| l_proc, 10);
152   --
153   -- Issue a savepoint.
154   --
155   savepoint update_taxability_rules;
156   --
157   --
158   pay_txr_upd.upd(p_effective_date           => sysdate
159                  ,p_legislation_code         => p_legislation_code
160                  ,p_jurisdiction_code        => p_jurisdiction
161                  ,p_tax_type                 => p_tax_type
162                  ,p_tax_category             => p_tax_category
163                  ,p_classification_id        => p_classification_id
164                  ,p_taxability_rules_date_id => p_taxability_rules_date_id
165                  ,p_status                   => p_status
166                  ,p_secondary_classification_id => p_secondary_classification_id);
167 
168 
169   hr_utility.set_location('Entering:'|| l_proc, 20);
170 
171   IF p_validate THEN
172      hr_utility.set_location('Entering:'|| l_proc, 30);
173      RAISE hr_api.validate_enabled;
174   END IF;
175 
176 EXCEPTION
177 
178   WHEN  hr_api.validate_enabled THEN
179     ROLLBACK TO update_taxability_rules;
180     hr_utility.set_location(' Leaving:'||l_proc, 80);
181 
182   WHEN OTHERS THEN
183     ROLLBACK TO update_taxability_rules;
184     hr_utility.set_location(' Leaving:'||l_proc, 80);
185          RAISE;
186 
187 end update_taxability_rules;
188 
189 
190 
191 /***********************************************************
192 ** We will never be deleting the data in pay_taxability_rules
193 ** table. We will be updating the status to 'D' if the value
194 ** already exists.
195 **
196 ** Commenting out the delete becasue of the reason mentioned
197 ** above.
198 ************************************************************
199 PROCEDURE delete_taxability_rules
200                 ( p_validate                IN BOOLEAN
201                 ,p_jurisdiction             IN VARCHAR2
202                 ,p_tax_type                 IN VARCHAR2 default null
203                 ,p_tax_category             IN VARCHAR2 default null
204                 ,p_classification_id        IN  NUMBER default null
205                 ,p_taxability_rules_date_id IN NUMBER
206                 ,p_legislation_code         IN  VARCHAR2
207                 ,p_status                   IN  VARCHAR2,
208                 ,p_secondary_classification_id IN  NUMBER default null)
209 IS
210 
211 BEGIN
212   null;
213 END delete_taxability_rules;
214 ***********************************************************/
215 
216 end pay_taxability_rules_api;