DBA Data[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;