1 package body BIS_UPDATE_ACTUAL_SOURCE_PVT AS
2 /* $Header: BISVUASB.pls 120.0 2005/06/01 16:35:49 appldev noship $ */
3
4 Procedure Update_Actual_Source IS
5
6 CURSOR c_measure_data_source IS
7 SELECT a.indicator_id,
8 a.short_name,
9 ak.region_code,
10 ak.attribute_code
11 FROM bis_indicators a, bsc_sys_datasets_b b, ak_region_items ak
12 WHERE a.dataset_id = b.dataset_id
13 AND a.actual_data_source IS NULL
14 AND b.source = 'PMF'
15 AND ak.attribute1 = 'MEASURE'
16 AND ak.attribute2 = a.short_name;
17
18 l_actual_data_source VARCHAR2(300);
19
20 BEGIN
21 FOR measure_data_source_rec IN c_measure_data_source LOOP
22
23 IF measure_data_source_rec.region_code IS NOT NULL AND measure_data_source_rec.attribute_code IS NOT NULL THEN
24 l_actual_data_source := measure_data_source_rec.region_code || '.' || measure_data_source_rec.attribute_code;
25 END IF;
26
27 IF(l_actual_data_source IS NOT NULL) THEN
28 UPDATE bis_indicators SET actual_data_source_type = 'AK'
29 , actual_data_source = l_actual_data_source
30 WHERE short_name = measure_data_source_rec.short_name;
31 END IF;
32
33 l_actual_data_source := NULL;
34
35 END LOOP;
36
37 EXCEPTION
38 WHEN OTHERS THEN
39 NULL;
40 END Update_Actual_Source;
41
42 PROCEDURE updt_func_types_bistar AS
43 CURSOR c_updt IS SELECT type , parameters , function_id
44 FROM fnd_form_functions
45 WHERE type = 'BISTAR' FOR UPDATE OF type , parameters;
46
47 x_return_status VARCHAR2(10);
48 BEGIN
49 FOR i IN c_updt LOOP
50 IF (i.parameters IS NULL OR i.parameters NOT LIKE '%pFunctionType=BISTAR%') THEN
51 UPDATE fnd_form_functions SET type = NULL ,
52 parameters = parameters||fnd_global.local_chr(38)||'pFunctionType=BISTAR'
53 WHERE current of c_updt;
54 ELSE
55 UPDATE fnd_form_functions SET type = NULL
56 WHERE current of c_updt;
57 END IF;
58 END LOOP;
59 EXCEPTION
60 WHEN OTHERS THEN
61 IF c_updt%ISOPEN THEN
62 CLOSE c_updt;
63 END IF;
64 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
65 END updt_func_types_bistar ;
66
67 END BIS_UPDATE_ACTUAL_SOURCE_PVT;