DBA Data[Home] [Help]

PACKAGE BODY: APPS.PAY_BTH_SHD

Source


1 Package Body pay_bth_shd as
2 /* $Header: pybthrhi.pkb 120.2 2005/06/12 16:19:52 susivasu noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                     Private Global Definitions                           |
6 -- ----------------------------------------------------------------------------
7 --
8 g_package  varchar2(33)	:= '  pay_bth_shd.';  -- Global package name
9 --
10 -- ----------------------------------------------------------------------------
11 -- |------------------------< return_api_dml_status >-------------------------|
12 -- ----------------------------------------------------------------------------
13 Function return_api_dml_status Return Boolean Is
14 --
15 Begin
16   --
17   Return (nvl(g_api_dml, false));
18   --
19 End return_api_dml_status;
20 --
21 -- ----------------------------------------------------------------------------
22 -- |---------------------------< constraint_error >---------------------------|
23 -- ----------------------------------------------------------------------------
24 Procedure constraint_error
25   (p_constraint_name in all_constraints.constraint_name%TYPE
26   ) Is
27 --
28   l_proc 	varchar2(72) := g_package||'constraint_error';
29 --
30 Begin
31   --
32   If (p_constraint_name = 'PAY_BATCH_HEADERS_PK') Then
33     fnd_message.set_name('PAY', 'HR_6153_ALL_PROCEDURE_FAIL');
34     fnd_message.set_token('PROCEDURE', l_proc);
35     fnd_message.set_token('STEP','5');
36     fnd_message.raise_error;
37   ElsIf (p_constraint_name = 'PAY_BCH_ACTION_IF_EXISTS_CHK') Then
38     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
39     fnd_message.set_token('COLUMN_NAME', 'ACTION_IF_EXISTS');
40     fnd_message.raise_error;
41   ElsIf (p_constraint_name = 'PAY_BCH_BATCH_STATUS_CHK') Then
42     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
43     fnd_message.set_token('COLUMN_NAME', 'BATCH_STATUS');
44     fnd_message.raise_error;
45   ElsIf (p_constraint_name = 'PAY_BCH_DATE_EFFECTIVE_CHA_CHK') Then
46     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
47     fnd_message.set_token('COLUMN_NAME', 'DATE_EFFECTIVE_CHANGES');
48     fnd_message.raise_error;
49   ElsIf (p_constraint_name = 'PAY_BCH_PURGE_AFTER_TRANSF_CHK') Then
50     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
51     fnd_message.set_token('COLUMN_NAME', 'PURGE_AFTER_TRANSFER');
52     fnd_message.raise_error;
53   ElsIf (p_constraint_name = 'PAY_BCH_REJECT_IF_FUTURE_C_CHK') Then
54     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
55     fnd_message.set_token('COLUMN_NAME', 'REJECT_IF_FUTURE_CHANGES');
56     fnd_message.raise_error;
57   ElsIf (p_constraint_name = 'PAY_BCH_REJECT_IF_RESULTS_E_CHK') Then
58     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
59     fnd_message.set_token('COLUMN_NAME', 'REJECT_IF_RESULTS_EXISTS');
60     fnd_message.raise_error;
61   ElsIf (p_constraint_name = 'PAY_BCH_PURGE_AFTER_R_CHK') Then
62     fnd_message.set_name('PAY', 'HR_7462_PLK_INVLD_VALUE');
63     fnd_message.set_token('COLUMN_NAME', 'PURGE_AFTER_ROLLBACK');
64     fnd_message.raise_error;
65   Else
66     fnd_message.set_name('PAY', 'HR_7877_API_INVALID_CONSTRAINT');
67     fnd_message.set_token('PROCEDURE', l_proc);
68     fnd_message.set_token('CONSTRAINT_NAME', p_constraint_name);
69     fnd_message.raise_error;
70   End If;
71   --
72 End constraint_error;
73 --
74 -- ----------------------------------------------------------------------------
75 -- |-----------------------------< api_updating >-----------------------------|
76 -- ----------------------------------------------------------------------------
77 Function api_updating
78   (p_batch_id                             in     number
79   ,p_object_version_number                in     number
80   )
81   Return Boolean Is
82 --
83   --
84   -- Cursor selects the 'current' row from the HR Schema
85   --
86   Cursor C_Sel1 is
87     select
88        batch_id
89       ,business_group_id
90       ,batch_name
91       ,batch_status
92       ,action_if_exists
93       ,batch_reference
94       ,batch_source
95       ,batch_type
96       ,comments
97       ,date_effective_changes
98       ,purge_after_transfer
99       ,reject_if_future_changes
100       ,reject_if_results_exists
101       ,purge_after_rollback
102       ,REJECT_ENTRY_NOT_REMOVED
103       ,ROLLBACK_ENTRY_UPDATES
104       ,object_version_number
105     from	pay_batch_headers
106     where	batch_id = p_batch_id;
107 --
108   l_fct_ret	boolean;
109 --
110 Begin
111   --
112   If (p_batch_id is null and
113       p_object_version_number is null
114      ) Then
115     --
116     -- One of the primary key arguments is null therefore we must
117     -- set the returning function value to false
118     --
119     l_fct_ret := false;
120   Else
121     If (p_batch_id
122         = pay_bth_shd.g_old_rec.batch_id and
123         p_object_version_number
124         = pay_bth_shd.g_old_rec.object_version_number
125        ) Then
126       --
127       -- The g_old_rec is current therefore we must
128       -- set the returning function to true
129       --
130       l_fct_ret := true;
131     Else
132       --
133       -- Select the current row into g_old_rec
134       --
135       Open C_Sel1;
136       Fetch C_Sel1 Into pay_bth_shd.g_old_rec;
137       If C_Sel1%notfound Then
138         Close C_Sel1;
139         --
140         -- The primary key is invalid therefore we must error
141         --
142         fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
143         fnd_message.raise_error;
144       End If;
145       Close C_Sel1;
146       If (p_object_version_number
147           <> pay_bth_shd.g_old_rec.object_version_number) Then
148         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
149         fnd_message.raise_error;
150       End If;
151       l_fct_ret := true;
152     End If;
153   End If;
154   Return (l_fct_ret);
155 --
156 End api_updating;
157 --
158 -- ----------------------------------------------------------------------------
159 -- |---------------------------------< lck >----------------------------------|
160 -- ----------------------------------------------------------------------------
161 Procedure lck
162   (p_batch_id                             in     number
163   ,p_object_version_number                in     number
164   ) is
165 --
166 -- Cursor selects the 'current' row from the HR Schema
167 --
168   Cursor C_Sel1 is
169     select
170        batch_id
171       ,business_group_id
172       ,batch_name
173       ,batch_status
174       ,action_if_exists
175       ,batch_reference
176       ,batch_source
177       ,batch_type
178       ,comments
179       ,date_effective_changes
180       ,purge_after_transfer
181       ,reject_if_future_changes
182       ,reject_if_results_exists
183       ,purge_after_rollback
184       ,REJECT_ENTRY_NOT_REMOVED
185       ,ROLLBACK_ENTRY_UPDATES
186       ,object_version_number
187     from	pay_batch_headers
188     where	batch_id = p_batch_id
189     for	update nowait;
190 --
191   l_proc	varchar2(72) := g_package||'lck';
192 --
193 Begin
194   hr_utility.set_location('Entering:'||l_proc, 5);
195   --
196   hr_api.mandatory_arg_error
197     (p_api_name           => l_proc
198     ,p_argument           => 'BATCH_ID'
199     ,p_argument_value     => p_batch_id
200     );
201   --
202   Open  C_Sel1;
203   Fetch C_Sel1 Into pay_bth_shd.g_old_rec;
204   If C_Sel1%notfound then
205     Close C_Sel1;
206     --
207     -- The primary key is invalid therefore we must error
208     --
209     fnd_message.set_name('PAY', 'HR_7220_INVALID_PRIMARY_KEY');
210     fnd_message.raise_error;
211   End If;
212   Close C_Sel1;
213   If (p_object_version_number
214       <> pay_bth_shd.g_old_rec.object_version_number) Then
215         fnd_message.set_name('PAY', 'HR_7155_OBJECT_INVALID');
216         fnd_message.raise_error;
217   End If;
218   --
219   hr_utility.set_location(' Leaving:'||l_proc, 10);
220   --
221   -- We need to trap the ORA LOCK exception
222   --
223 Exception
224   When HR_Api.Object_Locked then
225     --
226     -- The object is locked therefore we need to supply a meaningful
227     -- error message.
228     --
229     fnd_message.set_name('PAY', 'HR_7165_OBJECT_LOCKED');
230     fnd_message.set_token('TABLE_NAME', 'pay_batch_headers');
231     fnd_message.raise_error;
232 End lck;
233 --
234 -- ----------------------------------------------------------------------------
235 -- |-----------------------------< convert_args >-----------------------------|
236 -- ----------------------------------------------------------------------------
237 Function convert_args
238   (p_batch_id                       in number
239   ,p_business_group_id              in number
240   ,p_batch_name                     in varchar2
241   ,p_batch_status                   in varchar2
242   ,p_action_if_exists               in varchar2
243   ,p_batch_reference                in varchar2
244   ,p_batch_source                   in varchar2
245   ,p_batch_type                     in varchar2
246   ,p_comments                       in varchar2
247   ,p_date_effective_changes         in varchar2
248   ,p_purge_after_transfer           in varchar2
249   ,p_reject_if_future_changes       in varchar2
250   ,p_reject_if_results_exists       in varchar2
251   ,p_purge_after_rollback           in varchar2
252   ,p_REJECT_ENTRY_NOT_REMOVED       in varchar2
253   ,p_ROLLBACK_ENTRY_UPDATES         in varchar2
254   ,p_object_version_number          in number
255   )
256   Return g_rec_type is
257 --
258   l_rec   g_rec_type;
259 --
260 Begin
261   --
262   -- Convert arguments into local l_rec structure.
263   --
264   l_rec.batch_id                         := p_batch_id;
265   l_rec.business_group_id                := p_business_group_id;
266   l_rec.batch_name                       := p_batch_name;
267   l_rec.batch_status                     := p_batch_status;
268   l_rec.action_if_exists                 := p_action_if_exists;
269   l_rec.batch_reference                  := p_batch_reference;
270   l_rec.batch_source                     := p_batch_source;
271   l_rec.batch_type                       := p_batch_type;
272   l_rec.comments                         := p_comments;
273   l_rec.date_effective_changes           := p_date_effective_changes;
274   l_rec.purge_after_transfer             := p_purge_after_transfer;
275   l_rec.reject_if_future_changes         := p_reject_if_future_changes;
276   l_rec.reject_if_results_exists         := p_reject_if_results_exists;
277   l_rec.purge_after_rollback             := p_purge_after_rollback;
278   l_rec.REJECT_ENTRY_NOT_REMOVED         := p_REJECT_ENTRY_NOT_REMOVED;
279   l_rec.ROLLBACK_ENTRY_UPDATES           := p_ROLLBACK_ENTRY_UPDATES;
280   l_rec.object_version_number            := p_object_version_number;
281   --
282   -- Return the plsql record structure.
283   --
284   Return(l_rec);
285 --
286 End convert_args;
287 --
288 end pay_bth_shd;