DBA Data[Home] [Help]

PACKAGE BODY: APPS.BIS_PMV_PARAMETERS_PUB

Source


1 PACKAGE BODY BIS_PMV_PARAMETERS_PUB as
2 /* $Header: BISPPARB.pls 120.3 2006/05/11 18:09:25 serao noship $ */
3 -- dbdrv: sql ~PROD ~PATH ~FILE none none none package &phase=plb \
4 -- dbdrv: checkfile(115.9=120.3):~PROD:~PATH:~FILE
5 
6 PROCEDURE RETRIEVE_PAGE_PARAMETER
7 (p_page_session_rec     IN  BIS_PMV_PARAMETERS_PUB.page_session_rec_type
8 ,p_parameter_rec        IN  OUT NOCOPY BIS_PMV_PARAMETERS_PUB.parameter_rec_type
9 ,x_return_status        OUT NOCOPY VARCHAR2
10 ,x_msg_count            OUT NOCOPY NUMBER
11 ,x_msg_data             OUT NOCOPY VARCHAR2
12 ) IS
13 BEGIN
14   SELECT session_description,
15          session_value,
16          period_date,
17          dimension,
18          operator
19   INTO   p_parameter_rec.parameter_description,
20          p_parameter_rec.parameter_value,
21          p_parameter_rec.period_date,
22          p_parameter_rec.dimension,
23          p_parameter_rec.operator
24   FROM   BIS_USER_ATTRIBUTES
25   WHERE  attribute_name = p_parameter_rec.parameter_name
26   AND    user_id = p_page_session_rec.user_id
27   AND    page_id = p_page_session_rec.page_id;
28 EXCEPTION
29   WHEN FND_API.G_EXC_ERROR THEN
30        x_return_status := FND_API.G_RET_STS_ERROR;
31        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
32 x_msg_data);
33   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
34        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
35        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
36 x_msg_data);
37   WHEN OTHERS THEN
38        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
39        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
40 x_msg_data);
41 END RETRIEVE_PAGE_PARAMETER;
42 
43 PROCEDURE RETRIEVE_PAGE_PARAMETERS
44 (p_page_session_rec     IN  BIS_PMV_PARAMETERS_PUB.page_session_rec_type
45 ,x_page_param_tbl       OUT NOCOPY BIS_PMV_PARAMETERS_PUB.parameter_tbl_type
46 ,x_return_status        OUT NOCOPY VARCHAR2
47 ,x_msg_count            OUT NOCOPY NUMBER
48 ,x_msg_data             OUT NOCOPY VARCHAR2
49 ) IS
50  l_index NUMBER := 1;
51  l_parameter_rec BIS_PMV_PARAMETERS_PUB.parameter_rec_type;
52  CURSOR c_parameter_cursor IS
53  SELECT attribute_name,
54         session_description,
55         session_value,
56         period_date,
57         dimension,
58         operator
59  FROM   BIS_USER_ATTRIBUTES
60  WHERE  user_id = p_page_session_rec.user_id
61  AND    page_id = p_page_session_rec.page_id
62  AND   dimension <>  'TIME_COMPARISON_TYPE'
63  AND   attribute_name <> 'AS_OF_DATE';
64 BEGIN
65  FOR c_parameter_rec in c_parameter_cursor LOOP
66      l_parameter_rec.parameter_name := c_parameter_rec.attribute_name;
67      l_parameter_rec.parameter_description := c_parameter_rec.session_description;
68      l_parameter_rec.parameter_value := c_parameter_rec.session_value;
69      l_parameter_rec.period_date := c_parameter_rec.period_date;
70      l_parameter_rec.dimension := c_parameter_rec.dimension;
71      l_parameter_rec.operator := c_parameter_rec.operator;
72      x_page_param_tbl(l_index) := l_parameter_rec;
73      l_index := l_index + 1;
74  END LOOP;
75 EXCEPTION
76   WHEN FND_API.G_EXC_ERROR THEN
77        x_return_status := FND_API.G_RET_STS_ERROR;
78        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
79 x_msg_data);
80   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
81        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
82        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
83 x_msg_data);
84   WHEN OTHERS THEN
85        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
86        FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data =>
87 x_msg_data);
88 END RETRIEVE_PAGE_PARAMETERS;
89 FUNCTION INITIALIZE_QUERY_TYPE
90 RETURN BIS_QUERY_ATTRIBUTES
91 IS
92   l_query_attributes BIS_QUERY_ATTRIBUTES := BIS_QUERY_ATTRIBUTES(null,null,null,null);
93 BEGIN
94   RETURN l_query_attributes;
95 END;
96 
97 FUNCTION INITIALIZE_BIS_BUCKET_REC
98 RETURN BIS_BUCKET_REC
99 IS
100   l_bucket_rec BIS_BUCKET_REC := BIS_BUCKET_REC(null,null,null, null);
101 BEGIN
102   RETURN l_bucket_rec;
103 END;
104 
105 /* nbarik - 05/11/06 - Bug Fix 4881596
106 --
107 -- This is a public API which will be called by product teams to clear
108 -- user level personalization
109 --
110 */
111 PROCEDURE CLEAR_USER_PERSONALIZATION (
112 	p_function_name			IN  VARCHAR2
113 ,	p_region_code           IN  VARCHAR2
114 , 	p_region_application_id IN 	NUMBER
115 ,	x_return_status	    	OUT NOCOPY VARCHAR2
116 ,	x_msg_count		    	OUT NOCOPY NUMBER
117 ,	x_msg_data	        	OUT NOCOPY VARCHAR2
118 ) IS
119 
120  CURSOR c_custom_code_cursor IS
121  SELECT customview.customization_code, customview.customization_application_id
122  FROM ak_customizations customView, bis_ak_custom_regions bookmark
123  WHERE customView.region_code=p_region_code AND
124  customView.region_application_id=p_region_application_id AND
125  customView.customization_code=bookmark.customization_code AND
126  customView.customization_application_id=bookmark.customization_application_id AND
127  customView.region_code=bookmark.region_code AND
128  customView.region_application_id=bookmark.region_application_id AND
129  customView.function_name=p_function_name AND
130  customView.customization_level_id=30 AND
131  bookmark.property_name='BOOKMARK_URL';
132 
133 BEGIN
134   FND_MSG_PUB.Initialize;
135   x_return_status := FND_API.G_RET_STS_SUCCESS;
136 
137   IF c_custom_code_cursor%ISOPEN THEN
138     CLOSE c_custom_code_cursor;
139   END IF;
140   FOR cr IN c_custom_code_cursor LOOP
141   	-- delete region items customization
142     delete from AK_CUSTOM_REGION_ITEMS
143     where CUSTOMIZATION_APPLICATION_ID = cr.customization_application_id
144     and   CUSTOMIZATION_CODE           = cr.customization_code
145     and   REGION_APPLICATION_ID        = p_region_application_id
146     and   REGION_CODE                  = p_region_code;
147 
148 	IF SQL%NOTFOUND THEN
149 	  NULL;
150 	END IF;
151 
152 	delete from AK_CUSTOM_REGION_ITEMS_TL
153 	where CUSTOMIZATION_APPLICATION_ID = cr.customization_application_id
154 	and   CUSTOMIZATION_CODE           = cr.customization_code
155 	and   REGION_APPLICATION_ID        = p_region_application_id
156 	and   REGION_CODE                  = p_region_code;
157 
158 	IF SQL%NOTFOUND THEN
159 	  NULL;
160 	END IF;
161 
162   	-- delete region customization
163     delete from AK_CUSTOM_REGIONS
164     where CUSTOMIZATION_APPLICATION_ID = cr.customization_application_id
165     and   CUSTOMIZATION_CODE           = cr.customization_code
166     and   REGION_APPLICATION_ID        = p_region_application_id
167     and   REGION_CODE                  = p_region_code;
168 
169 	IF SQL%NOTFOUND THEN
170 	  NULL;
171 	END IF;
172 
173 	delete from AK_CUSTOM_REGIONS_TL
174 	where CUSTOMIZATION_APPLICATION_ID = cr.customization_application_id
175 	and   CUSTOMIZATION_CODE           = cr.customization_code
176 	and   REGION_APPLICATION_ID        = p_region_application_id
177 	and   REGION_CODE                  = p_region_code;
178 
179 	IF SQL%NOTFOUND THEN
180 	  NULL;
181 	END IF;
182 
183   	-- delete customization
184   	AK_CUSTOMIZATIONS_PKG.DELETE_ROW (
185 		X_CUSTOMIZATION_APPLICATION_ID	=> cr.customization_application_id
186 	,	X_CUSTOMIZATION_CODE           	=> cr.customization_code
187 	, 	X_REGION_APPLICATION_ID        	=> p_region_application_id
188 	,	X_REGION_CODE                  	=> p_region_code
189   	);
190 
191 	IF SQL%NOTFOUND THEN
192 	  NULL;
193 	END IF;
194 
195   	-- delete bis region customization
196     delete from BIS_AK_CUSTOM_REGIONS
197     where CUSTOMIZATION_APPLICATION_ID = cr.customization_application_id
198     and   CUSTOMIZATION_CODE           = cr.customization_code
199     and   REGION_APPLICATION_ID        = p_region_application_id
200     and   REGION_CODE                  = p_region_code
201   	and   PROPERTY_NAME			       = 'BOOKMARK_URL';
202 
203 	IF SQL%NOTFOUND THEN
204 	  NULL;
205 	END IF;
206 
207   END LOOP;
208   IF c_custom_code_cursor%ISOPEN THEN
209     CLOSE c_custom_code_cursor;
210   END IF;
211 
212 EXCEPTION
213   WHEN FND_API.G_EXC_ERROR THEN
214       x_return_status := FND_API.G_RET_STS_ERROR;
215 	  IF c_custom_code_cursor%ISOPEN THEN
216 	    CLOSE c_custom_code_cursor;
217 	  END IF;
218       FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data => x_msg_data);
219   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
220       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
221 	  IF c_custom_code_cursor%ISOPEN THEN
222 	    CLOSE c_custom_code_cursor;
223 	  END IF;
224       FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data => x_msg_data);
225   WHEN OTHERS THEN
226       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
227 	  IF c_custom_code_cursor%ISOPEN THEN
228 	    CLOSE c_custom_code_cursor;
229 	  END IF;
230       FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count, p_data => x_msg_data);
231 END CLEAR_USER_PERSONALIZATION;
232 
233 END BIS_PMV_PARAMETERS_PUB;