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