1 PACKAGE PY_ZA_TX_LS AUTHID CURRENT_USER AS
2 /* $Header: pyzatxls.pkh 120.0.12020000.1 2012/11/06 14:34:15 appldev noship $ */
3 /* Copyright (c) Oracle Corporation 2012. All rights reserved. */
4 /*
5 PRODUCT
6 Oracle Payroll - ZA Localisation Tax Module
7
8 NAME
9 pyzatxls.pkh
10
11 DESCRIPTION
12 This is the ZA Tax Module Lumpsum utility package. It contains
13 functions and procedures used by the main tax package.
14
15 MODIFICATION HISTORY
16 Person Date Version Bug Comments
17 --------- ---------- -------------- ------- --------------------------------
18 NCHINNAM 05-NOV-2012 115.0 ZA TYE2013 Changes
19
20 */
21
22 -------------------------------------------------------------------------------
23 -- PACKAGE GLOBAL AREA --
24 -------------------------------------------------------------------------------
25
26 -- Medical Tax Credit Lump Sum Changes
27 type LSDirRec is record
28 (
29 TxOnLSDirRUN NUMBER
30 ,TxOnLSDirPTD NUMBER
31 ,TxOnLSDirYTD NUMBER
32 ,MedTxCrUsedOnLSDirRUN NUMBER
33 ,MedTxCrUsedOnLSDirPTD NUMBER
34 ,MedTxCrUsedOnLSDirYTD NUMBER
35 );
36
37 type LSDirTab is table of LSDirRec index by VARCHAR2(100);
38
39 trc_LSDirTab LSDirTab;
40
41 type LS_Net_Txb_INC_Rec is record (
42 LSTxbIncMTD number,
43 LSNtiUpdFig number,
44 LSSkl number
45 );
46
47
48 type LSNetTxbIncTab IS TABLE OF LS_Net_Txb_INC_Rec INDEX BY VARCHAR2(100);
49
50 trc_LSNetTxbIncTab LSNetTxbIncTab;
51
52 type LSSklDirNum IS TABLE OF VARCHAR2(100) INDEX BY BINARY_INTEGER ;
53
54 trc_LSSklDirNumTab LSSklDirNum;
55
56 trc_LScount NUMBER DEFAULT 0;
57
58 -------------------------------------------------------------------------------
59 -- PACKAGE SPECIFICATION --
60 -------------------------------------------------------------------------------
61
62 FUNCTION ZATXMEDTXCRLMPSM1(
63 p_MedCrUsedLS OUT NOCOPY NUMBER
64 , p_DirNum1 OUT NOCOPY VARCHAR2
65 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
66 , p_DirNum2 OUT NOCOPY VARCHAR2
67 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
68 , p_DirNum3 OUT NOCOPY VARCHAR2
69 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
70 , p_DirNum4 OUT NOCOPY VARCHAR2
71 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
72 , p_DirNum5 OUT NOCOPY VARCHAR2
73 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
74 , p_DirNum6 OUT NOCOPY VARCHAR2
75 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
76 , p_DirNum7 OUT NOCOPY VARCHAR2
77 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
78 , p_DirNum8 OUT NOCOPY VARCHAR2
79 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
80 , p_DirNum9 OUT NOCOPY VARCHAR2
81 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
82 , p_DirNum10 OUT NOCOPY VARCHAR2
83 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
84 )RETURN NUMBER;
85
86 FUNCTION ZATXMEDTXCRLMPSM2(
87 p_MedCrUsedLS OUT NOCOPY NUMBER
88 , p_DirNum1 OUT NOCOPY VARCHAR2
89 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
90 , p_DirNum2 OUT NOCOPY VARCHAR2
91 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
92 , p_DirNum3 OUT NOCOPY VARCHAR2
93 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
94 , p_DirNum4 OUT NOCOPY VARCHAR2
95 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
96 , p_DirNum5 OUT NOCOPY VARCHAR2
97 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
98 , p_DirNum6 OUT NOCOPY VARCHAR2
99 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
100 , p_DirNum7 OUT NOCOPY VARCHAR2
101 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
102 , p_DirNum8 OUT NOCOPY VARCHAR2
103 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
104 , p_DirNum9 OUT NOCOPY VARCHAR2
105 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
106 , p_DirNum10 OUT NOCOPY VARCHAR2
107 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
108 )RETURN NUMBER;
109
110 FUNCTION ZATXMEDTXCRLMPSM3(
111 p_MedCrUsedLS OUT NOCOPY NUMBER
112 , p_DirNum1 OUT NOCOPY VARCHAR2
113 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
114 , p_DirNum2 OUT NOCOPY VARCHAR2
115 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
116 , p_DirNum3 OUT NOCOPY VARCHAR2
117 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
118 , p_DirNum4 OUT NOCOPY VARCHAR2
119 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
120 , p_DirNum5 OUT NOCOPY VARCHAR2
121 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
122 , p_DirNum6 OUT NOCOPY VARCHAR2
123 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
124 , p_DirNum7 OUT NOCOPY VARCHAR2
125 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
126 , p_DirNum8 OUT NOCOPY VARCHAR2
127 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
128 , p_DirNum9 OUT NOCOPY VARCHAR2
129 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
130 , p_DirNum10 OUT NOCOPY VARCHAR2
131 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
132 )RETURN NUMBER;
133
134 FUNCTION ZATXMEDTXCRLMPSM4(
135 p_MedCrUsedLS OUT NOCOPY NUMBER
136 , p_DirNum1 OUT NOCOPY VARCHAR2
137 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
138 , p_DirNum2 OUT NOCOPY VARCHAR2
139 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
140 , p_DirNum3 OUT NOCOPY VARCHAR2
141 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
142 , p_DirNum4 OUT NOCOPY VARCHAR2
143 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
144 , p_DirNum5 OUT NOCOPY VARCHAR2
145 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
146 , p_DirNum6 OUT NOCOPY VARCHAR2
147 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
148 , p_DirNum7 OUT NOCOPY VARCHAR2
149 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
150 , p_DirNum8 OUT NOCOPY VARCHAR2
151 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
152 , p_DirNum9 OUT NOCOPY VARCHAR2
153 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
154 , p_DirNum10 OUT NOCOPY VARCHAR2
155 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
156 )RETURN NUMBER;
157
158 FUNCTION ZATXMEDTXCRLMPSM5(
159 p_MedCrUsedLS OUT NOCOPY NUMBER
160 , p_DirNum1 OUT NOCOPY VARCHAR2
161 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
162 , p_DirNum2 OUT NOCOPY VARCHAR2
163 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
164 , p_DirNum3 OUT NOCOPY VARCHAR2
165 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
166 , p_DirNum4 OUT NOCOPY VARCHAR2
167 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
168 , p_DirNum5 OUT NOCOPY VARCHAR2
169 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
170 , p_DirNum6 OUT NOCOPY VARCHAR2
171 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
172 , p_DirNum7 OUT NOCOPY VARCHAR2
173 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
174 , p_DirNum8 OUT NOCOPY VARCHAR2
175 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
176 , p_DirNum9 OUT NOCOPY VARCHAR2
177 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
178 , p_DirNum10 OUT NOCOPY VARCHAR2
179 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
180 )RETURN NUMBER;
181
182 FUNCTION ZATXMEDTXCRLMPSM6(
183 p_MedCrUsedLS OUT NOCOPY NUMBER
184 , p_DirNum1 OUT NOCOPY VARCHAR2
185 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
186 , p_DirNum2 OUT NOCOPY VARCHAR2
187 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
188 , p_DirNum3 OUT NOCOPY VARCHAR2
189 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
190 , p_DirNum4 OUT NOCOPY VARCHAR2
191 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
192 , p_DirNum5 OUT NOCOPY VARCHAR2
193 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
194 , p_DirNum6 OUT NOCOPY VARCHAR2
195 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
196 , p_DirNum7 OUT NOCOPY VARCHAR2
197 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
198 , p_DirNum8 OUT NOCOPY VARCHAR2
199 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
200 , p_DirNum9 OUT NOCOPY VARCHAR2
201 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
202 , p_DirNum10 OUT NOCOPY VARCHAR2
203 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
204 )RETURN NUMBER;
205
206 FUNCTION ZATXMEDTXCRLMPSM7(
207 p_MedCrUsedLS OUT NOCOPY NUMBER
208 , p_DirNum1 OUT NOCOPY VARCHAR2
209 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
210 , p_DirNum2 OUT NOCOPY VARCHAR2
211 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
212 , p_DirNum3 OUT NOCOPY VARCHAR2
213 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
214 , p_DirNum4 OUT NOCOPY VARCHAR2
215 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
216 , p_DirNum5 OUT NOCOPY VARCHAR2
217 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
218 , p_DirNum6 OUT NOCOPY VARCHAR2
219 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
220 , p_DirNum7 OUT NOCOPY VARCHAR2
221 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
222 , p_DirNum8 OUT NOCOPY VARCHAR2
223 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
224 , p_DirNum9 OUT NOCOPY VARCHAR2
225 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
226 , p_DirNum10 OUT NOCOPY VARCHAR2
227 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
228 )RETURN NUMBER;
229
230 FUNCTION ZATXMEDTXCRLMPSM8(
231 p_MedCrUsedLS OUT NOCOPY NUMBER
232 , p_DirNum1 OUT NOCOPY VARCHAR2
233 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
234 , p_DirNum2 OUT NOCOPY VARCHAR2
235 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
236 , p_DirNum3 OUT NOCOPY VARCHAR2
237 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
238 , p_DirNum4 OUT NOCOPY VARCHAR2
239 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
240 , p_DirNum5 OUT NOCOPY VARCHAR2
241 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
242 , p_DirNum6 OUT NOCOPY VARCHAR2
243 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
244 , p_DirNum7 OUT NOCOPY VARCHAR2
245 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
246 , p_DirNum8 OUT NOCOPY VARCHAR2
247 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
248 , p_DirNum9 OUT NOCOPY VARCHAR2
249 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
250 , p_DirNum10 OUT NOCOPY VARCHAR2
251 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
252 )RETURN NUMBER;
253
254 FUNCTION ZATXMEDTXCRLMPSM9(
255 p_MedCrUsedLS OUT NOCOPY NUMBER
256 , p_DirNum1 OUT NOCOPY VARCHAR2
257 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
258 , p_DirNum2 OUT NOCOPY VARCHAR2
259 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
260 , p_DirNum3 OUT NOCOPY VARCHAR2
261 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
262 , p_DirNum4 OUT NOCOPY VARCHAR2
263 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
264 , p_DirNum5 OUT NOCOPY VARCHAR2
265 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
266 , p_DirNum6 OUT NOCOPY VARCHAR2
267 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
268 , p_DirNum7 OUT NOCOPY VARCHAR2
269 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
270 , p_DirNum8 OUT NOCOPY VARCHAR2
271 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
272 , p_DirNum9 OUT NOCOPY VARCHAR2
273 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
274 , p_DirNum10 OUT NOCOPY VARCHAR2
275 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
276 )RETURN NUMBER;
277
278 FUNCTION ZATXMEDTXCRLMPSM10(
279 p_MedCrUsedLS OUT NOCOPY NUMBER
280 , p_DirNum1 OUT NOCOPY VARCHAR2
281 , p_MedTxCrUsed1 OUT NOCOPY NUMBER
282 , p_DirNum2 OUT NOCOPY VARCHAR2
283 , p_MedTxCrUsed2 OUT NOCOPY NUMBER
284 , p_DirNum3 OUT NOCOPY VARCHAR2
285 , p_MedTxCrUsed3 OUT NOCOPY NUMBER
286 , p_DirNum4 OUT NOCOPY VARCHAR2
287 , p_MedTxCrUsed4 OUT NOCOPY NUMBER
288 , p_DirNum5 OUT NOCOPY VARCHAR2
289 , p_MedTxCrUsed5 OUT NOCOPY NUMBER
290 , p_DirNum6 OUT NOCOPY VARCHAR2
291 , p_MedTxCrUsed6 OUT NOCOPY NUMBER
292 , p_DirNum7 OUT NOCOPY VARCHAR2
293 , p_MedTxCrUsed7 OUT NOCOPY NUMBER
294 , p_DirNum8 OUT NOCOPY VARCHAR2
295 , p_MedTxCrUsed8 OUT NOCOPY NUMBER
296 , p_DirNum9 OUT NOCOPY VARCHAR2
297 , p_MedTxCrUsed9 OUT NOCOPY NUMBER
298 , p_DirNum10 OUT NOCOPY VARCHAR2
299 , p_MedTxCrUsed10 OUT NOCOPY NUMBER
300 )RETURN NUMBER;
301
302
303 -- Function to fetch the Directive Numbers
304
305 FUNCTION NetTxbSklDirNum(
306 p_chunk_num IN NUMBER
307 ,p_DirNum1 OUT NOCOPY VARCHAR2
308 ,p_DirNum2 OUT NOCOPY VARCHAR2
309 ,p_DirNum3 OUT NOCOPY VARCHAR2
310 ,p_DirNum4 OUT NOCOPY VARCHAR2
311 ,p_DirNum5 OUT NOCOPY VARCHAR2
312 ,p_DirNum6 OUT NOCOPY VARCHAR2
313 ,p_DirNum7 OUT NOCOPY VARCHAR2
314 ,p_DirNum8 OUT NOCOPY VARCHAR2
315 ,p_DirNum9 OUT NOCOPY VARCHAR2
316 ,p_DirNum10 OUT NOCOPY VARCHAR2
317 ,p_DirNum11 OUT NOCOPY VARCHAR2
318 ,p_DirNum12 OUT NOCOPY VARCHAR2
319 ,p_DirNum13 OUT NOCOPY VARCHAR2
320 ,p_DirNum14 OUT NOCOPY VARCHAR2
321 ,p_DirNum15 OUT NOCOPY VARCHAR2
322 )RETURN NUMBER ;
323
324 FUNCTION LSNetTxbIncUpd(
325 p_Dir_Num IN VARCHAR2
326 ,p_Dir_LSNetTxbInc OUT NOCOPY NUMBER
327 )RETURN NUMBER ;
328
329 FUNCTION LSSkillsLevy(
330 p_Dir_Num IN VARCHAR2
331 ,p_Dir_LSSkillsLevy OUT NOCOPY NUMBER
332 )RETURN NUMBER ;
333
334 FUNCTION LSDirCount RETURN NUMBER;
335
336 FUNCTION LSDirNetTxbInc(
337 p_Dir_Num IN VARCHAR2
338 ,p_LSNetTxbInc OUT NOCOPY NUMBER
339 ) RETURN NUMBER ;
340
341
342 END PY_ZA_TX_LS;