58: l_count number;
59:
60: begin
61: SAVEPOINT CreateBSCDimGrpInDSetPvt;
62: FND_MSG_PUB.Initialize;
63: x_return_status := FND_API.G_RET_STS_SUCCESS;
64: -- Verify value to be inserted does not exist.
65: select count(*)
66: into l_count
88: end if;
89: else
90: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
91: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Dim_Set_Id);
92: FND_MSG_PUB.ADD;
93: RAISE FND_API.G_EXC_ERROR;
94: end if;
95: EXCEPTION
96: WHEN FND_API.G_EXC_ERROR THEN
94: end if;
95: EXCEPTION
96: WHEN FND_API.G_EXC_ERROR THEN
97: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
98: FND_MSG_PUB.Count_And_Get
99: ( p_encoded => FND_API.G_FALSE
100: , p_count => x_msg_count
101: , p_data => x_msg_data
102: );
104: x_return_status := FND_API.G_RET_STS_ERROR;
105: RAISE;
106: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
107: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
108: FND_MSG_PUB.Count_And_Get
109: ( p_encoded => FND_API.G_FALSE
110: , p_count => x_msg_count
111: , p_data => x_msg_data
112: );
147: ,x_msg_data OUT NOCOPY varchar2
148: ) is
149:
150: begin
151: FND_MSG_PUB.Initialize;
152: x_return_status := FND_API.G_RET_STS_SUCCESS;
153: select dim_set_id
154: ,dim_group_index
155: into x_Dim_Set_Rec.Bsc_Dim_Set_Id
163: end if;
164:
165: EXCEPTION
166: WHEN FND_API.G_EXC_ERROR THEN
167: FND_MSG_PUB.Count_And_Get
168: ( p_encoded => FND_API.G_FALSE
169: , p_count => x_msg_count
170: , p_data => x_msg_data
171: );
172: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
173: x_return_status := FND_API.G_RET_STS_ERROR;
174: RAISE;
175: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
176: FND_MSG_PUB.Count_And_Get
177: ( p_encoded => FND_API.G_FALSE
178: , p_count => x_msg_count
179: , p_data => x_msg_data
180: );
217: l_count number;
218:
219: begin
220: SAVEPOINT UpdateBSCDimGrpInDSetPvt;
221: FND_MSG_PUB.Initialize;
222: x_return_status := FND_API.G_RET_STS_SUCCESS;
223: -- Check that valid kpi id entered.
224: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
225: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
227: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
228: if l_count = 0 then
229: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
230: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
231: FND_MSG_PUB.ADD;
232: RAISE FND_API.G_EXC_ERROR;
233: end if;
234: else
235: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
233: end if;
234: else
235: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
236: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
237: FND_MSG_PUB.ADD;
238: RAISE FND_API.G_EXC_ERROR;
239: end if;
240:
241: -- Check that valid group id entered.
245: ,p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
246: if l_count = 0 then
247: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_GROUP_ID');
248: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
249: FND_MSG_PUB.ADD;
250: RAISE FND_API.G_EXC_ERROR;
251: end if;
252: else
253: FND_MESSAGE.SET_NAME('BSC','BSC_NO_GROUP_ID_ENTERED');
251: end if;
252: else
253: FND_MESSAGE.SET_NAME('BSC','BSC_NO_GROUP_ID_ENTERED');
254: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
255: FND_MSG_PUB.ADD;
256: RAISE FND_API.G_EXC_ERROR;
257: end if;
258:
259: -- Not all values will be passed. We need to make sure values not passed are not
292:
293: EXCEPTION
294: WHEN FND_API.G_EXC_ERROR THEN
295: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
296: FND_MSG_PUB.Count_And_Get
297: ( p_encoded => FND_API.G_FALSE
298: , p_count => x_msg_count
299: , p_data => x_msg_data
300: );
302: x_return_status := FND_API.G_RET_STS_ERROR;
303: RAISE;
304: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
305: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
306: FND_MSG_PUB.Count_And_Get
307: ( p_encoded => FND_API.G_FALSE
308: , p_count => x_msg_count
309: , p_data => x_msg_data
310: );
347: l_count number;
348:
349: begin
350: SAVEPOINT DeleteBSCDimGrpInDSetPvt;
351: FND_MSG_PUB.Initialize;
352: x_return_status := FND_API.G_RET_STS_SUCCESS;
353: -- Check that valid kpi id entered.
354: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
355: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
357: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
358: if l_count = 0 then
359: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
360: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
361: FND_MSG_PUB.ADD;
362: RAISE FND_API.G_EXC_ERROR;
363: end if;
364: else
365: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
363: end if;
364: else
365: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
366: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
367: FND_MSG_PUB.ADD;
368: RAISE FND_API.G_EXC_ERROR;
369: end if;
370:
371: -- Check that valid group id entered.
375: ,p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
376: if l_count = 0 then
377: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_GROUP_ID');
378: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
379: FND_MSG_PUB.ADD;
380: RAISE FND_API.G_EXC_ERROR;
381: end if;
382: else
383: FND_MESSAGE.SET_NAME('BSC','BSC_NO_GROUP_ID_ENTERED');
381: end if;
382: else
383: FND_MESSAGE.SET_NAME('BSC','BSC_NO_GROUP_ID_ENTERED');
384: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
385: FND_MSG_PUB.ADD;
386: RAISE FND_API.G_EXC_ERROR;
387: end if;
388:
389: delete from BSC_KPI_DIM_GROUPS
398:
399: EXCEPTION
400: WHEN FND_API.G_EXC_ERROR THEN
401: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
402: FND_MSG_PUB.Count_And_Get
403: ( p_encoded => FND_API.G_FALSE
404: , p_count => x_msg_count
405: , p_data => x_msg_data
406: );
408: x_return_status := FND_API.G_RET_STS_ERROR;
409: RAISE;
410: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
411: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
412: FND_MSG_PUB.Count_And_Get
413: ( p_encoded => FND_API.G_FALSE
414: , p_count => x_msg_count
415: , p_data => x_msg_data
416: );
458: l_count number;
459:
460: begin
461: SAVEPOINT CreateBSCKpiDSetTlPvt;
462: FND_MSG_PUB.Initialize;
463: x_return_status := FND_API.G_RET_STS_SUCCESS;
464: -- Assign all values in the passed "Record" parameter to the locally defined
465: -- "Record" variable.
466: l_Dim_Set_Rec := p_Dim_Set_Rec;
545: else
546: if l_Dim_Set_Rec.Bsc_New_Dset = 'Y' then
547: FND_MESSAGE.SET_NAME('BSC','BSC_DSET_KPI_EXISTS');
548: FND_MESSAGE.SET_TOKEN('BSC_KPI', l_Dim_Set_Rec.Bsc_Kpi_Id);
549: FND_MSG_PUB.ADD;
550: RAISE FND_API.G_EXC_ERROR;
551: end if;
552: end if;
553:
554:
555: EXCEPTION
556: WHEN FND_API.G_EXC_ERROR THEN
557: ROLLBACK TO CreateBSCKpiDSetTlPvt;
558: FND_MSG_PUB.Count_And_Get
559: ( p_encoded => FND_API.G_FALSE
560: , p_count => x_msg_count
561: , p_data => x_msg_data
562: );
564: x_return_status := FND_API.G_RET_STS_ERROR;
565: RAISE;
566: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
567: ROLLBACK TO CreateBSCKpiDSetTlPvt;
568: FND_MSG_PUB.Count_And_Get
569: ( p_encoded => FND_API.G_FALSE
570: , p_count => x_msg_count
571: , p_data => x_msg_data
572: );
609:
610: begin
611:
612: g_db_object := 'Retrieve_Bsc_Kpi_Dim_Sets_Tl';
613: FND_MSG_PUB.Initialize;
614: x_return_status := FND_API.G_RET_STS_SUCCESS;
615: -- fix the bug 2716498 INCORRECT MESSAGE REGARDING DELETE MASTER KPI WHILE ATTEMPTING TO ADD KPI TO TAB
616: -- added the condition "and LANGUAGE = p_Dim_Set_Rec.Bsc_Language" because two rows were returned.
617:
633:
634: EXCEPTION
635: WHEN FND_API.G_EXC_ERROR THEN
636: ROLLBACK TO CreateBSCDimLevMdPVT;
637: FND_MSG_PUB.Count_And_Get
638: ( p_encoded => FND_API.G_FALSE
639: , p_count => x_msg_count
640: , p_data => x_msg_data
641: );
643: x_return_status := FND_API.G_RET_STS_ERROR;
644: RAISE;
645: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
646: ROLLBACK TO CreateBSCDimLevMdPVT;
647: FND_MSG_PUB.Count_And_Get
648: ( p_encoded => FND_API.G_FALSE
649: , p_count => x_msg_count
650: , p_data => x_msg_data
651: );
690: l_count number;
691:
692: begin
693: SAVEPOINT UpdateBSCKpiDSetTlPvt;
694: FND_MSG_PUB.Initialize;
695: x_return_status := FND_API.G_RET_STS_SUCCESS;
696: -- Check that valid KPI id was entered.
697: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
698:
702:
703: if l_count = 0 then
704: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
705: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
706: FND_MSG_PUB.ADD;
707: RAISE FND_API.G_EXC_ERROR;
708: else
709: select count(dim_set_id)
710: into l_count
713: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id;
714: if l_count = 0 then
715: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_DSET_ID');
716: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
717: FND_MSG_PUB.ADD;
718: RAISE FND_API.G_EXC_ERROR;
719: end if;
720: end if;
721: else
720: end if;
721: else
722: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
723: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
724: FND_MSG_PUB.ADD;
725: RAISE FND_API.G_EXC_ERROR;
726: end if;
727:
728: l_Dim_Set_Rec := p_Dim_Set_Rec;
760:
761: EXCEPTION
762: WHEN FND_API.G_EXC_ERROR THEN
763: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
764: FND_MSG_PUB.Count_And_Get
765: ( p_encoded => FND_API.G_FALSE
766: , p_count => x_msg_count
767: , p_data => x_msg_data
768: );
770: x_return_status := FND_API.G_RET_STS_ERROR;
771: RAISE;
772: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
773: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
774: FND_MSG_PUB.Count_And_Get
775: ( p_encoded => FND_API.G_FALSE
776: , p_count => x_msg_count
777: , p_data => x_msg_data
778: );
815: l_count number;
816:
817: begin
818: SAVEPOINT DeleteBSCKpiDSetTlPvt;
819: FND_MSG_PUB.Initialize;
820: x_return_status := FND_API.G_RET_STS_SUCCESS;
821: -- If there are no groups assigned to this dimension set then delete it.
822: select count(dim_group_id)
823: into l_count
839:
840: EXCEPTION
841: WHEN FND_API.G_EXC_ERROR THEN
842: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
843: FND_MSG_PUB.Count_And_Get
844: ( p_encoded => FND_API.G_FALSE
845: , p_count => x_msg_count
846: , p_data => x_msg_data
847: );
849: x_return_status := FND_API.G_RET_STS_ERROR;
850: RAISE;
851: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
852: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
853: FND_MSG_PUB.Count_And_Get
854: ( p_encoded => FND_API.G_FALSE
855: , p_count => x_msg_count
856: , p_data => x_msg_data
857: );
897: l_count number;
898:
899: begin
900: SAVEPOINT CreateBSCDimLevPropPvt;
901: FND_MSG_PUB.Initialize;
902: x_return_status := FND_API.G_RET_STS_SUCCESS;
903: -- Determine if the properties for this KPI, dimension set and Dimension id
904: -- combination have been set.
905: IF (p_Dim_Set_Rec.Bsc_Level_Id IS NOT NULL) THEN
945: ,p_Dim_Set_Rec.Bsc_Dset_Target_Level);
946: else
947: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
948: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Kpi_Id);
949: FND_MSG_PUB.ADD;
950: RAISE FND_API.G_EXC_ERROR;
951: end if;
952: END IF;
953: if (p_commit = FND_API.G_TRUE) then
955: end if;
956: EXCEPTION
957: WHEN FND_API.G_EXC_ERROR THEN
958: ROLLBACK TO CreateBSCDimLevPropPvt;
959: FND_MSG_PUB.Count_And_Get
960: ( p_encoded => FND_API.G_FALSE
961: , p_count => x_msg_count
962: , p_data => x_msg_data
963: );
965: x_return_status := FND_API.G_RET_STS_ERROR;
966: RAISE;
967: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
968: ROLLBACK TO CreateBSCDimLevPropPvt;
969: FND_MSG_PUB.Count_And_Get
970: ( p_encoded => FND_API.G_FALSE
971: , p_count => x_msg_count
972: , p_data => x_msg_data
973: );
1010:
1011: begin
1012:
1013: g_db_object := 'Retrieve_Dim_Level_Properties';
1014: FND_MSG_PUB.Initialize;
1015: x_return_status := FND_API.G_RET_STS_SUCCESS;
1016: select distinct position
1017: ,total0
1018: ,level_display
1041: end if;
1042:
1043: EXCEPTION
1044: WHEN FND_API.G_EXC_ERROR THEN
1045: FND_MSG_PUB.Count_And_Get
1046: ( p_encoded => FND_API.G_FALSE
1047: , p_count => x_msg_count
1048: , p_data => x_msg_data
1049: );
1050: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1051: x_return_status := FND_API.G_RET_STS_ERROR;
1052: RAISE;
1053: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1054: FND_MSG_PUB.Count_And_Get
1055: ( p_encoded => FND_API.G_FALSE
1056: , p_count => x_msg_count
1057: , p_data => x_msg_data
1058: );
1096:
1097: begin
1098:
1099: SAVEPOINT UpdateBSCDimLevPropPvt;
1100: FND_MSG_PUB.Initialize;
1101: x_return_status := FND_API.G_RET_STS_SUCCESS;
1102: -- Check that valid KPI id was entered.
1103: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
1104: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
1106: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
1107: if l_count = 0 then
1108: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
1109: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1110: FND_MSG_PUB.ADD;
1111: RAISE FND_API.G_EXC_ERROR;
1112: else
1113: select count(dim_set_id)
1114: into l_count
1117: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id;
1118: if l_count = 0 then
1119: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
1120: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Kpi_Id);
1121: FND_MSG_PUB.ADD;
1122: RAISE FND_API.G_EXC_ERROR;
1123: end if;
1124: end if;
1125: else
1124: end if;
1125: else
1126: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
1127: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1128: FND_MSG_PUB.ADD;
1129: RAISE FND_API.G_EXC_ERROR;
1130: end if;
1131:
1132: -- Check that valid Level Id was entered.
1136: ,p_Dim_Set_Rec.Bsc_Level_Id);
1137: if l_count = 0 then
1138: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_LEVEL_ID');
1139: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_ID', p_Dim_Set_Rec.Bsc_Level_Id);
1140: FND_MSG_PUB.ADD;
1141: RAISE FND_API.G_EXC_ERROR;
1142: end if;
1143: else
1144: FND_MESSAGE.SET_NAME('BSC','BSC_NO_LEVEL_ID_ENTERED');
1142: end if;
1143: else
1144: FND_MESSAGE.SET_NAME('BSC','BSC_NO_LEVEL_ID_ENTERED');
1145: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_ID', p_Dim_Set_Rec.Bsc_Level_Id);
1146: FND_MSG_PUB.ADD;
1147: RAISE FND_API.G_EXC_ERROR;
1148: end if;
1149:
1150: -- Not all values will be passed. We need to make sure values not passed are not
1213:
1214: EXCEPTION
1215: WHEN FND_API.G_EXC_ERROR THEN
1216: ROLLBACK TO UpdateBSCDimLevPropPvt;
1217: FND_MSG_PUB.Count_And_Get
1218: ( p_encoded => FND_API.G_FALSE
1219: , p_count => x_msg_count
1220: , p_data => x_msg_data
1221: );
1223: x_return_status := FND_API.G_RET_STS_ERROR;
1224: RAISE;
1225: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1226: ROLLBACK TO UpdateBSCDimLevPropPvt;
1227: FND_MSG_PUB.Count_And_Get
1228: ( p_encoded => FND_API.G_FALSE
1229: , p_count => x_msg_count
1230: , p_data => x_msg_data
1231: );
1269:
1270: begin
1271:
1272: SAVEPOINT DeleteBSCDimLevPropPvt;
1273: FND_MSG_PUB.Initialize;
1274: x_return_status := FND_API.G_RET_STS_SUCCESS;
1275: -- Check that valid KPI id was entered.
1276: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
1277: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
1279: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
1280: if l_count = 0 then
1281: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
1282: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1283: FND_MSG_PUB.ADD;
1284: RAISE FND_API.G_EXC_ERROR;
1285: else
1286: select count(dim_set_id)
1287: into l_count
1290: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id;
1291: if l_count = 0 then
1292: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
1293: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Kpi_Id);
1294: FND_MSG_PUB.ADD;
1295: RAISE FND_API.G_EXC_ERROR;
1296: end if;
1297: end if;
1298: else
1297: end if;
1298: else
1299: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
1300: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1301: FND_MSG_PUB.ADD;
1302: RAISE FND_API.G_EXC_ERROR;
1303: end if;
1304:
1305:
1314:
1315: EXCEPTION
1316: WHEN FND_API.G_EXC_ERROR THEN
1317: ROLLBACK TO DeleteBSCDimLevPropPvt;
1318: FND_MSG_PUB.Count_And_Get
1319: ( p_encoded => FND_API.G_FALSE
1320: , p_count => x_msg_count
1321: , p_data => x_msg_data
1322: );
1324: x_return_status := FND_API.G_RET_STS_ERROR;
1325: RAISE;
1326: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1327: ROLLBACK TO DeleteBSCDimLevPropPvt;
1328: FND_MSG_PUB.Count_And_Get
1329: ( p_encoded => FND_API.G_FALSE
1330: , p_count => x_msg_count
1331: , p_data => x_msg_data
1332: );
1383: FROM BSC_SYS_DIM_LEVELS_TL
1384: WHERE DIM_LEVEL_ID = p_Dim_Set_Rec.Bsc_Level_Id;
1385: BEGIN
1386: SAVEPOINT DeleteBSCDimLevsPVT;
1387: FND_MSG_PUB.Initialize;
1388: x_return_status := FND_API.G_RET_STS_SUCCESS;
1389: l_Dim_Set_Rec := p_Dim_Set_Rec;
1390: -- Determine if the dimension already belongs to this dimension set.
1391: IF (p_Dim_Set_Rec.Bsc_Level_Name IS NOT NULL) THEN
1527: END IF;
1528: ELSE
1529: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
1530: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Kpi_Id);
1531: FND_MSG_PUB.ADD;
1532: RAISE FND_API.G_EXC_ERROR;
1533: END IF;
1534: END IF;
1535: IF (p_commit = FND_API.G_TRUE) THEN
1537: END IF;
1538: EXCEPTION
1539: WHEN FND_API.G_EXC_ERROR THEN
1540: ROLLBACK TO DeleteBSCDimLevsPVT;
1541: FND_MSG_PUB.Count_And_Get
1542: ( p_encoded => FND_API.G_FALSE
1543: , p_count => x_msg_count
1544: , p_data => x_msg_data
1545: );
1547: x_return_status := FND_API.G_RET_STS_ERROR;
1548: RAISE;
1549: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1550: ROLLBACK TO DeleteBSCDimLevsPVT;
1551: FND_MSG_PUB.Count_And_Get
1552: ( p_encoded => FND_API.G_FALSE
1553: , p_count => x_msg_count
1554: , p_data => x_msg_data
1555: );
1590: ,x_msg_data OUT NOCOPY varchar2
1591: ) is
1592:
1593: begin
1594: FND_MSG_PUB.Initialize;
1595: x_return_status := FND_API.G_RET_STS_SUCCESS;
1596: g_db_object := 'Retrieve_Dim_Levels';
1597:
1598: select distinct a.indicator
1677: end if;
1678:
1679: EXCEPTION
1680: WHEN FND_API.G_EXC_ERROR THEN
1681: FND_MSG_PUB.Count_And_Get
1682: ( p_encoded => FND_API.G_FALSE
1683: , p_count => x_msg_count
1684: , p_data => x_msg_data
1685: );
1686: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1687: x_return_status := FND_API.G_RET_STS_ERROR;
1688: RAISE;
1689: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1690: FND_MSG_PUB.Count_And_Get
1691: ( p_encoded => FND_API.G_FALSE
1692: , p_count => x_msg_count
1693: , p_data => x_msg_data
1694: );
1732:
1733: begin
1734:
1735: SAVEPOINT UpdateBSCDimLevsPVT;
1736: FND_MSG_PUB.Initialize;
1737: x_return_status := FND_API.G_RET_STS_SUCCESS;
1738: -- Check that valid KPI id was entered.
1739: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
1740: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
1742: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
1743: if l_count = 0 then
1744: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
1745: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1746: FND_MSG_PUB.ADD;
1747: RAISE FND_API.G_EXC_ERROR;
1748: else
1749: select count(dim_set_id)
1750: into l_count
1753: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id;
1754: if l_count = 0 then
1755: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
1756: FND_MESSAGE.SET_TOKEN('BSC_COMBO', p_Dim_Set_Rec.Bsc_Kpi_Id);
1757: FND_MSG_PUB.ADD;
1758: RAISE FND_API.G_EXC_ERROR;
1759: end if;
1760: end if;
1761: else
1760: end if;
1761: else
1762: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
1763: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
1764: FND_MSG_PUB.ADD;
1765: RAISE FND_API.G_EXC_ERROR;
1766: end if;
1767:
1768: -- Check that valid Level name was entered.
1773: where upper(level_table_name) = upper(p_Dim_Set_Rec.Bsc_Level_Name);
1774: if l_count = 0 then
1775: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_LEVEL_NAME');
1776: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_NAME', p_Dim_Set_Rec.Bsc_Level_Name);
1777: FND_MSG_PUB.ADD;
1778: RAISE FND_API.G_EXC_ERROR;
1779: end if;
1780: else
1781: FND_MESSAGE.SET_NAME('BSC','BSC_NO_LEVEL_NAME_ENTERED');
1779: end if;
1780: else
1781: FND_MESSAGE.SET_NAME('BSC','BSC_NO_LEVEL_NAME_ENTERED');
1782: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_NAME', p_Dim_Set_Rec.Bsc_Level_Name);
1783: FND_MSG_PUB.ADD;
1784: RAISE FND_API.G_EXC_ERROR;
1785: end if;
1786:
1787: -- Not all values will be passed. We need to make sure values not passed are not
1948:
1949: EXCEPTION
1950: WHEN FND_API.G_EXC_ERROR THEN
1951: ROLLBACK TO UpdateBSCDimLevsPVT;
1952: FND_MSG_PUB.Count_And_Get
1953: ( p_encoded => FND_API.G_FALSE
1954: , p_count => x_msg_count
1955: , p_data => x_msg_data
1956: );
1958: x_return_status := FND_API.G_RET_STS_ERROR;
1959: RAISE;
1960: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1961: ROLLBACK TO UpdateBSCDimLevsPVT;
1962: FND_MSG_PUB.Count_And_Get
1963: ( p_encoded => FND_API.G_FALSE
1964: , p_count => x_msg_count
1965: , p_data => x_msg_data
1966: );
2013: OR LEVEL_TABLE_NAME = 'XXX')
2014: ORDER BY DIM_LEVEL_INDEX DESC;
2015: begin
2016: SAVEPOINT DeleteBSCDimLevsPVT;
2017: FND_MSG_PUB.Initialize;
2018: x_return_status := FND_API.G_RET_STS_SUCCESS;
2019: -- Check that valid KPI id was entered.
2020: if p_Dim_Set_Rec.Bsc_Kpi_Id is not null then
2021: l_count := BSC_DIMENSION_LEVELS_PVT.Validate_Value( 'BSC_KPIS_B'
2023: ,p_Dim_Set_Rec.Bsc_Kpi_Id);
2024: if l_count = 0 then
2025: FND_MESSAGE.SET_NAME('BSC','BSC_INVALID_KPI_ID');
2026: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
2027: FND_MSG_PUB.ADD;
2028: RAISE FND_API.G_EXC_ERROR;
2029: end if;
2030: else
2031: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
2029: end if;
2030: else
2031: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
2032: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
2033: FND_MSG_PUB.ADD;
2034: RAISE FND_API.G_EXC_ERROR;
2035: end if;
2036:
2037: FOR cd IN c_dim_index LOOP
2063:
2064: EXCEPTION
2065: WHEN FND_API.G_EXC_ERROR THEN
2066: ROLLBACK TO DeleteBSCDimLevsPVT;
2067: FND_MSG_PUB.Count_And_Get
2068: ( p_encoded => FND_API.G_FALSE
2069: , p_count => x_msg_count
2070: , p_data => x_msg_data
2071: );
2073: x_return_status := FND_API.G_RET_STS_ERROR;
2074: RAISE;
2075: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2076: ROLLBACK TO DeleteBSCDimLevsPVT;
2077: FND_MSG_PUB.Count_And_Get
2078: ( p_encoded => FND_API.G_FALSE
2079: , p_count => x_msg_count
2080: , p_data => x_msg_data
2081: );
2119: ) is
2120: l_option_id NUMBER := 0;
2121: begin
2122: SAVEPOINT UpdateBSCKpiAnaOptsPVT;
2123: FND_MSG_PUB.Initialize;
2124: x_return_status := FND_API.G_RET_STS_SUCCESS;
2125: -- If action value is 'RESET' then reset the values for dimension set 0,
2126: -- else update the current dimension set id.
2127: IF (p_Dim_Set_Rec.Bsc_Analysis_Id IS NOT NULL) THEN
2159:
2160: EXCEPTION
2161: WHEN FND_API.G_EXC_ERROR THEN
2162: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2163: FND_MSG_PUB.Count_And_Get
2164: ( p_encoded => FND_API.G_FALSE
2165: , p_count => x_msg_count
2166: , p_data => x_msg_data
2167: );
2169: x_return_status := FND_API.G_RET_STS_ERROR;
2170: RAISE;
2171: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2172: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2173: FND_MSG_PUB.Count_And_Get
2174: ( p_encoded => FND_API.G_FALSE
2175: , p_count => x_msg_count
2176: , p_data => x_msg_data
2177: );