DBA Data[Home] [Help]

PACKAGE: APPS.CE_BANK_AND_ACCOUNT_VALIDATION

Source


1 PACKAGE CE_BANK_AND_ACCOUNT_VALIDATION AUTHID CURRENT_USER AS
2 /*$Header: cebavals.pls 120.9.12010000.2 2009/02/06 06:34:23 talapati ship $ */
3 
4   /*=======================================================================+
5    | PUBLIC FUNCTION ce_check_numeric                                      |
6    |                                                                       |
7    | DESCRIPTION                                                           |
8    |   Check if a value is numeric                                         |
9    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
10    |                                                                       |
11    | ARGUMENTS                                                             |
12    |   IN:                                                                 |
13    |     check_value                                                       |
14    |     pos_from                                                          |
15    |     pos_to                                                            |
16    +=======================================================================*/
17    FUNCTION ce_check_numeric(check_value VARCHAR2,
18                                pos_from    NUMBER,
19                                pos_for     NUMBER  )  RETURN VARCHAR2;
20 
21   /*=======================================================================+
22    | PUBLIC PROCEDURE  validate_bank                                       |
23    |   This procedure should be registered as the value of the profile     |
24    |   option 'HZ_BANK_VALIDATION_PROCEDURE' in fnd_profile_option_values  |
25    | DESCRIPTION                                                           |
26    |   Dynamic bound validation routine.                                   |
27    |   Validate the combination of country and bank name is unique. This   |
28    |   procedure is called by TCA create_bank/update_bank API              |
29    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
30    |                                                                       |
31    | ARGUMENTS                                                             |
32    |   IN:                                                                 |
33    |     p_temp_org_profile_id   temp_id in HZ_ORG_PROFILE_VAL_GT table    |
34    +=======================================================================*/
35    PROCEDURE validate_bank (p_temp_id         IN  NUMBER,
36                             x_return_status   IN OUT NOCOPY VARCHAR2);
37 
38 
39   /*=======================================================================+
40    | PUBLIC PROCEDURE validate_branch                                      |
41    |   This procedure should be registered as the value of the profile     |
42    |   option of 'HZ_BANK_BRANCH_VALIDATION_PROCEDURE' in                  |
43    |   fnd_profile_option_values                                           |
44    |                                                                       |
45    | DESCRIPTION                                                           |
46    |   Dynamic bound validation routine.                                   |
47    |   This procedure is called by TCA create_bank_branch/                 |
48    |   update_bank_branch API                                              |
49    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
50    |                                                                       |
51    | ARGUMENTS                                                             |
52    |   IN:                                                                 |
53    |     p_temp_org_profile_id   temp_id in HZ_ORG_PROFILE_VAL_GT table    |
54    +=======================================================================*/
55    PROCEDURE validate_branch (p_temp_org_profile_id   IN  NUMBER,
56                               x_return_status         IN OUT NOCOPY VARCHAR2);
57 
58 
59 
60   /*=======================================================================+
61    | PUBLIC PROCEDURE validate_org                                         |
62    |                                                                       |
63    | DESCRIPTION                                                           |
64    |   Validate the org is a valid org in TCA/HR and satisfies             |
65    |   MO security profile                                                 |
66    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
67    |                                                                       |
68    | ARGUMENTS                                                             |
69    |   IN:                                                                 |
70    |     p_org_name  		name of org to be validated                |
71    |     p_org_classification	HR_BG (Business Group)                     |
72    |                            OPERATING_UNIT                             |
73    |                            HR_LEGAL                                   |
74    |     p_security_profile_id                                             |
75    +=======================================================================*/
76 /*
77    PROCEDURE validate_org (p_org_id			IN  NUMBER,
78 			   p_org_classification		IN  VARCHAR2,
79 			   p_security_profile_id	IN  NUMBER,
80 			   x_out                        OUT NUMBER);
81 */
82 
83   /*=======================================================================+
84    | PUBLIC PROCEDURE validate_currency                                    |
85    |                                                                       |
86    | DESCRIPTION                                                           |
87    |   Validate the currency_code is valid in FND_CURRENCIES               |
88    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
89    |                                                                       |
90    | ARGUMENTS                                                             |
91    |   IN:                                                                 |
92    |     p_currency_code                                                   |
93    +=======================================================================*/
94    PROCEDURE validate_currency (p_currency_code		IN  VARCHAR2,
95 				x_return_status         IN OUT NOCOPY VARCHAR2);
96 
97 
98   /*=======================================================================+
99    | PUBLIC PROCEDURE validate_account_name                                |
100    |                                                                       |
101    | DESCRIPTION                                                           |
102    |   Validate the account_name is unique within a branch                 |
103    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
104    |                                                                       |
105    | ARGUMENTS                                                             |
106    |   IN:                                                                 |
107    |     p_branch_id                                                       |
108    |     p_account_name                                                    |
109    +=======================================================================*/
110    PROCEDURE validate_account_name (p_branch_id		IN  NUMBER,
111 				    p_account_name	IN  VARCHAR2,
112 				    p_account_id	IN  NUMBER,
113 				    x_return_status     IN OUT NOCOPY VARCHAR2);
114 
115   /*=======================================================================+
116    | PUBLIC PROCEDURE validate_IBAN                                        |
117    |                                                                       |
118    | DESCRIPTION                                                           |
119    |   Validate IBAN according to IBAN validation rules                    |
120    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
121    |                                                                       |
122    | ARGUMENTS                                                             |
123    |   IN:                                                                 |
124    |     p_IBAN                                                            |
125    +=======================================================================*/
126    PROCEDURE validate_IBAN (p_IBAN         	IN  VARCHAR2,
127 			    p_IBAN_OUT     	OUT NOCOPY VARCHAR2,
128 			    x_return_status     IN OUT NOCOPY VARCHAR2 );
129 
130 
131   /*=======================================================================+
132    | PUBLIC PROCEDURE validate_account_use                                |
133    |                                                                       |
134    | DESCRIPTION                                                           |
135    |   At least one use is selected for the bank account                   |
136    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
137    |                                                                       |
138    | ARGUMENTS                                                             |
139    |   IN:                                                                 |
140    |     p_ap, p_ar, p_pay, p_xtr                                          |
141    +=======================================================================*/
142    PROCEDURE validate_account_use(p_ap      IN  VARCHAR2,
143                                   p_ar      IN  VARCHAR2,
144                                   p_pay     IN  VARCHAR2,
145                                   p_xtr     IN  VARCHAR2,
146 			    x_return_status     IN OUT NOCOPY VARCHAR2 );
147 
148   /*=======================================================================+
149    | PUBLIC PROCEDURE validate_end_date                                    |
150    |                                                                       |
151    | DESCRIPTION                                                           |
152    |   Validate the end date cannot be earlier than the start date         |
153    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
154    |                                                                       |
155    | ARGUMENTS                                                             |
156    |   IN:                                                                 |
157    |     p_start_date, p_end_date                                          |
158    +=======================================================================*/
159    PROCEDURE validate_end_date(p_start_date    IN  DATE,
160                                p_end_date      IN  DATE,
161 			    x_return_status     IN OUT NOCOPY VARCHAR2 );
162 
163   /*=======================================================================+
164    | PUBLIC PROCEDURE validate_short_account_name                          |
165    |                                                                       |
166    | DESCRIPTION                                                           |
167    |   Short Account Name is required when Xtr use is selected for the     |
168    |     bank account                                                      |
169    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
170    |                                                                       |
171    | ARGUMENTS                                                             |
172    |   IN:                                                                 |
173    |     p_short_account_name, p_xtr                                       |
174    +=======================================================================*/
175    PROCEDURE validate_short_account_name(p_short_account_name  IN  VARCHAR2,
176                                   	 p_xtr   	       IN  VARCHAR2,
177 			    x_return_status     IN OUT NOCOPY VARCHAR2 );
178 
179   /*=======================================================================+
180    | PUBLIC FUNCTION Get_Emp_Name                                         |
181    |                                                                       |
182    | DESCRIPTION                                                           |
183    |    Get Employee Name                                                  |
184    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
185    |                                                                       |
186    | ARGUMENTS                                                             |
187    |   IN:                                                                 |
188    |     p_emp_id                                                          |
189    +=======================================================================*/
190    FUNCTION Get_Emp_Name( p_emp_id NUMBER )
191 	RETURN VARCHAR2;
192 
193   /*=======================================================================+
194    | PUBLIC FUNCTION Get_Org_Type                                          |
195    |                                                                       |
196    | DESCRIPTION                                                           |
197    |   Get Organization Type                                               |
198    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
199    |                                                                       |
200    | ARGUMENTS                                                             |
201    |   IN:                                                                 |
202    |     p_org_id                                                          |
203    +=======================================================================*/
204    FUNCTION Get_Org_Type( p_org_id NUMBER )
205 	RETURN VARCHAR2;
206 
207 
208   /*=======================================================================+
209    | PUBLIC FUNCTION Get_Org_Type_Code                                     |
210    |                                                                       |
211    | DESCRIPTION                                                           |
212    |   Get Organization Type Code.  Used in Systerm Parameters.            |
213    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
214    |                                                                       |
215    | ARGUMENTS                                                             |
216    |   IN:                                                                 |
217    |     p_org_id                                                          |
218    +=======================================================================*/
219    FUNCTION Get_Org_Type_Code( p_org_id NUMBER )
220         RETURN VARCHAR2;
221 
222 
223   /*=======================================================================+
224    | PUBLIC PROCEDURE validate_account_access_org                          |
225    |                                                                       |
226    | DESCRIPTION                                                           |
227    |   Validate that the account use is valid for the org                  |
228    |
229    |    Validate organization use
230    |    Access Org        | Org can be          | Org cannot be
231    |    Classification    | use in              | use In
232    |    --------------------------------------------------------------
233    |    LE                | XTR                 | AP, AR, PAY
234    |    BG                | PAY                 | AR, AP, XTR
235    |    OU                | AP, AR              | PAY, XTR
236    |    BG and OU         | AP, AR, PAY         | XTR
237    |                                                                       |
238    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
239    |                                                                       |
240    | ARGUMENTS                                                             |
241    |   IN:                                                                 |
242    |     p_ap, p_ar, p_pay, p_xtr, p_org_id                                |
243    +=======================================================================*/
244    PROCEDURE validate_account_access_org(p_ap      IN  VARCHAR2,
245                                   p_ar      IN  VARCHAR2,
246                                   p_pay     IN  VARCHAR2,
247                                   p_xtr     IN  VARCHAR2,
248 				  p_org_type IN VARCHAR2,
249 				  p_org_id  IN	NUMBER ,
250 			    x_return_status     IN OUT NOCOPY VARCHAR2 );
254    | PUBLIC PROCEDURE VALIDATE_ALC                                         |
251 
252 
253   /*=======================================================================+
255    |                                                                       |
256    | DESCRIPTION                                                           |
257    |   Validate Agency Location Code		                           |
258    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
259    |                                                                       |
260    | ARGUMENTS                                                             |
261    |   IN:                                                                 |
262    |    ALC_VALUE                                                          |
263    |   OUT                                                                 |
264    |    x_msg_count                                                        |
265    |    x_msg_data                                                         |
266    |    X_VALUE_OUT                                                        |
267    +=======================================================================*/
268    PROCEDURE VALIDATE_ALC(ALC_VALUE in varchar2,
269  			  p_init_msg_list   IN  VARCHAR2 := FND_API.G_FALSE,
270     			      x_msg_count      OUT NOCOPY NUMBER,
271 			      x_msg_data       OUT NOCOPY VARCHAR2,
272 		              X_VALUE_OUT      OUT NOCOPY VARCHAR2,
273 			      x_return_status     IN OUT NOCOPY VARCHAR2);
274 
275 
276   /*=======================================================================+
277    | PUBLIC PROCEDURE validate_country                                     |
278    |                                                                       |
279    | DESCRIPTION                                                           |
280    |   Check to see that the country specified is defined in               |
281    |   territories.                                                        |
282    |                                                                       |
283    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
284    |                                                                       |
285    | ARGUMENTS                                                             |
286    |   IN:                                                                 |
287    |    p_country_code							   |
288    |   OUT                                                                 |
289    |    x_return_status                                                    |
290    |                                                                       |
291    | MODIFICATION HISTORY                                                  |
292    |   27-NOV-2001    Xin Wang      Created.                               |
293    +=======================================================================*/
294   PROCEDURE validate_country (
295     p_country_code  IN     VARCHAR2,
296     x_return_status IN OUT NOCOPY VARCHAR2
297   );
298 
299   /*=======================================================================+
300    | PUBLIC PROCEDURE validate_def_settlement                              |
301    |                                                                       |
302    | DESCRIPTION                                                           |
303    |   Allow only one account per currency and account use (AP or XTR)     |
304    |   to be flagged as the default settlement account for each  LE or OU  |
305    |                                                                       |
306    |   Possible combination:                                               |
307    |   LE1, USD, AP USE,  BANK ACCOUNT 1                                   |
308    |   LE1, USD, XTR USE, BANK ACCOUNT 2                                   |
309    |   OU1, USD, AP USE,  BANK ACCOUNT 1                                   |
310    |   OU1, USD, XTR USE, BANK ACCOUNT 1                                   |
311    |                                                                       |
312    |                                                                       |
313    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
314    |                                                                       |
315    | ARGUMENTS                                                             |
316    |   IN:                                                                 |
317    |    p_bank_account_id - required 					   |
318    |    p_bank_acct_use_id - required 					   |
319    |    p_org_id - required	                                           |
320    |    p_ap_def_settlement, p_xtr_def_settlement, p_init_msg_list	   |
321    |   OUT                                                                 |
322    |    x_return_status                                                    |
323    |    x_msg_count                                                        |
324    |	x_msg_data   	                                                   |
325    |		                                                           |
326    | MODIFICATION HISTORY                                                  |
327    |   21-DEC-2004    lkwan         Created.                               |
328    +=======================================================================*/
329   PROCEDURE validate_def_settlement(
330 		p_bank_account_id 	IN  number,
331 		p_bank_acct_use_id 	IN  number,
332 		p_org_id 		IN  number,
333 		p_ap_def_settlement 	in  VARCHAR2,
334 		p_xtr_def_settlement 	in  VARCHAR2,
335 		p_init_msg_list   IN  VARCHAR2 := FND_API.G_FALSE,
336     		x_msg_count      OUT NOCOPY NUMBER,
337 		x_msg_data       OUT NOCOPY VARCHAR2,
338                 x_return_status IN OUT NOCOPY VARCHAR2);
339 
343    | DESCRIPTION                                                           |
340   /*=======================================================================+
341    | PUBLIC FUNCTION get_masked_account_num                                |
342    |                                                                       |
344    |   Passing the bank_account_num and return the                         |
345    |   masked bank_account_num based on the profile option:                |
346    |     CE: MASK INTERNAL BANK ACCOUNT NUMBER                             |
347    |                                                                       |
348    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
349    |                                                                       |
350    | ARGUMENTS                                                             |
351    |   IN:                                                                 |
352    |   p_bank_account_num                                                  |
353    |                                                                       |
354    |                                                                       |
355    | MODIFICATION HISTORY                                                  |
356    |   23-NOV-2004    lkwan         Created.                               |
357    +=======================================================================*/
358 /*
359   FUNCTION get_masked_account_num (
360     p_bank_account_num  IN     VARCHAR2,
361     p_acct_class  IN     VARCHAR2
362   ) RETURN VARCHAR2;
363 */
364 
365   /*=======================================================================+
366    | PUBLIC PROCEDURE validate_unique_org_access                           |
367    |                                                                       |
368    | DESCRIPTION                                                           |
369    |    The combination or bank_account_id and org_id/legal_entity_id in   |
370    |    in CE_BANK_ACCT_USES_ALL should be unique.                         |
371    |                                                                       |
372    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
373    |                                                                       |
374    | ARGUMENTS                                                             |
375    |   IN:                                                                 |
376    |    p_org_le_id                                                        |
377    |    p_bank_account_id                                                  |
378    |   OUT                                                                 |
379    |    x_return_status                                                    |
380    |                                                                       |
381    | MODIFICATION HISTORY                                                  |
382    |   22-JUN-2005    Xin Wang      Created.                               |
383    +=======================================================================*/
384   PROCEDURE validate_unique_org_access (
385     p_org_le_id        IN     NUMBER,
386     p_bank_account_id  IN     NUMBER,
387     p_acct_use_id      IN     NUMBER,
388     x_return_status    IN OUT NOCOPY VARCHAR2
389   );
390 
391   /*=======================================================================+
392    | PUBLIC PROCEDURE get_pay_doc_cat                              |
393    |                                                                       |
394    | DESCRIPTION                                                           |
395    |    Obtaining the correct document category will be a hierarchical
396    |     approach:
397    |     1) payment document
398    |     2) bank account use/payment method
399    |     3) bank account use                                               |
400    |                                                                       |
401    | ARGUMENTS                                                             |
402    |   IN:                                                                 |
403    |    P_PAYMENT_DOCUMENT_ID
404    |    P_PAYMENT_METHOD_CODE
405    |    P_BANK_ACCT_USE_ID
406    |   OUT                                                                 |
407    |    P_PAYMENT_DOC_CATEGORY_ID ("-1" if no category code is defined)
408    |		                                                           |
409    | MODIFICATION HISTORY                                                  |
410    |   21-FEB-2006    lkwan         Created.                               |
411    +=======================================================================*/
412    PROCEDURE get_pay_doc_cat(
413 		P_PAYMENT_DOCUMENT_ID 	IN  number,
414 		P_PAYMENT_METHOD_CODE 	IN  VARCHAR2,
415 		P_BANK_ACCT_USE_ID	IN  number,
416 		P_PAYMENT_DOC_CATEGORY_CODE  OUT NOCOPY VARCHAR2);
417 
418 
419  /*=======================================================================+
420    | PUBLIC FUNCTION Get_Org_Type_Code_Isetup                              |
421    |                                                                       |
422    | DESCRIPTION                                                           |
423    |   Get Organization Type Code.  Used in Systerm Parameters.            |
424    | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED                                |
425    |                                                                       |
426    | ARGUMENTS                                                             |
427    |   IN:                                                                 |
428    |     p_org_id                                                          |
429    +=======================================================================*/
430    FUNCTION Get_Org_Type_Code_Isetup( p_org_id NUMBER )
431         RETURN VARCHAR2;
432 
433 
434 END CE_BANK_AND_ACCOUNT_VALIDATION;