47: --: point for the Dimension Sets API.
48: --: This procedure is part of the Dimension Set API.
49:
50: procedure Create_Dim_Group_In_Dset(
51: p_commit IN varchar2 := FND_API.G_FALSE
52: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
53: ,x_return_status OUT NOCOPY varchar2
54: ,x_msg_count OUT NOCOPY number
55: ,x_msg_data OUT NOCOPY varchar2
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
67: from BSC_KPI_DIM_GROUPS
82: values( p_Dim_Set_Rec.Bsc_Kpi_Id
83: ,p_Dim_Set_Rec.Bsc_Dim_Set_Id
84: ,p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id
85: ,p_Dim_Set_Rec.Bsc_Dim_Level_Group_Index);
86: if (p_commit = FND_API.G_TRUE) then
87: commit;
88: end if;
89: else
90: FND_MESSAGE.SET_NAME('BSC','BSC_DSDL_COMBO_EXISTS');
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
97: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
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
97: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
98: FND_MSG_PUB.Count_And_Get
99: ( p_encoded => FND_API.G_FALSE
100: , p_count => x_msg_count
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: );
103: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
99: ( p_encoded => FND_API.G_FALSE
100: , p_count => x_msg_count
101: , p_data => x_msg_data
102: );
103: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
100: , p_count => x_msg_count
101: , p_data => x_msg_data
102: );
103: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
102: );
103: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
113: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
109: ( p_encoded => FND_API.G_FALSE
110: , p_count => x_msg_count
111: , p_data => x_msg_data
112: );
113: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
114: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
115: RAISE;
116: WHEN NO_DATA_FOUND THEN
117: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
110: , p_count => x_msg_count
111: , p_data => x_msg_data
112: );
113: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
114: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
115: RAISE;
116: WHEN NO_DATA_FOUND THEN
117: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
118: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
114: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
115: RAISE;
116: WHEN NO_DATA_FOUND THEN
117: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
118: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
119: IF (x_msg_data IS NOT NULL) THEN
120: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Group_In_Dset ';
121: ELSE
122: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Group_In_Dset ';
124: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
125: RAISE;
126: WHEN OTHERS THEN
127: ROLLBACK TO CreateBSCDimGrpInDSetPvt;
128: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
129: IF (x_msg_data IS NOT NULL) THEN
130: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Group_In_Dset ';
131: ELSE
132: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Group_In_Dset ';
138: /************************************************************************************
139: ************************************************************************************/
140:
141: procedure Retrieve_Dim_Group_In_Dset(
142: p_commit IN varchar2 := FND_API.G_FALSE
143: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
144: ,x_Dim_Set_Rec IN OUT NOCOPY BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
145: ,x_return_status OUT NOCOPY varchar2
146: ,x_msg_count OUT NOCOPY number
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
156: ,x_Dim_Set_Rec.Bsc_Dim_Level_Group_Index
157: from BSC_KPI_DIM_GROUPS
158: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
159: and dim_group_id = p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id
160: and dim_set_id = NVL(p_Dim_Set_Rec.Bsc_Dim_Set_Id, 0);
161: if (p_commit = FND_API.G_TRUE) then
162: commit;
163: end if;
164:
165: EXCEPTION
162: commit;
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
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);
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
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
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
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: );
181: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
177: ( p_encoded => FND_API.G_FALSE
178: , p_count => x_msg_count
179: , p_data => x_msg_data
180: );
181: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
182: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
183: RAISE;
184: WHEN NO_DATA_FOUND THEN
185: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
178: , p_count => x_msg_count
179: , p_data => x_msg_data
180: );
181: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
182: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
183: RAISE;
184: WHEN NO_DATA_FOUND THEN
185: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
186: IF (x_msg_data IS NOT NULL) THEN
181: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
182: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
183: RAISE;
184: WHEN NO_DATA_FOUND THEN
185: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
186: IF (x_msg_data IS NOT NULL) THEN
187: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Group_In_Dset ';
188: ELSE
189: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Group_In_Dset ';
190: END IF;
191: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
192: RAISE;
193: WHEN OTHERS THEN
194: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
195: IF (x_msg_data IS NOT NULL) THEN
196: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Group_In_Dset ';
197: ELSE
198: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Group_In_Dset ';
204: /************************************************************************************
205: ************************************************************************************/
206:
207: procedure Update_Dim_Group_In_Dset(
208: p_commit IN varchar2 := FND_API.G_FALSE
209: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
210: ,x_return_status OUT NOCOPY varchar2
211: ,x_msg_count OUT NOCOPY number
212: ,x_msg_data OUT NOCOPY varchar2
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'
226: ,'indicator'
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');
236: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
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.
242: if p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id is not null then
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');
254: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
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
260: -- changed by procedure, therefore we get what is there before we do any updates.
285: where indicator = l_Dim_Set_Rec.Bsc_Kpi_Id
286: and dim_group_id = l_Dim_Set_Rec.Bsc_Dim_Level_Group_Id
287: and dim_set_id = l_Dim_Set_Rec.Bsc_Dim_Set_Id;
288:
289: if (p_commit = FND_API.G_TRUE) then
290: commit;
291: end if;
292:
293: EXCEPTION
290: commit;
291: end if;
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
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: );
301: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
297: ( p_encoded => FND_API.G_FALSE
298: , p_count => x_msg_count
299: , p_data => x_msg_data
300: );
301: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
298: , p_count => x_msg_count
299: , p_data => x_msg_data
300: );
301: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
300: );
301: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
311: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
307: ( p_encoded => FND_API.G_FALSE
308: , p_count => x_msg_count
309: , p_data => x_msg_data
310: );
311: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
312: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
313: RAISE;
314: WHEN NO_DATA_FOUND THEN
315: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
308: , p_count => x_msg_count
309: , p_data => x_msg_data
310: );
311: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
312: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
313: RAISE;
314: WHEN NO_DATA_FOUND THEN
315: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
316: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
312: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
313: RAISE;
314: WHEN NO_DATA_FOUND THEN
315: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
316: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
317: IF (x_msg_data IS NOT NULL) THEN
318: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Group_In_Dset ';
319: ELSE
320: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Group_In_Dset ';
322: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
323: RAISE;
324: WHEN OTHERS THEN
325: ROLLBACK TO UpdateBSCDimGrpInDSetPvt;
326: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
327: IF (x_msg_data IS NOT NULL) THEN
328: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Group_In_Dset ';
329: ELSE
330: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Group_In_Dset ';
336: /************************************************************************************
337: ************************************************************************************/
338:
339: procedure Delete_Dim_Group_In_Dset(
340: p_commit IN varchar2 := FND_API.G_FALSE
341: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
342: ,x_return_status OUT NOCOPY varchar2
343: ,x_msg_count OUT NOCOPY number
344: ,x_msg_data OUT NOCOPY varchar2
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'
356: ,'indicator'
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');
366: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
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.
372: if p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id is not null then
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');
384: FND_MESSAGE.SET_TOKEN('BSC_GROUP_ID', p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id);
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
390: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
390: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
391: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id
392: and dim_group_id = p_Dim_Set_Rec.Bsc_Dim_Level_Group_Id;
393:
394: if (p_commit = FND_API.G_TRUE) then
395: commit;
396: end if;
397:
398:
396: end if;
397:
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
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: );
407: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
403: ( p_encoded => FND_API.G_FALSE
404: , p_count => x_msg_count
405: , p_data => x_msg_data
406: );
407: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
404: , p_count => x_msg_count
405: , p_data => x_msg_data
406: );
407: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
406: );
407: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
417: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
413: ( p_encoded => FND_API.G_FALSE
414: , p_count => x_msg_count
415: , p_data => x_msg_data
416: );
417: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
418: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
419: RAISE;
420: WHEN NO_DATA_FOUND THEN
421: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
414: , p_count => x_msg_count
415: , p_data => x_msg_data
416: );
417: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
418: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
419: RAISE;
420: WHEN NO_DATA_FOUND THEN
421: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
422: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
418: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
419: RAISE;
420: WHEN NO_DATA_FOUND THEN
421: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
422: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
423: IF (x_msg_data IS NOT NULL) THEN
424: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Group_In_Dset ';
425: ELSE
426: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Group_In_Dset ';
428: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
429: RAISE;
430: WHEN OTHERS THEN
431: ROLLBACK TO DeleteBSCDimGrpInDSetPvt;
432: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
433: IF (x_msg_data IS NOT NULL) THEN
434: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Group_In_Dset ';
435: ELSE
436: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Group_In_Dset ';
445: --: This procedure creates the dimension set id and name for the KPI.
446: --: This procedure belongs to the Dimension Set API.
447:
448: procedure Create_Bsc_Kpi_Dim_Sets_Tl(
449: p_commit IN varchar2 := FND_API.G_FALSE
450: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
451: ,x_return_status OUT NOCOPY varchar2
452: ,x_msg_count OUT NOCOPY number
453: ,x_msg_data OUT NOCOPY varchar2
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;
467:
537: set change_dim_set = 1
538: where indicator = l_Dim_Set_Rec.Bsc_Kpi_Id
539: and analysis_group_id = 0;
540: end if;
541: if (p_commit = FND_API.G_TRUE) then
542: commit;
543: end if;
544:
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:
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
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: );
563: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
559: ( p_encoded => FND_API.G_FALSE
560: , p_count => x_msg_count
561: , p_data => x_msg_data
562: );
563: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
560: , p_count => x_msg_count
561: , p_data => x_msg_data
562: );
563: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
562: );
563: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
573: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
569: ( p_encoded => FND_API.G_FALSE
570: , p_count => x_msg_count
571: , p_data => x_msg_data
572: );
573: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
574: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
575: RAISE;
576: WHEN NO_DATA_FOUND THEN
577: ROLLBACK TO CreateBSCKpiDSetTlPvt;
570: , p_count => x_msg_count
571: , p_data => x_msg_data
572: );
573: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
574: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
575: RAISE;
576: WHEN NO_DATA_FOUND THEN
577: ROLLBACK TO CreateBSCKpiDSetTlPvt;
578: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
574: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
575: RAISE;
576: WHEN NO_DATA_FOUND THEN
577: ROLLBACK TO CreateBSCKpiDSetTlPvt;
578: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
579: IF (x_msg_data IS NOT NULL) THEN
580: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Bsc_Kpi_Dim_Sets_Tl ';
581: ELSE
582: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Bsc_Kpi_Dim_Sets_Tl ';
584: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
585: RAISE;
586: WHEN OTHERS THEN
587: ROLLBACK TO CreateBSCKpiDSetTlPvt;
588: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
589: IF (x_msg_data IS NOT NULL) THEN
590: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Bsc_Kpi_Dim_Sets_Tl ';
591: ELSE
592: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Bsc_Kpi_Dim_Sets_Tl ';
598: /************************************************************************************
599: ************************************************************************************/
600:
601: procedure Retrieve_Bsc_Kpi_Dim_Sets_Tl(
602: p_commit IN varchar2 := FND_API.G_FALSE
603: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
604: ,x_Dim_Set_Rec IN OUT NOCOPY BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
605: ,x_return_status OUT NOCOPY varchar2
606: ,x_msg_count OUT NOCOPY number
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:
618:
626: AND LANGUAGE = USERENV('LANG');
627:
628:
629:
630: if (p_commit = FND_API.G_TRUE) then
631: commit;
632: end if;
633:
634: EXCEPTION
631: commit;
632: end if;
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
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: );
642: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
638: ( p_encoded => FND_API.G_FALSE
639: , p_count => x_msg_count
640: , p_data => x_msg_data
641: );
642: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
639: , p_count => x_msg_count
640: , p_data => x_msg_data
641: );
642: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
641: );
642: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
652: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
648: ( p_encoded => FND_API.G_FALSE
649: , p_count => x_msg_count
650: , p_data => x_msg_data
651: );
652: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
653: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
654: RAISE;
655: WHEN NO_DATA_FOUND THEN
656: ROLLBACK TO CreateBSCDimLevMdPVT;
649: , p_count => x_msg_count
650: , p_data => x_msg_data
651: );
652: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
653: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
654: RAISE;
655: WHEN NO_DATA_FOUND THEN
656: ROLLBACK TO CreateBSCDimLevMdPVT;
657: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
653: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
654: RAISE;
655: WHEN NO_DATA_FOUND THEN
656: ROLLBACK TO CreateBSCDimLevMdPVT;
657: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
658: IF (x_msg_data IS NOT NULL) THEN
659: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Bsc_Kpi_Dim_Sets_Tl ';
660: ELSE
661: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Bsc_Kpi_Dim_Sets_Tl ';
663: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
664: RAISE;
665: WHEN OTHERS THEN
666: ROLLBACK TO CreateBSCDimLevMdPVT;
667: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
668: IF (x_msg_data IS NOT NULL) THEN
669: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Bsc_Kpi_Dim_Sets_Tl ';
670: ELSE
671: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Bsc_Kpi_Dim_Sets_Tl ';
677: /************************************************************************************
678: ************************************************************************************/
679:
680: procedure Update_Bsc_Kpi_Dim_Sets_Tl(
681: p_commit IN varchar2 := FND_API.G_FALSE
682: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
683: ,x_return_status OUT NOCOPY varchar2
684: ,x_msg_count OUT NOCOPY number
685: ,x_msg_data OUT NOCOPY varchar2
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:
699: SELECT COUNT(1) INTO l_Count
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
711: from BSC_KPI_DIM_SETS_TL
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
722: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
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;
729:
753: and dim_set_id = l_Dim_Set_Rec.Bsc_Dim_Set_Id
754: and userenv('LANG') IN (LANGUAGE, SOURCE_LANG);
755: end if;
756:
757: if (p_commit = FND_API.G_TRUE) then
758: commit;
759: end if;
760:
761: EXCEPTION
758: commit;
759: end if;
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
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: );
769: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
765: ( p_encoded => FND_API.G_FALSE
766: , p_count => x_msg_count
767: , p_data => x_msg_data
768: );
769: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
766: , p_count => x_msg_count
767: , p_data => x_msg_data
768: );
769: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
768: );
769: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
779: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
775: ( p_encoded => FND_API.G_FALSE
776: , p_count => x_msg_count
777: , p_data => x_msg_data
778: );
779: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
780: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
781: RAISE;
782: WHEN NO_DATA_FOUND THEN
783: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
776: , p_count => x_msg_count
777: , p_data => x_msg_data
778: );
779: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
780: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
781: RAISE;
782: WHEN NO_DATA_FOUND THEN
783: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
784: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
780: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
781: RAISE;
782: WHEN NO_DATA_FOUND THEN
783: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
784: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
785: IF (x_msg_data IS NOT NULL) THEN
786: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Bsc_Kpi_Dim_Sets_Tl ';
787: ELSE
788: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Bsc_Kpi_Dim_Sets_Tl ';
790: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
791: RAISE;
792: WHEN OTHERS THEN
793: ROLLBACK TO UpdateBSCKpiDSetTlPvt;
794: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
795: IF (x_msg_data IS NOT NULL) THEN
796: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Bsc_Kpi_Dim_Sets_Tl ';
797: ELSE
798: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Bsc_Kpi_Dim_Sets_Tl ';
804: /************************************************************************************
805: ************************************************************************************/
806:
807: procedure Delete_Bsc_Kpi_Dim_Sets_Tl(
808: p_commit IN varchar2 := FND_API.G_FALSE
809: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
810: ,x_return_status OUT NOCOPY varchar2
811: ,x_msg_count OUT NOCOPY number
812: ,x_msg_data OUT NOCOPY varchar2
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
824: from BSC_KPI_DIM_GROUPS
829: delete from BSC_KPI_DIM_SETS_TL
830: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
831: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id;
832:
833: if (p_commit = FND_API.G_TRUE) then
834: commit;
835: end if;
836:
837: end if;
837: end if;
838:
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
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: );
848: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
844: ( p_encoded => FND_API.G_FALSE
845: , p_count => x_msg_count
846: , p_data => x_msg_data
847: );
848: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
845: , p_count => x_msg_count
846: , p_data => x_msg_data
847: );
848: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
847: );
848: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
858: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
854: ( p_encoded => FND_API.G_FALSE
855: , p_count => x_msg_count
856: , p_data => x_msg_data
857: );
858: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
859: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
860: RAISE;
861: WHEN NO_DATA_FOUND THEN
862: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
855: , p_count => x_msg_count
856: , p_data => x_msg_data
857: );
858: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
859: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
860: RAISE;
861: WHEN NO_DATA_FOUND THEN
862: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
863: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
859: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
860: RAISE;
861: WHEN NO_DATA_FOUND THEN
862: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
863: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
864: IF (x_msg_data IS NOT NULL) THEN
865: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Bsc_Kpi_Dim_Sets_Tl ';
866: ELSE
867: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Bsc_Kpi_Dim_Sets_Tl ';
869: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
870: RAISE;
871: WHEN OTHERS THEN
872: ROLLBACK TO DeleteBSCKpiDSetTlPvt;
873: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
874: IF (x_msg_data IS NOT NULL) THEN
875: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Bsc_Kpi_Dim_Sets_Tl ';
876: ELSE
877: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Bsc_Kpi_Dim_Sets_Tl ';
886: --: This procedure creates the properties for the dimension set for the KPI.
887: --: This procedure belongs to the Dimension Set API.
888:
889: procedure Create_Dim_Level_Properties(
890: p_commit IN varchar2 := FND_API.G_FALSE
891: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
892: ,x_return_status OUT NOCOPY varchar2
893: ,x_msg_count OUT NOCOPY number
894: ,x_msg_data OUT NOCOPY varchar2
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
906: select count(*)
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
954: commit;
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
954: commit;
955: end if;
956: EXCEPTION
957: WHEN FND_API.G_EXC_ERROR THEN
953: if (p_commit = FND_API.G_TRUE) then
954: commit;
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
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: );
964: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
960: ( p_encoded => FND_API.G_FALSE
961: , p_count => x_msg_count
962: , p_data => x_msg_data
963: );
964: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
961: , p_count => x_msg_count
962: , p_data => x_msg_data
963: );
964: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
963: );
964: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
974: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
970: ( p_encoded => FND_API.G_FALSE
971: , p_count => x_msg_count
972: , p_data => x_msg_data
973: );
974: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
975: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
976: RAISE;
977: WHEN NO_DATA_FOUND THEN
978: ROLLBACK TO CreateBSCDimLevPropPvt;
971: , p_count => x_msg_count
972: , p_data => x_msg_data
973: );
974: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
975: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
976: RAISE;
977: WHEN NO_DATA_FOUND THEN
978: ROLLBACK TO CreateBSCDimLevPropPvt;
979: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
975: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
976: RAISE;
977: WHEN NO_DATA_FOUND THEN
978: ROLLBACK TO CreateBSCDimLevPropPvt;
979: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
980: IF (x_msg_data IS NOT NULL) THEN
981: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Level_Properties ';
982: ELSE
983: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Level_Properties ';
985: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
986: RAISE;
987: WHEN OTHERS THEN
988: ROLLBACK TO CreateBSCDimLevPropPvt;
989: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
990: IF (x_msg_data IS NOT NULL) THEN
991: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Level_Properties ';
992: ELSE
993: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Level_Properties ';
999: /************************************************************************************
1000: ************************************************************************************/
1001:
1002: procedure Retrieve_Dim_Level_Properties(
1003: p_commit IN varchar2 := FND_API.G_FALSE
1004: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1005: ,x_Dim_Set_Rec IN OUT NOCOPY BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1006: ,x_return_status OUT NOCOPY varchar2
1007: ,x_msg_count OUT NOCOPY number
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
1019: ,default_key_value
1035: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
1036: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id
1037: and dim_level_id = p_Dim_Set_Rec.Bsc_Level_Id;
1038:
1039: if (p_commit = FND_API.G_TRUE) then
1040: commit;
1041: end if;
1042:
1043: EXCEPTION
1040: commit;
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
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);
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
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
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
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: );
1059: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1055: ( p_encoded => FND_API.G_FALSE
1056: , p_count => x_msg_count
1057: , p_data => x_msg_data
1058: );
1059: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1060: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1061: RAISE;
1062: WHEN NO_DATA_FOUND THEN
1063: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1056: , p_count => x_msg_count
1057: , p_data => x_msg_data
1058: );
1059: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1060: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1061: RAISE;
1062: WHEN NO_DATA_FOUND THEN
1063: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1064: IF (x_msg_data IS NOT NULL) THEN
1059: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1060: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1061: RAISE;
1062: WHEN NO_DATA_FOUND THEN
1063: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1064: IF (x_msg_data IS NOT NULL) THEN
1065: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Level_Properties ';
1066: ELSE
1067: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Level_Properties ';
1068: END IF;
1069: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1070: RAISE;
1071: WHEN OTHERS THEN
1072: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1073: IF (x_msg_data IS NOT NULL) THEN
1074: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Level_Properties ';
1075: ELSE
1076: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Level_Properties ';
1082: /************************************************************************************
1083: ************************************************************************************/
1084:
1085: procedure Update_Dim_Level_Properties(
1086: p_commit IN varchar2 := FND_API.G_FALSE
1087: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1088: ,x_return_status OUT NOCOPY varchar2
1089: ,x_msg_count OUT NOCOPY number
1090: ,x_msg_data OUT NOCOPY varchar2
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'
1105: ,'indicator'
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
1115: from BSC_KPI_DIM_SETS_TL
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
1126: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
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.
1133: if p_Dim_Set_Rec.Bsc_Level_Id is not null then
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');
1145: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_ID', p_Dim_Set_Rec.Bsc_Level_Id);
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
1151: -- changed by procedure, therefore we get what is there before we do any updates.
1206: where indicator = l_Dim_Set_Rec.Bsc_Kpi_Id
1207: and dim_set_id = l_Dim_Set_Rec.Bsc_Dim_Set_Id
1208: and dim_level_id = l_Dim_Set_Rec.Bsc_Level_Id;
1209:
1210: if (p_commit = FND_API.G_TRUE) then
1211: commit;
1212: end if;
1213:
1214: EXCEPTION
1211: commit;
1212: end if;
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
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: );
1222: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1218: ( p_encoded => FND_API.G_FALSE
1219: , p_count => x_msg_count
1220: , p_data => x_msg_data
1221: );
1222: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
1219: , p_count => x_msg_count
1220: , p_data => x_msg_data
1221: );
1222: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
1221: );
1222: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
1232: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1228: ( p_encoded => FND_API.G_FALSE
1229: , p_count => x_msg_count
1230: , p_data => x_msg_data
1231: );
1232: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1233: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1234: RAISE;
1235: WHEN NO_DATA_FOUND THEN
1236: ROLLBACK TO UpdateBSCDimLevPropPvt;
1229: , p_count => x_msg_count
1230: , p_data => x_msg_data
1231: );
1232: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1233: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1234: RAISE;
1235: WHEN NO_DATA_FOUND THEN
1236: ROLLBACK TO UpdateBSCDimLevPropPvt;
1237: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1233: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1234: RAISE;
1235: WHEN NO_DATA_FOUND THEN
1236: ROLLBACK TO UpdateBSCDimLevPropPvt;
1237: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1238: IF (x_msg_data IS NOT NULL) THEN
1239: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Level_Properties ';
1240: ELSE
1241: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Level_Properties ';
1243: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1244: RAISE;
1245: WHEN OTHERS THEN
1246: ROLLBACK TO UpdateBSCDimLevPropPvt;
1247: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1248: IF (x_msg_data IS NOT NULL) THEN
1249: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Level_Properties ';
1250: ELSE
1251: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Level_Properties ';
1257: /************************************************************************************
1258: ************************************************************************************/
1259:
1260: procedure Delete_Dim_Level_Properties(
1261: p_commit IN varchar2 := FND_API.G_FALSE
1262: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1263: ,x_return_status OUT NOCOPY varchar2
1264: ,x_msg_count OUT NOCOPY number
1265: ,x_msg_data OUT NOCOPY varchar2
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'
1278: ,'indicator'
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
1288: from BSC_KPI_DIM_SETS_TL
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
1299: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
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:
1306: delete from BSC_KPI_DIM_LEVEL_PROPERTIES
1307: where indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
1308: and dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id
1309: and dim_level_id = p_Dim_Set_Rec.Bsc_Level_Id;
1310:
1311: if (p_commit = FND_API.G_TRUE) then
1312: commit;
1313: end if;
1314:
1315: EXCEPTION
1312: commit;
1313: end if;
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
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: );
1323: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1319: ( p_encoded => FND_API.G_FALSE
1320: , p_count => x_msg_count
1321: , p_data => x_msg_data
1322: );
1323: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
1320: , p_count => x_msg_count
1321: , p_data => x_msg_data
1322: );
1323: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
1322: );
1323: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
1333: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1329: ( p_encoded => FND_API.G_FALSE
1330: , p_count => x_msg_count
1331: , p_data => x_msg_data
1332: );
1333: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1334: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1335: RAISE;
1336: WHEN NO_DATA_FOUND THEN
1337: ROLLBACK TO DeleteBSCDimLevPropPvt;
1330: , p_count => x_msg_count
1331: , p_data => x_msg_data
1332: );
1333: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1334: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1335: RAISE;
1336: WHEN NO_DATA_FOUND THEN
1337: ROLLBACK TO DeleteBSCDimLevPropPvt;
1338: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1334: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1335: RAISE;
1336: WHEN NO_DATA_FOUND THEN
1337: ROLLBACK TO DeleteBSCDimLevPropPvt;
1338: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1339: IF (x_msg_data IS NOT NULL) THEN
1340: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Level_Properties ';
1341: ELSE
1342: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Level_Properties ';
1344: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1345: RAISE;
1346: WHEN OTHERS THEN
1347: ROLLBACK TO DeleteBSCDimLevPropPvt;
1348: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1349: IF (x_msg_data IS NOT NULL) THEN
1350: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Level_Properties ';
1351: ELSE
1352: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Level_Properties ';
1361: --: This procedure assigns the dimension ids to the dimension set.
1362: --: This procedure is part of the Dimension Set API.
1363:
1364: PROCEDURE Create_Dim_Levels
1365: ( p_commit IN VARCHAR2 := FND_API.G_FALSE
1366: , p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1367: , x_return_status OUT NOCOPY VARCHAR2
1368: , x_msg_count OUT NOCOPY NUMBER
1369: , x_msg_data OUT NOCOPY VARCHAR2
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
1392: SELECT count(*)
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
1536: COMMIT;
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
1536: COMMIT;
1537: END IF;
1538: EXCEPTION
1539: WHEN FND_API.G_EXC_ERROR THEN
1535: IF (p_commit = FND_API.G_TRUE) THEN
1536: COMMIT;
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
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: );
1546: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1542: ( p_encoded => FND_API.G_FALSE
1543: , p_count => x_msg_count
1544: , p_data => x_msg_data
1545: );
1546: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
1543: , p_count => x_msg_count
1544: , p_data => x_msg_data
1545: );
1546: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
1545: );
1546: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
1556: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1552: ( p_encoded => FND_API.G_FALSE
1553: , p_count => x_msg_count
1554: , p_data => x_msg_data
1555: );
1556: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1557: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1558: RAISE;
1559: WHEN NO_DATA_FOUND THEN
1560: ROLLBACK TO DeleteBSCDimLevsPVT;
1553: , p_count => x_msg_count
1554: , p_data => x_msg_data
1555: );
1556: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1557: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1558: RAISE;
1559: WHEN NO_DATA_FOUND THEN
1560: ROLLBACK TO DeleteBSCDimLevsPVT;
1561: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1557: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1558: RAISE;
1559: WHEN NO_DATA_FOUND THEN
1560: ROLLBACK TO DeleteBSCDimLevsPVT;
1561: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1562: IF (x_msg_data IS NOT NULL) THEN
1563: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Levels ';
1564: ELSE
1565: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Levels ';
1567: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1568: RAISE;
1569: WHEN OTHERS THEN
1570: ROLLBACK TO DeleteBSCDimLevsPVT;
1571: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1572: IF (x_msg_data IS NOT NULL) THEN
1573: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Create_Dim_Levels ';
1574: ELSE
1575: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Create_Dim_Levels ';
1581: /************************************************************************************
1582: ************************************************************************************/
1583:
1584: procedure Retrieve_Dim_Levels(
1585: p_commit IN varchar2 := FND_API.G_FALSE
1586: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1587: ,x_Dim_Set_Rec IN OUT NOCOPY BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1588: ,x_return_status OUT NOCOPY varchar2
1589: ,x_msg_count OUT NOCOPY number
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
1599: , a.dim_set_id
1671: and a.indicator = p_Dim_Set_Rec.Bsc_Kpi_Id
1672: and a.dim_set_id = p_Dim_Set_Rec.Bsc_Dim_Set_Id
1673: and a.level_table_name = p_Dim_Set_Rec.Bsc_Level_Name
1674: and b.language = USERENV('LANG');
1675: if (p_commit = FND_API.G_TRUE) then
1676: commit;
1677: end if;
1678:
1679: EXCEPTION
1676: commit;
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
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);
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
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
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
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: );
1695: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1691: ( p_encoded => FND_API.G_FALSE
1692: , p_count => x_msg_count
1693: , p_data => x_msg_data
1694: );
1695: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1696: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1697: RAISE;
1698: WHEN NO_DATA_FOUND THEN
1699: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1692: , p_count => x_msg_count
1693: , p_data => x_msg_data
1694: );
1695: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1696: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1697: RAISE;
1698: WHEN NO_DATA_FOUND THEN
1699: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1700: IF (x_msg_data IS NOT NULL) THEN
1695: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1696: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1697: RAISE;
1698: WHEN NO_DATA_FOUND THEN
1699: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1700: IF (x_msg_data IS NOT NULL) THEN
1701: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Levels ';
1702: ELSE
1703: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Levels ';
1704: END IF;
1705: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1706: RAISE;
1707: WHEN OTHERS THEN
1708: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1709: IF (x_msg_data IS NOT NULL) THEN
1710: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Levels ';
1711: ELSE
1712: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Retrieve_Dim_Levels ';
1718: /************************************************************************************
1719: ************************************************************************************/
1720:
1721: procedure Update_Dim_Levels(
1722: p_commit IN varchar2 := FND_API.G_FALSE
1723: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1724: ,x_return_status OUT NOCOPY varchar2
1725: ,x_msg_count OUT NOCOPY number
1726: ,x_msg_data OUT NOCOPY varchar2
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'
1741: ,'indicator'
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
1751: from BSC_KPI_DIM_SETS_TL
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
1762: FND_MESSAGE.SET_NAME('BSC','BSC_NO_KPI_ID_ENTERED');
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.
1769: if p_Dim_Set_Rec.Bsc_Level_Name is not null then
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');
1782: FND_MESSAGE.SET_TOKEN('BSC_LEVEL_NAME', p_Dim_Set_Rec.Bsc_Level_Name);
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
1788: -- changed by procedure, therefore we get what is there before we do any updates.
1941: and dim_set_id = l_Dim_Set_Rec.Bsc_Dim_Set_Id
1942: and dim_level_index = l_Dim_Set_Rec.Bsc_Dset_Dim_Level_Index
1943: and USERENV('LANG') IN (LANGUAGE, SOURCE_LANG);
1944:
1945: if (p_commit = FND_API.G_TRUE) then
1946: commit;
1947: end if;
1948:
1949: EXCEPTION
1946: commit;
1947: end if;
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
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: );
1957: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
1953: ( p_encoded => FND_API.G_FALSE
1954: , p_count => x_msg_count
1955: , p_data => x_msg_data
1956: );
1957: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
1954: , p_count => x_msg_count
1955: , p_data => x_msg_data
1956: );
1957: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
1956: );
1957: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
1967: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1963: ( p_encoded => FND_API.G_FALSE
1964: , p_count => x_msg_count
1965: , p_data => x_msg_data
1966: );
1967: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1968: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1969: RAISE;
1970: WHEN NO_DATA_FOUND THEN
1971: ROLLBACK TO UpdateBSCDimLevsPVT;
1964: , p_count => x_msg_count
1965: , p_data => x_msg_data
1966: );
1967: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1968: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1969: RAISE;
1970: WHEN NO_DATA_FOUND THEN
1971: ROLLBACK TO UpdateBSCDimLevsPVT;
1972: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1968: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
1969: RAISE;
1970: WHEN NO_DATA_FOUND THEN
1971: ROLLBACK TO UpdateBSCDimLevsPVT;
1972: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1973: IF (x_msg_data IS NOT NULL) THEN
1974: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Levels ';
1975: ELSE
1976: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Levels ';
1978: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
1979: RAISE;
1980: WHEN OTHERS THEN
1981: ROLLBACK TO UpdateBSCDimLevsPVT;
1982: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1983: IF (x_msg_data IS NOT NULL) THEN
1984: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Dim_Levels ';
1985: ELSE
1986: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Dim_Levels ';
1992: /************************************************************************************
1993: ************************************************************************************/
1994:
1995: procedure Delete_Dim_Levels(
1996: p_commit IN varchar2 := FND_API.G_FALSE
1997: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
1998: ,x_return_status OUT NOCOPY varchar2
1999: ,x_msg_count OUT NOCOPY number
2000: ,x_msg_data OUT NOCOPY varchar2
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'
2022: ,'indicator'
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');
2032: FND_MESSAGE.SET_TOKEN('BSC_KPI', p_Dim_Set_Rec.Bsc_Kpi_Id);
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
2038: l_dim_index := cd.Dim_Level_Index;
2056: AND dim_level_index = l_dim_index;
2057:
2058: END LOOP;
2059:
2060: if (p_commit = FND_API.G_TRUE) then
2061: commit;
2062: end if;
2063:
2064: EXCEPTION
2061: commit;
2062: end if;
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
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: );
2072: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
2068: ( p_encoded => FND_API.G_FALSE
2069: , p_count => x_msg_count
2070: , p_data => x_msg_data
2071: );
2072: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
2069: , p_count => x_msg_count
2070: , p_data => x_msg_data
2071: );
2072: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
2071: );
2072: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
2082: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2078: ( p_encoded => FND_API.G_FALSE
2079: , p_count => x_msg_count
2080: , p_data => x_msg_data
2081: );
2082: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2083: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2084: RAISE;
2085: WHEN NO_DATA_FOUND THEN
2086: ROLLBACK TO DeleteBSCDimLevsPVT;
2079: , p_count => x_msg_count
2080: , p_data => x_msg_data
2081: );
2082: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2083: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2084: RAISE;
2085: WHEN NO_DATA_FOUND THEN
2086: ROLLBACK TO DeleteBSCDimLevsPVT;
2087: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2083: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2084: RAISE;
2085: WHEN NO_DATA_FOUND THEN
2086: ROLLBACK TO DeleteBSCDimLevsPVT;
2087: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2088: IF (x_msg_data IS NOT NULL) THEN
2089: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Levels ';
2090: ELSE
2091: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Levels ';
2093: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
2094: RAISE;
2095: WHEN OTHERS THEN
2096: ROLLBACK TO DeleteBSCDimLevsPVT;
2097: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2098: IF (x_msg_data IS NOT NULL) THEN
2099: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Delete_Dim_Levels ';
2100: ELSE
2101: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Delete_Dim_Levels ';
2110: --: This procedure updates an analysis option with dimension set information.
2111: --: This procedure is part of the Dimension Set API.
2112:
2113: procedure Update_Kpi_Analysis_Options_B(
2114: p_commit IN varchar2 := FND_API.G_FALSE
2115: ,p_Dim_Set_Rec IN BSC_DIMENSION_SETS_PUB.Bsc_Dim_Set_Rec_Type
2116: ,x_return_status OUT NOCOPY varchar2
2117: ,x_msg_count OUT NOCOPY number
2118: ,x_msg_data OUT NOCOPY varchar2
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
2128: l_option_id := p_Dim_Set_Rec.Bsc_Analysis_Id;
2152:
2153: end if;
2154:
2155:
2156: if (p_commit = FND_API.G_TRUE) then
2157: commit;
2158: end if;
2159:
2160: EXCEPTION
2157: commit;
2158: end if;
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
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: );
2168: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
2164: ( p_encoded => FND_API.G_FALSE
2165: , p_count => x_msg_count
2166: , p_data => x_msg_data
2167: );
2168: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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;
2165: , p_count => x_msg_count
2166: , p_data => x_msg_data
2167: );
2168: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
2167: );
2168: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_ERROR '||x_msg_data);
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
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: );
2178: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2174: ( p_encoded => FND_API.G_FALSE
2175: , p_count => x_msg_count
2176: , p_data => x_msg_data
2177: );
2178: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2179: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2180: RAISE;
2181: WHEN NO_DATA_FOUND THEN
2182: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2175: , p_count => x_msg_count
2176: , p_data => x_msg_data
2177: );
2178: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2179: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2180: RAISE;
2181: WHEN NO_DATA_FOUND THEN
2182: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2183: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2179: --DBMS_OUTPUT.PUT_LINE('EXCEPTION FND_API.G_EXC_UNEXPECTED_ERROR '||x_msg_data);
2180: RAISE;
2181: WHEN NO_DATA_FOUND THEN
2182: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2183: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2184: IF (x_msg_data IS NOT NULL) THEN
2185: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Kpi_Analysis_Options_B ';
2186: ELSE
2187: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Kpi_Analysis_Options_B ';
2189: --DBMS_OUTPUT.PUT_LINE('EXCEPTION NO_DATA_FOUND '||x_msg_data);
2190: RAISE;
2191: WHEN OTHERS THEN
2192: ROLLBACK TO UpdateBSCKpiAnaOptsPVT;
2193: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2194: IF (x_msg_data IS NOT NULL) THEN
2195: x_msg_data := x_msg_data||' -> BSC_DIMENSION_SETS_PVT.Update_Kpi_Analysis_Options_B ';
2196: ELSE
2197: x_msg_data := SQLERRM||' at BSC_DIMENSION_SETS_PVT.Update_Kpi_Analysis_Options_B ';