[Home] [Help]
PACKAGE BODY: APPS.ZX_TRN_VALIDATION_OTHERS_PKG
Source
1 package body ZX_TRN_VALIDATION_OTHERS_PKG AS
2 /* $Header: zxctrndb.pls 120.1 2004/12/02 17:56:06 thwon noship $ */
3
4 -- Logging Infra
5 G_CURRENT_RUNTIME_LEVEL NUMBER;
6 G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
7 G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
8 G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
9 G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
10 G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
11 G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
12 G_MODULE_NAME CONSTANT VARCHAR2(50) := 'ZX.PLSQL.ZX_TRN_VALIDATION_NEW_PKG.';
13 -- Logging Infra
14
15
16 procedure VALIDATE_TRN (p_country_code IN VARCHAR2,
17 p_trn_value IN VARCHAR2,
18 p_trn_type IN VARCHAR2,
19 p_check_unique_flag IN VARCHAR2,
20 x_return_status OUT NOCOPY VARCHAR2,
21 x_error_buffer OUT NOCOPY VARCHAR2)
22 AS
23
24 -- Logging Infra
25 l_procedure_name CONSTANT VARCHAR2(30) := 'VALIDATE_TRN';
26 l_log_msg FND_LOG_MESSAGES.MESSAGE_TEXT%TYPE;
27
28 /**************************/
29 /* SUB-PROCEDURES SECTION */
30 /**************************/
31
32 FUNCTION check_numeric(p_check_value IN VARCHAR2,
33 p_from IN NUMBER,
34 p_for IN NUMBER) RETURN VARCHAR2
35 IS
36 num_check VARCHAR2(40);
37
38 BEGIN
39
40 num_check := '1';
41 num_check := nvl( rtrim(
42 translate( substr(p_check_value,p_from,p_for),
43 '1234567890',
44 ' ' ) ), '0' );
45
46 RETURN(num_check);
47 END check_numeric;
48
49 procedure fail_uniqueness is
50 begin
51
52 -- Logging Infra: Statement level
53 IF ( G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
54 l_log_msg := 'The Tax Registration Number is already used.';
55 FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME || l_procedure_name, l_log_msg);
56 END IF;
57 -- Logging Infra
58
59 x_return_status := FND_API.G_RET_STS_ERROR;
60 x_error_buffer := 'ZX_REG_NUM_INVALID';
61
62 end fail_uniqueness;
63
64 procedure fail_check is
65 begin
66
67 -- Logging Infra: Statement level
68 IF ( G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
69 l_log_msg := 'Failed the validation of the Tax Registration Number.';
70 FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME || l_procedure_name, l_log_msg);
71 END IF;
72 -- Logging Infra
73
74 x_return_status := FND_API.G_RET_STS_ERROR;
75 x_error_buffer := 'ZX_REG_NUM_INVALID';
76 end fail_check;
77
78 procedure pass_check is
79 begin
80
81 -- Logging Infra: Statement level
82 IF ( G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
83 l_log_msg := 'The Tax Registration Number is valid.';
84 FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME || l_procedure_name, l_log_msg);
85 END IF;
86 -- Logging Infra
87
88 x_return_status := FND_API.G_RET_STS_SUCCESS;
89 x_error_buffer := NULL;
90 end pass_check;
91
92 /****************/
93 /* MAIN SECTION */
94 /****************/
95
96 BEGIN
97
98 -- Logging Infra: Setting up runtime level
99 G_CURRENT_RUNTIME_LEVEL := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
100
101 -- Logging Infra: Procedure level
102 IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL ) THEN
103 l_log_msg := l_procedure_name||'(+)';
104 FND_LOG.STRING(G_LEVEL_PROCEDURE, G_MODULE_NAME||l_procedure_name||'.begin', l_log_msg);
105 END IF;
106 -- Logging Infra
107
108 -- Logging Infra: Statement level
109 IF ( G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
110 l_log_msg := 'Parameters ';
111 l_log_msg := l_log_msg||'p_country_code: '||p_country_code;
112 l_log_msg := l_log_msg||' p_trn_value: '||p_trn_value;
113 l_log_msg := l_log_msg||' p_trn_type: '||p_trn_type;
114 l_log_msg := l_log_msg||' p_check_unique_flag: '||p_check_unique_flag;
115 FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME || l_procedure_name, l_log_msg);
116 END IF;
117 -- Logging Infra
118
119 IF p_check_unique_flag = 'E' THEN
120
121 fail_uniqueness;
122
123 ELSE
124
125 /* Add the country specific validation code to here */
126
127 pass_check;
128
129 END IF;
130
131 END VALIDATE_TRN;
132
133 /* *********** End VALIDATE_TRN ****************** */
134
135 END ZX_TRN_VALIDATION_OTHERS_PKG;