DBA Data[Home] [Help]

PACKAGE BODY: APPS.BSC_KPI_MEASURE_WEIGHTS_PUB

Source


1 PACKAGE BODY BSC_KPI_MEASURE_WEIGHTS_PUB AS
2 /* $Header: BSCPKMWB.pls 120.0.12000000.1 2007/07/17 07:44:09 appldev noship $ */
3 
4 /************************************************************************************
5  ************************************************************************************/
6 PROCEDURE Create_Kpi_Measure_Weights (
7   p_commit                   IN            VARCHAR2 := FND_API.G_FALSE
8 , p_kpi_measure_weights_rec  IN            BSC_KPI_MEASURE_WEIGHTS_PUB.kpi_measure_weights_rec
9 , p_cascade_shared           IN            BOOLEAN := TRUE
10 , x_return_status            OUT NOCOPY    VARCHAR2
11 , x_msg_count                OUT NOCOPY    NUMBER
12 , x_msg_data                 OUT NOCOPY    VARCHAR2
13 )
14 IS
15   CURSOR c_shared_obj(p_indicator NUMBER) IS
16     SELECT indicator
17     FROM   bsc_kpis_b
18     WHERE  source_indicator = p_indicator
19     AND    share_flag = 2 -- shared objective.
20     AND    prototype_flag <> 2;
21 
22   l_kpi_measure_weights_rec  BSC_KPI_MEASURE_WEIGHTS_PUB.kpi_measure_weights_rec;
23   l_kpi_measure_id           NUMBER;
24 
25 BEGIN
26 
27   FND_MSG_PUB.Initialize;
28   x_return_status := FND_API.G_RET_STS_SUCCESS;
29 
30   SAVEPOINT BscKpiMeasureWeightPub_Create;
31 
32   -- Any Business Logic Validation
33 
34   BSC_KPI_MEASURE_WEIGHTS_PVT.Create_Kpi_Measure_Weights
35   ( p_commit                   => p_commit
36   , p_kpi_measure_weights_rec  => p_kpi_measure_weights_rec
37   , x_return_status            => x_return_status
38   , x_msg_count                => x_msg_count
39   , x_msg_data                 => x_msg_data
40   );
41   IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
42     RAISE  FND_API.G_EXC_ERROR;
43   END IF;
44 
45   IF p_cascade_shared THEN
46     FOR c_shared IN c_shared_obj(p_kpi_measure_weights_rec.objective_id) LOOP
47 
48       l_kpi_measure_id := BSC_KPI_MEASURE_PROPS_PUB.get_shared_obj_kpi_measure
49                           ( p_objective_id         => p_kpi_measure_weights_rec.objective_id
50                           , p_kpi_measure_id       => p_kpi_measure_weights_rec.kpi_measure_id
51                           , p_shared_objective_id  => c_shared.indicator
52                           );
53       IF l_kpi_measure_id IS NULL THEN
54         RAISE  FND_API.G_EXC_ERROR;
55       END IF;
56 
57       l_kpi_measure_weights_rec := p_kpi_measure_weights_rec;
58       l_kpi_measure_weights_rec.objective_id := c_shared.indicator;
59       l_kpi_measure_weights_rec.kpi_measure_id := l_kpi_measure_id;
60 
61       BSC_KPI_MEASURE_WEIGHTS_PVT.Create_Kpi_Measure_Weights
62       ( p_commit                   => p_commit
63       , p_kpi_measure_weights_rec  => l_kpi_measure_weights_rec
64       , x_return_status            => x_return_status
65       , x_msg_count                => x_msg_count
66       , x_msg_data                 => x_msg_data
67       );
68       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
69         RAISE FND_API.G_EXC_ERROR;
70       END IF;
71 
72     END LOOP;
73   END IF;
74 
75 EXCEPTION
76   WHEN FND_API.G_EXC_ERROR THEN
77     ROLLBACK TO BscKpiMeasureWeightPub_Create;
78     IF (x_msg_data IS NULL) THEN
79       FND_MSG_PUB.Count_And_Get
80       ( p_encoded   =>  FND_API.G_FALSE
81       , p_count     =>  x_msg_count
82       , p_data      =>  x_msg_data
83       );
84     END IF;
85     x_return_status :=  FND_API.G_RET_STS_ERROR;
86   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
87     ROLLBACK TO BscKpiMeasureWeightPub_Create;
88     IF (x_msg_data IS NULL) THEN
89       FND_MSG_PUB.Count_And_Get
90       ( p_encoded   =>  FND_API.G_FALSE
91       , p_count     =>  x_msg_count
92       , p_data      =>  x_msg_data
93       );
94     END IF;
95     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
96   WHEN NO_DATA_FOUND THEN
97     ROLLBACK TO BscKpiMeasureWeightPub_Create;
98     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
99     IF (x_msg_data IS NOT NULL) THEN
100       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Create_Kpi_Measure_Weights ';
101     ELSE
102       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Create_Kpi_Measure_Weights ';
103     END IF;
104   WHEN OTHERS THEN
105     ROLLBACK TO BscKpiMeasureWeightPub_Create;
106     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
107     IF (x_msg_data IS NOT NULL) THEN
108       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Create_Kpi_Measure_Weights ';
109     ELSE
110       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Create_Kpi_Measure_Weights ';
111     END IF;
112 END Create_Kpi_Measure_Weights;
113 
114 /************************************************************************************
115  ************************************************************************************/
116 PROCEDURE Update_Kpi_Measure_Weights (
117   p_commit                   IN             VARCHAR2 := FND_API.G_FALSE
118 , p_kpi_measure_weights_rec  IN             BSC_KPI_MEASURE_WEIGHTS_PUB.kpi_measure_weights_rec
119 , p_cascade_shared           IN             BOOLEAN := TRUE
120 , x_return_status            OUT NOCOPY     VARCHAR2
121 , x_msg_count                OUT NOCOPY     NUMBER
122 , x_msg_data                 OUT NOCOPY     VARCHAR2
123 )
124 IS
125   CURSOR c_shared_obj(p_indicator NUMBER) IS
126     SELECT indicator
127     FROM   bsc_kpis_b
128     WHERE  source_indicator = p_indicator
129     AND    share_flag = 2 -- shared objective.
130     AND    prototype_flag <> 2;
131 
132   l_kpi_measure_weights_rec  BSC_KPI_MEASURE_WEIGHTS_PUB.kpi_measure_weights_rec;
133   l_kpi_measure_id           NUMBER;
134 BEGIN
135 
136   FND_MSG_PUB.Initialize;
137   x_return_status := FND_API.G_RET_STS_SUCCESS;
138 
139   SAVEPOINT BscKpiMeasureWeightPub_Update;
140 
141   -- Any Business Logic Validation
142 
143   BSC_KPI_MEASURE_WEIGHTS_PVT.Update_Kpi_Measure_Weights
144   ( p_commit                   => p_commit
145   , p_kpi_measure_weights_rec  => p_kpi_measure_weights_rec
146   , x_return_status            => x_return_status
147   , x_msg_count                => x_msg_count
148   , x_msg_data                 => x_msg_data
149   );
150   IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
151     RAISE  FND_API.G_EXC_ERROR;
152   END IF;
153 
154   IF p_cascade_shared THEN
155     FOR c_shared IN c_shared_obj(p_kpi_measure_weights_rec.objective_id) LOOP
156 
157       l_kpi_measure_id := BSC_KPI_MEASURE_PROPS_PUB.get_shared_obj_kpi_measure
158                           ( p_objective_id         => p_kpi_measure_weights_rec.objective_id
159                           , p_kpi_measure_id       => p_kpi_measure_weights_rec.kpi_measure_id
160                           , p_shared_objective_id  => c_shared.indicator
161                           );
162       IF l_kpi_measure_id IS NULL THEN
163         RAISE  FND_API.G_EXC_ERROR;
164       END IF;
165 
166       l_kpi_measure_weights_rec := p_kpi_measure_weights_rec;
167       l_kpi_measure_weights_rec.objective_id := c_shared.indicator;
168       l_kpi_measure_weights_rec.kpi_measure_id := l_kpi_measure_id;
169 
170       BSC_KPI_MEASURE_WEIGHTS_PVT.Update_Kpi_Measure_Weights
171       ( p_commit                   => p_commit
172       , p_kpi_measure_weights_rec  => l_kpi_measure_weights_rec
173       , x_return_status            => x_return_status
174       , x_msg_count                => x_msg_count
175       , x_msg_data                 => x_msg_data
176       );
177       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
178         RAISE FND_API.G_EXC_ERROR;
179       END IF;
180 
181     END LOOP;
182   END IF;
183 
184 EXCEPTION
185   WHEN FND_API.G_EXC_ERROR THEN
186     ROLLBACK TO BscKpiMeasureWeightPub_Update;
187     IF (x_msg_data IS NULL) THEN
188       FND_MSG_PUB.Count_And_Get
189       ( p_encoded   =>  FND_API.G_FALSE
190       , p_count     =>  x_msg_count
191       , p_data      =>  x_msg_data
192       );
193     END IF;
194     x_return_status :=  FND_API.G_RET_STS_ERROR;
195   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
196     ROLLBACK TO BscKpiMeasureWeightPub_Update;
197     IF (x_msg_data IS NULL) THEN
198       FND_MSG_PUB.Count_And_Get
199       ( p_encoded   =>  FND_API.G_FALSE
200       , p_count     =>  x_msg_count
201       , p_data      =>  x_msg_data
202       );
203     END IF;
204     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
205   WHEN NO_DATA_FOUND THEN
206     ROLLBACK TO BscKpiMeasureWeightPub_Update;
207     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
208     IF (x_msg_data IS NOT NULL) THEN
209       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Update_Kpi_Measure_Weights ';
210     ELSE
211       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Update_Kpi_Measure_Weights ';
212     END IF;
213   WHEN OTHERS THEN
214     ROLLBACK TO BscKpiMeasureWeightPub_Update;
215     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
216     IF (x_msg_data IS NOT NULL) THEN
217       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Update_Kpi_Measure_Weights ';
218     ELSE
219       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Update_Kpi_Measure_Weights ';
220     END IF;
221 END Update_Kpi_Measure_Weights;
222 
223 /************************************************************************************
224 ************************************************************************************/
225 PROCEDURE Del_Kpi_Measure_Weights (
226   p_commit              IN             VARCHAR2:= FND_API.G_FALSE
227 , p_objective_id        IN             NUMBER
228 , p_kpi_measure_id      IN             NUMBER
229 , p_cascade_shared      IN             BOOLEAN := TRUE
230 , x_return_status       OUT NOCOPY     VARCHAR2
231 , x_msg_count           OUT NOCOPY     NUMBER
232 , x_msg_data            OUT NOCOPY     VARCHAR2
233 )
234 IS
235   CURSOR c_shared_obj(p_indicator NUMBER) IS
236     SELECT indicator
237     FROM   bsc_kpis_b
238     WHERE  source_indicator = p_indicator
239     AND    share_flag = 2 -- shared objective.
240     AND    prototype_flag <> 2;
241 
242   l_kpi_measure_id   NUMBER;
243 
244 BEGIN
245 
246   FND_MSG_PUB.Initialize;
247   x_return_status := FND_API.G_RET_STS_SUCCESS;
248 
249   SAVEPOINT BscKpiMeasureWeightPub_Delete;
250 
251   -- Any Business Logic Validation
252 
253   BSC_KPI_MEASURE_WEIGHTS_PVT.Del_Kpi_Measure_Weights
254   ( p_commit           => p_commit
255   , p_objective_id     => p_objective_id
256   , p_kpi_measure_id   => p_kpi_measure_id
257   , x_return_status    => x_return_status
258   , x_msg_count        => x_msg_count
259   , x_msg_data         => x_msg_data
260   );
261   IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
262     RAISE  FND_API.G_EXC_ERROR;
263   END IF;
264 
265   IF p_cascade_shared THEN
266 
267     FOR c_shared IN c_shared_obj(p_objective_id) LOOP
268 
269       l_kpi_measure_id := BSC_KPI_MEASURE_PROPS_PUB.get_shared_obj_kpi_measure
270                         ( p_objective_id         => p_objective_id
271                         , p_kpi_measure_id       => p_kpi_measure_id
272                         , p_shared_objective_id  => c_shared.indicator
273                         );
274       IF l_kpi_measure_id IS NULL THEN
275         RAISE  FND_API.G_EXC_ERROR;
276       END IF;
277 
278       BSC_KPI_MEASURE_WEIGHTS_PVT.Del_Kpi_Measure_Weights
279       ( p_commit           => p_commit
280       , p_objective_id     => c_shared.indicator
281       , p_kpi_measure_id   => l_kpi_measure_id
282       , x_return_status    => x_return_status
283       , x_msg_count        => x_msg_count
284       , x_msg_data         => x_msg_data
285       );
286       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
287         RAISE FND_API.G_EXC_ERROR;
288       END IF;
289 
290     END LOOP;
291 
292   END IF;
293 
294 EXCEPTION
295   WHEN FND_API.G_EXC_ERROR THEN
296     ROLLBACK TO BscKpiMeasureWeightPub_Delete;
297     IF (x_msg_data IS NULL) THEN
298       FND_MSG_PUB.Count_And_Get
299       ( p_encoded   =>  FND_API.G_FALSE
300       , p_count     =>  x_msg_count
301       , p_data      =>  x_msg_data
302       );
303     END IF;
304     x_return_status :=  FND_API.G_RET_STS_ERROR;
305   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
306     ROLLBACK TO BscKpiMeasureWeightPub_Delete;
307     IF (x_msg_data IS NULL) THEN
308       FND_MSG_PUB.Count_And_Get
309       ( p_encoded   =>  FND_API.G_FALSE
310       , p_count     =>  x_msg_count
311       , p_data      =>  x_msg_data
312       );
313     END IF;
314     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
315   WHEN NO_DATA_FOUND THEN
316     ROLLBACK TO BscKpiMeasureWeightPub_Delete;
317     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
318     IF (x_msg_data IS NOT NULL) THEN
319       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Kpi_Measure_Weights ';
320     ELSE
321       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Kpi_Measure_Weights ';
322     END IF;
323   WHEN OTHERS THEN
324     ROLLBACK TO BscKpiMeasureWeightPub_Delete;
325     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
326     IF (x_msg_data IS NOT NULL) THEN
327       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Kpi_Measure_Weights ';
328     ELSE
329       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Kpi_Measure_Weights ';
330     END IF;
331 END Del_Kpi_Measure_Weights;
332 
333 /************************************************************************************
334 ************************************************************************************/
335 PROCEDURE Del_Obj_Kpi_Measure_Weights (
336   p_commit              IN             VARCHAR2:= FND_API.G_FALSE
337 , p_objective_id        IN             NUMBER
338 , p_cascade_shared      IN             BOOLEAN := TRUE
339 , x_return_status       OUT NOCOPY     VARCHAR2
340 , x_msg_count           OUT NOCOPY     NUMBER
341 , x_msg_data            OUT NOCOPY     VARCHAR2
342 )
343 IS
344   CURSOR c_shared_obj(p_indicator NUMBER) IS
345     SELECT indicator
346     FROM   bsc_kpis_b
347     WHERE  source_indicator = p_indicator
348     AND    share_flag = 2 -- shared objective.
349     AND    prototype_flag <> 2;
350 
351 BEGIN
352 
353   FND_MSG_PUB.Initialize;
354   x_return_status := FND_API.G_RET_STS_SUCCESS;
355 
356   SAVEPOINT BscKpiMeasureWeightPub_DelAll;
357 
358   -- Any Business Logic Validation
359 
360   BSC_KPI_MEASURE_WEIGHTS_PVT.Del_Obj_Kpi_Measure_Weights
361   ( p_commit           => p_commit
362   , p_objective_id     => p_objective_id
363   , x_return_status    => x_return_status
364   , x_msg_count        => x_msg_count
365   , x_msg_data         => x_msg_data
366   );
367   IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
368     RAISE  FND_API.G_EXC_ERROR;
369   END IF;
370 
371   IF p_cascade_shared THEN
372 
373     FOR c_shared IN c_shared_obj(p_objective_id) LOOP
374 
375       BSC_KPI_MEASURE_WEIGHTS_PVT.Del_Obj_Kpi_Measure_Weights
376       ( p_commit           => p_commit
377       , p_objective_id     => c_shared.indicator
378       , x_return_status    => x_return_status
379       , x_msg_count        => x_msg_count
380       , x_msg_data         => x_msg_data
381       );
382       IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
383         RAISE FND_API.G_EXC_ERROR;
384       END IF;
385 
386     END LOOP;
387 
388   END IF;
389 
390 EXCEPTION
391   WHEN FND_API.G_EXC_ERROR THEN
392     ROLLBACK TO BscKpiMeasureWeightPub_DelAll;
393     IF (x_msg_data IS NULL) THEN
394       FND_MSG_PUB.Count_And_Get
395       ( p_encoded   =>  FND_API.G_FALSE
396       , p_count     =>  x_msg_count
397       , p_data      =>  x_msg_data
398       );
399     END IF;
400     x_return_status :=  FND_API.G_RET_STS_ERROR;
401   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
402     ROLLBACK TO BscKpiMeasureWeightPub_DelAll;
403     IF (x_msg_data IS NULL) THEN
404       FND_MSG_PUB.Count_And_Get
405       ( p_encoded   =>  FND_API.G_FALSE
406       , p_count     =>  x_msg_count
407       , p_data      =>  x_msg_data
408       );
409     END IF;
410     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
411   WHEN NO_DATA_FOUND THEN
412     ROLLBACK TO BscKpiMeasureWeightPub_DelAll;
413     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
414     IF (x_msg_data IS NOT NULL) THEN
415       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Obj_Kpi_Measure_Weights ';
416     ELSE
417       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Obj_Kpi_Measure_Weights ';
418     END IF;
419   WHEN OTHERS THEN
420     ROLLBACK TO BscKpiMeasureWeightPub_DelAll;
421     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
422     IF (x_msg_data IS NOT NULL) THEN
423       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Obj_Kpi_Measure_Weights ';
424     ELSE
425       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Del_Obj_Kpi_Measure_Weights ';
426     END IF;
427 END Del_Obj_Kpi_Measure_Weights;
428 
429 /************************************************************************************
430 ************************************************************************************/
431 PROCEDURE Retrieve_Kpi_Measure_Weights (
432   p_objective_id             IN             NUMBER
433 , p_kpi_measure_id           IN             NUMBER
434 , x_kpi_measure_weights_rec  OUT NOCOPY     BSC_KPI_MEASURE_WEIGHTS_PUB.kpi_measure_weights_rec
435 , x_return_status            OUT NOCOPY     VARCHAR2
436 , x_msg_count                OUT NOCOPY     NUMBER
437 , x_msg_data                 OUT NOCOPY     VARCHAR2
438 )
439 IS
440 BEGIN
441 
442   FND_MSG_PUB.Initialize;
443   x_return_status := FND_API.G_RET_STS_SUCCESS;
444 
445   -- Any Business Logic Validation
446 
447   BSC_KPI_MEASURE_WEIGHTS_PVT.Retrieve_Kpi_Measure_Weights
448   ( p_objective_id            => p_objective_id
449   , p_kpi_measure_id          => p_kpi_measure_id
450   , x_kpi_measure_weights_rec => x_kpi_measure_weights_rec
451   , x_return_status           => x_return_status
452   , x_msg_count               => x_msg_count
453   , x_msg_data                => x_msg_data
454   );
455   IF (x_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
456     RAISE  FND_API.G_EXC_ERROR;
457   END IF;
458 
459 EXCEPTION
460   WHEN FND_API.G_EXC_ERROR THEN
461     IF (x_msg_data IS NULL) THEN
462       FND_MSG_PUB.Count_And_Get
463       ( p_encoded   =>  FND_API.G_FALSE
464       , p_count     =>  x_msg_count
465       , p_data      =>  x_msg_data
466       );
467     END IF;
468     x_return_status :=  FND_API.G_RET_STS_ERROR;
469   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
470     IF (x_msg_data IS NULL) THEN
471       FND_MSG_PUB.Count_And_Get
472       ( p_encoded   =>  FND_API.G_FALSE
473       , p_count     =>  x_msg_count
474       , p_data      =>  x_msg_data
475       );
476     END IF;
477     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
478   WHEN NO_DATA_FOUND THEN
479     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
480     IF (x_msg_data IS NOT NULL) THEN
481       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Retrieve_Kpi_Measure_Weights ';
482     ELSE
483       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Retrieve_Kpi_Measure_Weights ';
484     END IF;
485   WHEN OTHERS THEN
486     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
487     IF (x_msg_data IS NOT NULL) THEN
488       x_msg_data := x_msg_data || ' -> BSC_KPI_MEASURE_WEIGHTS_PUB.Retrieve_Kpi_Measure_Weights ';
489     ELSE
490       x_msg_data := SQLERRM || ' at BSC_KPI_MEASURE_WEIGHTS_PUB.Retrieve_Kpi_Measure_Weights ';
491     END IF;
492 END Retrieve_Kpi_Measure_Weights;
493 
494 END BSC_KPI_MEASURE_WEIGHTS_PUB;