DBA Data[Home] [Help]

PACKAGE BODY: APPS.JG_ZZ_GLOBAL_FLEX_VALD_PKG

Source


1 PACKAGE BODY JG_ZZ_GLOBAL_FLEX_VALD_PKG AS
2 /* $Header: jgzzrfvb.pls 120.7 2005/08/25 23:30:55 cleyvaol ship $ */
3 
4 /*----------------------------------------------------------------------------*
5  |   PUBLIC FUNCTIONS/PROCEDURES  					      |
6  *----------------------------------------------------------------------------*/
7 
8 
9 PG_DEBUG varchar2(1) ;
10 
11 PROCEDURE Validate_Global_Flexfield(
12                           p_global_attribute_category  IN OUT NOCOPY VARCHAR2,
13                           p_global_attribute1  IN OUT NOCOPY VARCHAR2,
14                           p_global_attribute2  IN OUT NOCOPY VARCHAR2,
15                           p_global_attribute3  IN OUT NOCOPY VARCHAR2,
16                           p_global_attribute4  IN OUT NOCOPY VARCHAR2,
17                           p_global_attribute5  IN OUT NOCOPY VARCHAR2,
18                           p_global_attribute6  IN OUT NOCOPY VARCHAR2,
19                           p_global_attribute7  IN OUT NOCOPY VARCHAR2,
20                           p_global_attribute8  IN OUT NOCOPY VARCHAR2,
21                           p_global_attribute9  IN OUT NOCOPY VARCHAR2,
22                           p_global_attribute10 IN OUT NOCOPY VARCHAR2,
23                           p_global_attribute11 IN OUT NOCOPY VARCHAR2,
24                           p_global_attribute12 IN OUT NOCOPY VARCHAR2,
25                           p_global_attribute13 IN OUT NOCOPY VARCHAR2,
26                           p_global_attribute14 IN OUT NOCOPY VARCHAR2,
27                           p_global_attribute15 IN OUT NOCOPY VARCHAR2,
28                           p_global_attribute16 IN OUT NOCOPY VARCHAR2,
29                           p_global_attribute17 IN OUT NOCOPY VARCHAR2,
30                           p_global_attribute18 IN OUT NOCOPY VARCHAR2,
31                           p_global_attribute19 IN OUT NOCOPY VARCHAR2,
32                           p_global_attribute20 IN OUT NOCOPY VARCHAR2,
33                           p_desc_flex_name      IN VARCHAR2,
34                           p_return_status       IN OUT NOCOPY  varchar2
35                          ) IS
36 
37 l_flex_name     fnd_descriptive_flexs.descriptive_flexfield_name%type;
38 l_count         NUMBER;
39 l_col_name     VARCHAR2(50);
40 l_flex_exists  VARCHAR2(1);
41 CURSOR desc_flex_exists IS
42   SELECT 'Y'
43   FROM fnd_descriptive_flexs
44   WHERE application_id = 7003
45     and descriptive_flexfield_name = p_desc_flex_name;
46 BEGIN
47     IF PG_DEBUG in ('Y', 'C') THEN
48        arp_util.debug('Validate_Global_Flexfield ()+');
49     END IF;
50       p_return_status := FND_API.G_RET_STS_SUCCESS;
51 
52       OPEN desc_flex_exists;
53       FETCH desc_flex_exists INTO l_flex_exists;
54       IF desc_flex_exists%NOTFOUND THEN
55        CLOSE desc_flex_exists;
56        p_return_status :=  FND_API.G_RET_STS_ERROR;
57        return;
58       END IF;
59       CLOSE desc_flex_exists;
60 
61 
62      fnd_flex_descval.set_context_value(p_global_attribute_category);
63 
64      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE1', p_global_attribute1);
65      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE2', p_global_attribute2);
66      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE3', p_global_attribute3);
67      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE4', p_global_attribute4);
68      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE5', p_global_attribute5);
69      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE6', p_global_attribute6);
70      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE7', p_global_attribute7);
71      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE8', p_global_attribute8);
72      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE9', p_global_attribute9);
73      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE10', p_global_attribute10);
74      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE11', p_global_attribute11);
75      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE12', p_global_attribute12);
76      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE13', p_global_attribute13);
77      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE14', p_global_attribute14);
78      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE15', p_global_attribute15);
79      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE16', p_global_attribute16);
80      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE17', p_global_attribute17);
81      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE18', p_global_attribute18);
82      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE19', p_global_attribute19);
83      fnd_flex_descval.set_column_value('GLOBAL_ATTRIBUTE20', p_global_attribute20);
84 
85  --   IF ( NOT fnd_flex_descval.validate_desccols('JG',p_desc_flex_name,'V') ) -- Bug 3414555
86      IF ( NOT fnd_flex_descval.validate_desccols('JG',p_desc_flex_name,'I') )
87      THEN
88 
89        FND_MESSAGE.SET_NAME('AR', 'AR_RAPI_DESC_FLEX_INVALID');
90        FND_MESSAGE.SET_TOKEN('DFF_NAME',p_desc_flex_name);
91        FND_MSG_PUB.ADD ;
92        p_return_status := FND_API.G_RET_STS_ERROR;
93     END IF;
94 
95       l_count := fnd_flex_descval.segment_count;
96 
97       FOR i in 1..l_count LOOP
98         l_col_name := fnd_flex_descval.segment_column_name(i);
99 
100     /*    IF l_col_name = 'GLOBAL_ATTRIBUTE_CATEGORY'  THEN
101           p_global_attribute_category := fnd_flex_descval.segment_value(i); */ -- Bug 3414555
102         IF l_col_name = 'GLOBAL_ATTRIBUTE1' THEN
103           p_global_attribute1 := fnd_flex_descval.segment_value(i);
104         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE2' THEN
105           p_global_attribute2 := fnd_flex_descval.segment_value(i);
106         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE3' THEN
107           p_global_attribute3 := fnd_flex_descval.segment_value(i);
108         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE4' THEN
109           p_global_attribute4 := fnd_flex_descval.segment_value(i);
110         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE5' THEN
111           p_global_attribute5 := fnd_flex_descval.segment_value(i);
112         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE6' THEN
113           p_global_attribute6 := fnd_flex_descval.segment_value(i);
114         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE7' THEN
115           p_global_attribute7 := fnd_flex_descval.segment_value(i);
116         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE8' THEN
117           p_global_attribute8 := fnd_flex_descval.segment_value(i);
118         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE9' THEN
119           p_global_attribute9 := fnd_flex_descval.segment_value(i);
120         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE10' THEN
121           p_global_attribute10 := fnd_flex_descval.segment_value(i);
122         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE11' THEN
123           p_global_attribute11 := fnd_flex_descval.segment_value(i);
124         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE12' THEN
125           p_global_attribute12 := fnd_flex_descval.segment_value(i);
126         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE13' THEN
127           p_global_attribute13 := fnd_flex_descval.segment_value(i);
128         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE14' THEN
129           p_global_attribute14 := fnd_flex_descval.segment_value(i);
130         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE15' THEN
131           p_global_attribute15 := fnd_flex_descval.segment_value(i);
132         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE16' THEN
133           p_global_attribute16 := fnd_flex_descval.segment_value(i);
134         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE17' THEN
135           p_global_attribute17 := fnd_flex_descval.segment_value(i);
136         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE18' THEN
137           p_global_attribute18 := fnd_flex_descval.segment_value(i);
138         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE19' THEN
139           p_global_attribute19 := fnd_flex_descval.segment_value(i);
140         ELSIF l_col_name = 'GLOBAL_ATTRIBUTE20' THEN
141           p_global_attribute20 := fnd_flex_descval.segment_value(i);
142         END IF;
143 
144         IF i > l_count  THEN
145           EXIT;
146         END IF;
147        END LOOP;
148 
149         IF PG_DEBUG in ('Y', 'C') THEN
150            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute_category  : '||p_global_attribute_category);
151            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute1          : '||p_global_attribute1);
152            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute2          : '||p_global_attribute2);
153            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute3          : '||p_global_attribute3);
154            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute4          : '||p_global_attribute4);
155            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute5          : '||p_global_attribute5);
156            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute6          : '||p_global_attribute6);
157            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute7          : '||p_global_attribute7);
158            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute8          : '||p_global_attribute8);
159            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute9          : '||p_global_attribute9);
160            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute10         : '||p_global_attribute10);
161            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute11         : '||p_global_attribute11);
162            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute12         : '||p_global_attribute12);
163            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute13         : '||p_global_attribute13);
164            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute14         : '||p_global_attribute14);
165            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute15         : '||p_global_attribute15);
166            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute16         : '||p_global_attribute16);
167            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute17         : '||p_global_attribute17);
168            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute18         : '||p_global_attribute18);
169            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute19         : '||p_global_attribute19);
170            arp_util.debug('Validate_Global_Flexfield: ' || 'global_attribute20         : '||p_global_attribute20);
171       arp_util.debug('Validate_Global_Flexfield ()-');
172    END IF;
173 END Validate_Global_Flexfield;
174 
175 PROCEDURE Validate_Global_Attb_Cat(
176                                  p_global_attribute_category IN  VARCHAR2,
177                                  p_product_code              IN  VARCHAR2,
178                                  p_country_code              IN  VARCHAR2,
179                                  p_form_name                 IN  VARCHAR2,
180                                  p_return_status             OUT NOCOPY BOOLEAN) IS
181 x_gac_product  VARCHAR2(2);
182 x_gac_country  VARCHAR2(2);
183 x_gac_form     VARCHAR2(8);
184 
185 BEGIN
186 
187    IF PG_DEBUG in ('Y', 'C') THEN
188       arp_util.debug('Validate_Global_Attb_Cat()+');
189    END IF;
190 
191    x_gac_product := substr(p_global_attribute_category,1,2);
192    x_gac_country := substr(p_global_attribute_category,4,2);
193    x_gac_form := substr(p_global_attribute_category,7,8);
194 
195    IF  (x_gac_product = p_product_code) AND (x_gac_country = p_country_code)
196    AND (x_gac_form = p_form_name) THEN
197      p_return_status := TRUE;
198    ELSE
199      p_return_status := FALSE;
200    END IF;
201 
202    IF PG_DEBUG in ('Y', 'C') THEN
203       arp_util.debug('Validate_Global_Attb_Cat()-');
204    END IF;
205 
206 END Validate_Global_Attb_Cat;
207 
208 BEGIN
209 
210 
211 PG_DEBUG := NVL(FND_PROFILE.value('AR_ENABLE_DEBUG_OUTPUT'), 'N');
212 
213 END jg_zz_global_flex_vald_pkg;