DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_PL_PERSONAL_PAY_METHOD_API

Source


1 Package Body hr_pl_personal_pay_method_api as
2 /* $Header: pyppmpli.pkb 120.0 2005/05/29 07:42:18 appldev noship $ */
3 --
4 -- Package Variables
5 --
6 
7 --
8 -- ----------------------------------------------------------------------------
9 -- |-------------------------< create_pl_personal_pay_method >---------------------------|
10 -- ----------------------------------------------------------------------------
11 
12 procedure create_pl_personal_pay_method
13   (p_validate					   in     boolean  default false
14   ,p_effective_date                in     date
15   ,p_assignment_id                 in     number
16   ,p_run_type_id                   in     number  default null
17   ,p_org_payment_method_id         in     number
18   ,p_amount                        in     number   default null
19   ,p_percentage                    in     number   default null
20   ,p_priority                      in     number   default null
21   ,p_comments                      in     varchar2 default null
22   ,p_attribute_category            in     varchar2 default null
23   ,p_attribute1                    in     varchar2 default null
24   ,p_attribute2                    in     varchar2 default null
25   ,p_attribute3                    in     varchar2 default null
26   ,p_attribute4                    in     varchar2 default null
27   ,p_attribute5                    in     varchar2 default null
28   ,p_attribute6                    in     varchar2 default null
29   ,p_attribute7                    in     varchar2 default null
30   ,p_attribute8                    in     varchar2 default null
31   ,p_attribute9                    in     varchar2 default null
32   ,p_attribute10                   in     varchar2 default null
33   ,p_attribute11                   in     varchar2 default null
34   ,p_attribute12                   in     varchar2 default null
35   ,p_attribute13                   in     varchar2 default null
36   ,p_attribute14                   in     varchar2 default null
37   ,p_attribute15                   in     varchar2 default null
38   ,p_attribute16                   in     varchar2 default null
39   ,p_attribute17                   in     varchar2 default null
40   ,p_attribute18                   in     varchar2 default null
41   ,p_attribute19                   in     varchar2 default null
42   ,p_attribute20                   in     varchar2 default null
43   ,p_territory_code                in     varchar2 default null
44   ,p_account_check_digit           in     varchar2
45   ,p_bank_id                       in     varchar2
46   ,p_account_number                in     varchar2
47   ,p_account_name                  in     varchar2 default null
48   ,p_bank_name                     in     varchar2 default null
49   ,p_bank_branch                   in     varchar2 default null
50   ,p_address                       in     varchar2 default null
51   ,p_additional_information        in     varchar2 default null
52   ,p_segment9		               in     varchar2 default '*'
53   ,p_segment10          	       in     varchar2 default '*'
54   ,p_segment11                     in     varchar2 default null
55   ,p_segment12                     in     varchar2 default null
56   ,p_segment13                     in     varchar2 default null
57   ,p_segment14                     in     varchar2 default null
58   ,p_segment15                     in     varchar2 default null
59   ,p_segment16                     in     varchar2 default null
60   ,p_segment17                     in     varchar2 default null
61   ,p_segment18                     in     varchar2 default null
62   ,p_segment19                     in     varchar2 default null
63   ,p_segment20                     in     varchar2 default null
64   ,p_segment21                     in     varchar2 default null
65   ,p_segment22                     in     varchar2 default null
66   ,p_segment23                     in     varchar2 default null
67   ,p_segment24                     in     varchar2 default null
68   ,p_segment25                     in     varchar2 default null
69   ,p_segment26                     in     varchar2 default null
70   ,p_segment27                     in     varchar2 default null
71   ,p_segment28                     in     varchar2 default null
72   ,p_segment29                     in     varchar2 default null
73   ,p_segment30                     in     varchar2 default null
74   ,p_concat_segments               in     varchar2 default null
75   ,p_payee_type                    in     varchar2 default null
76   ,p_payee_id                      in     number   default null
77   ,p_personal_payment_method_id    out    nocopy number
78   ,p_external_account_id           out    nocopy number
79   ,p_object_version_number         out    nocopy number
80   ,p_effective_start_date          out    nocopy date
81   ,p_effective_end_date            out    nocopy date
82   ,p_comment_id                    out    nocopy number) is
83 
84   --
85   -- Declare local variables
86   --
87   l_proc                varchar2(72);
88   l_valid               varchar2(150);
89  --
90   cursor legsel is
91     select pbg.legislation_code
92     from   per_business_groups pbg,
93            per_assignments_f   asg
94     where  pbg.business_group_id = asg.business_group_id
95     and    asg.assignment_id     = p_assignment_id
96     and    p_effective_date between asg.effective_start_date
97                             and     asg.effective_end_date;
98   --
99   --
100 begin
101      g_package :='hr_pl_personal_pay_method_api.';
102      l_proc    := g_package||'create_pl_personal_pay_method';
103 
104   hr_utility.set_location('Entering:'|| l_proc, 5);
105   --
106   --
107   open legsel;
108   fetch legsel
109   into l_valid;
110   --
111   if legsel%notfound then
112     close legsel;
113     hr_utility.set_message(801, 'HR_7348_ASSIGNMENT_INVALID');
114     hr_utility.raise_error;
115   end if;
116 
117   if legsel%found and l_valid <> 'PL' then
118     close legsel;
119     hr_utility.set_message(801, 'HR_7898_PPM_BUS_GRP_INVALID');
120     hr_utility.raise_error;
121   end if;
122   --
123   close legsel;
124 hr_personal_pay_method_api.create_personal_pay_method
125   (p_validate                      => p_validate
126   ,p_effective_date                => p_effective_date
127   ,p_assignment_id                 => p_assignment_id
128   ,p_run_type_id                   => p_run_type_id
129   ,p_org_payment_method_id         => p_org_payment_method_id
130   ,p_amount                        => p_amount
131   ,p_percentage                    => p_percentage
132   ,p_priority                      => p_priority
133   ,p_comments                      => p_comments
134   ,p_attribute_category            => p_attribute_category
135   ,p_attribute1                    => p_attribute1
136   ,p_attribute2                    => p_attribute2
137   ,p_attribute3                    => p_attribute3
138   ,p_attribute4                    => p_attribute4
139   ,p_attribute5                    => p_attribute5
140   ,p_attribute6                    => p_attribute6
141   ,p_attribute7                    => p_attribute7
142   ,p_attribute8                    => p_attribute8
143   ,p_attribute9                    => p_attribute9
144   ,p_attribute10                   => p_attribute10
145   ,p_attribute11                   => p_attribute11
146   ,p_attribute12                   => p_attribute12
147   ,p_attribute13                   => p_attribute13
148   ,p_attribute14                   => p_attribute14
149   ,p_attribute15                   => p_attribute15
150   ,p_attribute16                   => p_attribute16
151   ,p_attribute17                   => p_attribute17
152   ,p_attribute18                   => p_attribute18
153   ,p_attribute19                   => p_attribute19
154   ,p_attribute20                   => p_attribute20
155   ,p_territory_code                => p_territory_code
156   ,p_segment1                      => p_account_check_digit
157   ,p_segment2                      => p_bank_id
158   ,p_segment3                      => p_account_number
159   ,p_segment4                      => p_account_name
160   ,p_segment5                      => p_bank_name
161   ,p_segment6                      => p_bank_branch
162   ,p_segment7                      => p_address
163   ,p_segment8                      => p_additional_information
164   ,p_segment9                      => p_segment9
165   ,p_segment10                     => p_segment10
166   ,p_segment11                     => p_segment11
167   ,p_segment12                     => p_segment12
168   ,p_segment13                     => p_segment13
169   ,p_segment14                     => p_segment14
170   ,p_segment15                     => p_segment15
171   ,p_segment16                     => p_segment16
172   ,p_segment17                     => p_segment17
173   ,p_segment18                     => p_segment18
174   ,p_segment19                     => p_segment19
175   ,p_segment20                     => p_segment20
176   ,p_segment21                     => p_segment21
177   ,p_segment22                     => p_segment22
178   ,p_segment23                     => p_segment23
179   ,p_segment24                     => p_segment24
180   ,p_segment25                     => p_segment25
181   ,p_segment26                     => p_segment26
182   ,p_segment27                     => p_segment27
183   ,p_segment28                     => p_segment28
184   ,p_segment29                     => p_segment29
185   ,p_segment30                     => p_segment30
186   ,p_concat_segments               => p_concat_segments
187   ,p_payee_type                    => p_payee_type
188   ,p_payee_id                      => p_payee_id
189   ,p_personal_payment_method_id    => p_personal_payment_method_id
190   ,p_external_account_id           => p_external_account_id
191   ,p_object_version_number         => p_object_version_number
192   ,p_effective_start_date          => p_effective_start_date
193   ,p_effective_end_date            => p_effective_end_date
194   ,p_comment_id                    => p_comment_id
195   );
196 
197 end create_pl_personal_pay_method;
198 
199 procedure update_pl_personal_pay_method
200   (p_validate                      in     boolean  default false
201   ,p_effective_date                in     date
202   ,p_datetrack_update_mode         in     varchar2
203   ,p_personal_payment_method_id    in     number
204   ,p_object_version_number         in     out nocopy number
205   ,p_amount                        in     number   default hr_api.g_number
206   ,p_comments                      in     varchar2 default hr_api.g_varchar2
207   ,p_percentage                    in     number   default hr_api.g_number
208   ,p_priority                      in     number   default hr_api.g_number
209   ,p_attribute_category            in     varchar2 default hr_api.g_varchar2
210   ,p_attribute1                    in     varchar2 default hr_api.g_varchar2
211   ,p_attribute2                    in     varchar2 default hr_api.g_varchar2
212   ,p_attribute3                    in     varchar2 default hr_api.g_varchar2
213   ,p_attribute4                    in     varchar2 default hr_api.g_varchar2
214   ,p_attribute5                    in     varchar2 default hr_api.g_varchar2
215   ,p_attribute6                    in     varchar2 default hr_api.g_varchar2
216   ,p_attribute7                    in     varchar2 default hr_api.g_varchar2
217   ,p_attribute8                    in     varchar2 default hr_api.g_varchar2
218   ,p_attribute9                    in     varchar2 default hr_api.g_varchar2
219   ,p_attribute10                   in     varchar2 default hr_api.g_varchar2
220   ,p_attribute11                   in     varchar2 default hr_api.g_varchar2
221   ,p_attribute12                   in     varchar2 default hr_api.g_varchar2
222   ,p_attribute13                   in     varchar2 default hr_api.g_varchar2
223   ,p_attribute14                   in     varchar2 default hr_api.g_varchar2
224   ,p_attribute15                   in     varchar2 default hr_api.g_varchar2
225   ,p_attribute16                   in     varchar2 default hr_api.g_varchar2
226   ,p_attribute17                   in     varchar2 default hr_api.g_varchar2
227   ,p_attribute18                   in     varchar2 default hr_api.g_varchar2
228   ,p_attribute19                   in     varchar2 default hr_api.g_varchar2
229   ,p_attribute20                   in     varchar2 default hr_api.g_varchar2
230   ,p_territory_code                in     varchar2 default hr_api.g_varchar2
231   ,p_account_check_digit           in     varchar2
232   ,p_bank_id                       in     varchar2
233   ,p_account_number                in     varchar2
234   ,p_account_name                  in     varchar2 default hr_api.g_varchar2
235   ,p_bank_name                     in     varchar2 default hr_api.g_varchar2
236   ,p_bank_branch                   in     varchar2 default hr_api.g_varchar2
237   ,p_address                       in     varchar2 default hr_api.g_varchar2
238   ,p_additional_information        in     varchar2 default hr_api.g_varchar2
239   ,p_segment9        		       in     varchar2 default '*'
240   ,p_segment10	                   in     varchar2 default '*'
241   ,p_segment11                     in     varchar2 default hr_api.g_varchar2
242   ,p_segment12                     in     varchar2 default hr_api.g_varchar2
243   ,p_segment13                     in     varchar2 default hr_api.g_varchar2
244   ,p_segment14                     in     varchar2 default hr_api.g_varchar2
245   ,p_segment15                     in     varchar2 default hr_api.g_varchar2
246   ,p_segment16                     in     varchar2 default hr_api.g_varchar2
247   ,p_segment17                     in     varchar2 default hr_api.g_varchar2
248   ,p_segment18                     in     varchar2 default hr_api.g_varchar2
249   ,p_segment19                     in     varchar2 default hr_api.g_varchar2
250   ,p_segment20                     in     varchar2 default hr_api.g_varchar2
251   ,p_segment21                     in     varchar2 default hr_api.g_varchar2
252   ,p_segment22                     in     varchar2 default hr_api.g_varchar2
253   ,p_segment23                     in     varchar2 default hr_api.g_varchar2
254   ,p_segment24                     in     varchar2 default hr_api.g_varchar2
255   ,p_segment25                     in     varchar2 default hr_api.g_varchar2
256   ,p_segment26                     in     varchar2 default hr_api.g_varchar2
257   ,p_segment27                     in     varchar2 default hr_api.g_varchar2
258   ,p_segment28                     in     varchar2 default hr_api.g_varchar2
259   ,p_segment29                     in     varchar2 default hr_api.g_varchar2
260   ,p_segment30                     in     varchar2 default hr_api.g_varchar2
261   ,p_concat_segments               in     varchar2 default null
262   ,p_payee_type                    in     varchar2 default hr_api.g_varchar2
263   ,p_payee_id                      in     number   default hr_api.g_number
264   ,p_comment_id                    out nocopy    number
265   ,p_external_account_id           out nocopy    number
266   ,p_effective_start_date          out nocopy    date
267   ,p_effective_end_date            out nocopy    date
268   ) is
269 
270   -- Declare cursors and local variables
271   --
272   l_proc                 varchar2(72);
273   l_valid                varchar2(150);
274    --
275   cursor legsel is
276     select pbg.legislation_code
277     from   per_business_groups pbg,
278            pay_personal_payment_methods_f ppm
279     where  pbg.business_group_id = ppm.business_group_id
280     and    ppm.personal_payment_method_id = p_personal_payment_method_id
281     and    p_effective_date between ppm.effective_start_date
282                             and     ppm.effective_end_date;
283 --
284 begin
285      g_package :='hr_pl_personal_pay_method_api.';
286      l_proc    := g_package||'update_pl_personal_pay_method';
287 
288      hr_utility.set_location('Entering:'|| l_proc, 5);
289  --
290   open legsel;
291   fetch legsel
292   into l_valid;
293   --
294   if legsel%notfound then
295     close legsel;
296     hr_utility.set_message(801, 'HR_7220_INVALID_PRIMARY_KEY');
297     hr_utility.raise_error;
298   end if;
299   if legsel%found and l_valid <> 'PL' then
300     hr_utility.set_message(801, 'HR_7898_PPM_BUS_GRP_INVALID');
301     hr_utility.raise_error;
302   end if;
303   --
304   close legsel;
305 hr_personal_pay_method_api.update_personal_pay_method
306 (  p_validate                      =>     p_validate
307   ,p_effective_date                =>     p_effective_date
308   ,p_datetrack_update_mode         =>     p_datetrack_update_mode
309   ,p_personal_payment_method_id    =>     p_personal_payment_method_id
310   ,p_object_version_number         =>     p_object_version_number
311   ,p_amount                        =>     p_amount
312   ,p_comments                      =>     p_comments
313   ,p_percentage                    =>     p_percentage
314   ,p_priority                      =>     p_priority
315   ,p_attribute_category            =>     p_attribute_category
316   ,p_attribute1                    =>     p_attribute1
317   ,p_attribute2                    =>     p_attribute2
318   ,p_attribute3                    =>     p_attribute3
319   ,p_attribute4                    =>     p_attribute4
320   ,p_attribute5                    =>     p_attribute5
321   ,p_attribute6                    =>     p_attribute6
322   ,p_attribute7                    =>     p_attribute7
323   ,p_attribute8                    =>     p_attribute8
324   ,p_attribute9                    =>     p_attribute9
325   ,p_attribute10                   =>     p_attribute10
326   ,p_attribute11                   =>     p_attribute11
327   ,p_attribute12                   =>     p_attribute12
328   ,p_attribute13                   =>     p_attribute13
329   ,p_attribute14                   =>     p_attribute14
330   ,p_attribute15                   =>     p_attribute15
331   ,p_attribute16                   =>     p_attribute16
332   ,p_attribute17                   =>     p_attribute17
333   ,p_attribute18                   =>     p_attribute18
334   ,p_attribute19                   =>     p_attribute19
335   ,p_attribute20                   =>     p_attribute20
336   ,p_territory_code                =>     p_territory_code
337   ,p_segment1                      =>  	  p_account_check_digit
338   ,p_segment2                      =>     p_bank_id
339   ,p_segment3                      => 	  p_account_number
340   ,p_segment4                      => 	  p_account_name
341   ,p_segment5                      => 	  p_bank_name
342   ,p_segment6                      => 	  p_bank_branch
343   ,p_segment7                      => 	  p_address
344   ,p_segment8                      => 	  p_additional_information
345   ,p_segment9                      => 	  p_segment9
346   ,p_segment10                     => 	  p_segment10
347   ,p_segment11                     =>     p_segment11
348   ,p_segment12                     =>     p_segment12
349   ,p_segment13                     =>     p_segment13
350   ,p_segment14                     =>     p_segment14
351   ,p_segment15                     =>     p_segment15
352   ,p_segment16                     =>     p_segment16
353   ,p_segment17                     =>     p_segment17
354   ,p_segment18                     =>     p_segment18
355   ,p_segment19                     =>     p_segment19
356   ,p_segment20                     =>     p_segment20
357   ,p_segment21                     =>     p_segment21
358   ,p_segment22                     =>     p_segment22
359   ,p_segment23                     =>     p_segment23
360   ,p_segment24                     =>     p_segment24
361   ,p_segment25                     =>     p_segment25
362   ,p_segment26                     =>     p_segment26
363   ,p_segment27                     =>     p_segment27
364   ,p_segment28                     =>     p_segment28
365   ,p_segment29                     =>     p_segment29
366   ,p_segment30                     =>     p_segment30
367   ,p_concat_segments               =>     p_concat_segments
368   ,p_payee_type                    =>     p_payee_type
369   ,p_payee_id                      =>     p_payee_id
370   ,p_comment_id                    =>     p_comment_id
371   ,p_external_account_id           =>     p_external_account_id
372   ,p_effective_start_date          =>     p_effective_start_date
373   ,p_effective_end_date            =>     p_effective_end_date
374   );
375 
376 end update_pl_personal_pay_method;
377 
378 --
379 end hr_pl_personal_pay_method_api;