67: --
68: PROCEDURE Enforce_WS_Concurrency
69: (
70: p_api_version IN NUMBER ,
71: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
72: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
73: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
74: p_return_status OUT NOCOPY VARCHAR2 ,
75: p_msg_count OUT NOCOPY NUMBER ,
68: PROCEDURE Enforce_WS_Concurrency
69: (
70: p_api_version IN NUMBER ,
71: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
72: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
73: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
74: p_return_status OUT NOCOPY VARCHAR2 ,
75: p_msg_count OUT NOCOPY NUMBER ,
76: p_msg_data OUT NOCOPY VARCHAR2 ,
69: (
70: p_api_version IN NUMBER ,
71: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
72: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
73: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
74: p_return_status OUT NOCOPY VARCHAR2 ,
75: p_msg_count OUT NOCOPY NUMBER ,
76: p_msg_data OUT NOCOPY VARCHAR2 ,
77: --
93: BEGIN
94: --
95: SAVEPOINT Enforce_WS_Concurrency_Pvt ;
96: --
97: IF NOT FND_API.Compatible_API_Call ( l_api_version,
98: p_api_version,
99: l_api_name,
100: G_PKG_NAME )
101: THEN
98: p_api_version,
99: l_api_name,
100: G_PKG_NAME )
101: THEN
102: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
103: END IF;
104: --
105:
106: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
102: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
103: END IF;
104: --
105:
106: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
107: FND_MSG_PUB.initialize ;
108: END IF;
109: --
110: p_return_status := FND_API.G_RET_STS_SUCCESS ;
106: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
107: FND_MSG_PUB.initialize ;
108: END IF;
109: --
110: p_return_status := FND_API.G_RET_STS_SUCCESS ;
111: --
112:
113: --
114: -- First lock the current worksheet p_worksheet_id
115: --
116: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
117: (
118: p_api_version => 1.0 ,
119: p_init_msg_list => FND_API.G_FALSE ,
120: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
121: p_return_status => l_return_status ,
122: p_msg_count => l_msg_count ,
123: p_msg_data => l_msg_data ,
116: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
117: (
118: p_api_version => 1.0 ,
119: p_init_msg_list => FND_API.G_FALSE ,
120: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
121: p_return_status => l_return_status ,
122: p_msg_count => l_msg_count ,
123: p_msg_data => l_msg_data ,
124: --
126: p_concurrency_entity_name => 'WORKSHEET',
127: p_concurrency_entity_id => p_worksheet_id
128: );
129: --
130: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
131: RAISE FND_API.G_EXC_ERROR ;
132: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
134: END IF;
127: p_concurrency_entity_id => p_worksheet_id
128: );
129: --
130: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
131: RAISE FND_API.G_EXC_ERROR ;
132: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
134: END IF;
135:
128: );
129: --
130: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
131: RAISE FND_API.G_EXC_ERROR ;
132: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
134: END IF;
135:
136: --
129: --
130: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
131: RAISE FND_API.G_EXC_ERROR ;
132: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
133: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
134: END IF;
135:
136: --
137: -- Find parent or child worksheets depending on p_parent_or_child_mode
141: --
142: PSB_WS_Ops_Pvt.Find_Parent_Worksheets
143: (
144: p_api_version => 1.0 ,
145: p_init_msg_list => FND_API.G_FALSE,
146: p_commit => FND_API.G_FALSE,
147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
148: p_return_status => l_return_status,
149: p_msg_count => l_msg_count,
142: PSB_WS_Ops_Pvt.Find_Parent_Worksheets
143: (
144: p_api_version => 1.0 ,
145: p_init_msg_list => FND_API.G_FALSE,
146: p_commit => FND_API.G_FALSE,
147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
148: p_return_status => l_return_status,
149: p_msg_count => l_msg_count,
150: p_msg_data => l_msg_data,
143: (
144: p_api_version => 1.0 ,
145: p_init_msg_list => FND_API.G_FALSE,
146: p_commit => FND_API.G_FALSE,
147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
148: p_return_status => l_return_status,
149: p_msg_count => l_msg_count,
150: p_msg_data => l_msg_data,
151: --
157: --
158: PSB_WS_Ops_Pvt.Find_Child_Worksheets
159: (
160: p_api_version => 1.0 ,
161: p_init_msg_list => FND_API.G_FALSE,
162: p_commit => FND_API.G_FALSE,
163: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
164: p_return_status => l_return_status,
165: p_msg_count => l_msg_count,
158: PSB_WS_Ops_Pvt.Find_Child_Worksheets
159: (
160: p_api_version => 1.0 ,
161: p_init_msg_list => FND_API.G_FALSE,
162: p_commit => FND_API.G_FALSE,
163: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
164: p_return_status => l_return_status,
165: p_msg_count => l_msg_count,
166: p_msg_data => l_msg_data,
159: (
160: p_api_version => 1.0 ,
161: p_init_msg_list => FND_API.G_FALSE,
162: p_commit => FND_API.G_FALSE,
163: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
164: p_return_status => l_return_status,
165: p_msg_count => l_msg_count,
166: p_msg_data => l_msg_data,
167: --
170: );
171: --
172: END IF ;
173:
174: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
175: RAISE FND_API.G_EXC_ERROR ;
176: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
178: END IF;
171: --
172: END IF ;
173:
174: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
175: RAISE FND_API.G_EXC_ERROR ;
176: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
178: END IF;
179:
172: END IF ;
173:
174: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
175: RAISE FND_API.G_EXC_ERROR ;
176: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
178: END IF;
179:
180: FOR i IN 1..l_worksheets_tab.COUNT
173:
174: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
175: RAISE FND_API.G_EXC_ERROR ;
176: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
177: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
178: END IF;
179:
180: FOR i IN 1..l_worksheets_tab.COUNT
181: LOOP
184: --
185: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
186: (
187: p_api_version => 1.0 ,
188: p_init_msg_list => FND_API.G_FALSE ,
189: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
190: p_return_status => l_return_status ,
191: p_msg_count => l_msg_count ,
192: p_msg_data => l_msg_data ,
185: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
186: (
187: p_api_version => 1.0 ,
188: p_init_msg_list => FND_API.G_FALSE ,
189: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
190: p_return_status => l_return_status ,
191: p_msg_count => l_msg_count ,
192: p_msg_data => l_msg_data ,
193: --
195: p_concurrency_entity_name => 'WORKSHEET',
196: p_concurrency_entity_id => l_worksheets_tab(i)
197: );
198: --
199: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
200: RAISE FND_API.G_EXC_ERROR ;
201: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
202: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
203: END IF;
196: p_concurrency_entity_id => l_worksheets_tab(i)
197: );
198: --
199: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
200: RAISE FND_API.G_EXC_ERROR ;
201: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
202: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
203: END IF;
204:
197: );
198: --
199: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
200: RAISE FND_API.G_EXC_ERROR ;
201: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
202: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
203: END IF;
204:
205: --
198: --
199: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
200: RAISE FND_API.G_EXC_ERROR ;
201: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
202: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
203: END IF;
204:
205: --
206: END LOOP ;
205: --
206: END LOOP ;
207:
208: --
209: IF FND_API.To_Boolean ( p_commit ) THEN
210: COMMIT WORK;
211: END IF;
212: --
213: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
214: p_data => p_msg_data );
215: --
216: EXCEPTION
217: --
218: WHEN FND_API.G_EXC_ERROR THEN
219: --
220: -- For Bug 4337768: Commenting out Rollack.
221: -- ROLLBACK TO Enforce_WS_Concurrency_Pvt ;
222: p_return_status := FND_API.G_RET_STS_ERROR;
218: WHEN FND_API.G_EXC_ERROR THEN
219: --
220: -- For Bug 4337768: Commenting out Rollack.
221: -- ROLLBACK TO Enforce_WS_Concurrency_Pvt ;
222: p_return_status := FND_API.G_RET_STS_ERROR;
223: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
224: p_data => p_msg_data );
225: --
226: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
222: p_return_status := FND_API.G_RET_STS_ERROR;
223: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
224: p_data => p_msg_data );
225: --
226: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
227: --
228: ROLLBACK TO Enforce_WS_Concurrency_Pvt ;
229: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
230: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
225: --
226: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
227: --
228: ROLLBACK TO Enforce_WS_Concurrency_Pvt ;
229: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
230: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
231: p_data => p_msg_data );
232: --
233: WHEN OTHERS THEN
232: --
233: WHEN OTHERS THEN
234: --
235: ROLLBACK TO Enforce_WS_Concurrency_Pvt ;
236: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
237: --
238: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
239: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
240: l_api_name);
256: --
257: PROCEDURE Check_WS_Ops_Concurrency
258: (
259: p_api_version IN NUMBER ,
260: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
261: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
262: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
263: p_return_status OUT NOCOPY VARCHAR2 ,
264: p_msg_count OUT NOCOPY NUMBER ,
257: PROCEDURE Check_WS_Ops_Concurrency
258: (
259: p_api_version IN NUMBER ,
260: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
261: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
262: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
263: p_return_status OUT NOCOPY VARCHAR2 ,
264: p_msg_count OUT NOCOPY NUMBER ,
265: p_msg_data OUT NOCOPY VARCHAR2 ,
258: (
259: p_api_version IN NUMBER ,
260: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
261: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
262: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
263: p_return_status OUT NOCOPY VARCHAR2 ,
264: p_msg_count OUT NOCOPY NUMBER ,
265: p_msg_data OUT NOCOPY VARCHAR2 ,
266: --
279: BEGIN
280: --
281: SAVEPOINT Check_WS_Ops_Concurrency_Pvt ;
282: --
283: IF NOT FND_API.Compatible_API_Call ( l_api_version,
284: p_api_version,
285: l_api_name,
286: G_PKG_NAME )
287: THEN
284: p_api_version,
285: l_api_name,
286: G_PKG_NAME )
287: THEN
288: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
289: END IF;
290: --
291:
292: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
288: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
289: END IF;
290: --
291:
292: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
293: FND_MSG_PUB.initialize ;
294: END IF;
295: --
296: p_return_status := FND_API.G_RET_STS_SUCCESS ;
292: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
293: FND_MSG_PUB.initialize ;
294: END IF;
295: --
296: p_return_status := FND_API.G_RET_STS_SUCCESS ;
297: --
298:
299: IF p_operation_type IN ('VALIDATE', 'COPY') THEN
300: --
309: --
310: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
311: (
312: p_api_version => 1.0,
313: p_init_msg_list => FND_API.G_FALSE ,
314: p_commit => FND_API.G_FALSE ,
315: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
316: p_return_status => l_return_status,
317: p_msg_count => l_msg_count,
310: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
311: (
312: p_api_version => 1.0,
313: p_init_msg_list => FND_API.G_FALSE ,
314: p_commit => FND_API.G_FALSE ,
315: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
316: p_return_status => l_return_status,
317: p_msg_count => l_msg_count,
318: p_msg_data => l_msg_data,
311: (
312: p_api_version => 1.0,
313: p_init_msg_list => FND_API.G_FALSE ,
314: p_commit => FND_API.G_FALSE ,
315: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
316: p_return_status => l_return_status,
317: p_msg_count => l_msg_count,
318: p_msg_data => l_msg_data,
319: --
321: p_parent_or_child_mode => 'CHILD' ,
322: p_maintenance_mode => 'MAINTENANCE'
323: );
324: --
325: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
326: RAISE FND_API.G_EXC_ERROR ;
327: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
328: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
329: END IF;
322: p_maintenance_mode => 'MAINTENANCE'
323: );
324: --
325: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
326: RAISE FND_API.G_EXC_ERROR ;
327: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
328: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
329: END IF;
330: --
323: );
324: --
325: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
326: RAISE FND_API.G_EXC_ERROR ;
327: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
328: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
329: END IF;
330: --
331: ELSIF p_operation_type IN ('MOVE') THEN
324: --
325: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
326: RAISE FND_API.G_EXC_ERROR ;
327: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
328: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
329: END IF;
330: --
331: ELSIF p_operation_type IN ('MOVE') THEN
332: --
334: --
335: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
336: (
337: p_api_version => 1.0,
338: p_init_msg_list => FND_API.G_FALSE ,
339: p_commit => FND_API.G_FALSE ,
340: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
341: p_return_status => l_return_status,
342: p_msg_count => l_msg_count,
335: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
336: (
337: p_api_version => 1.0,
338: p_init_msg_list => FND_API.G_FALSE ,
339: p_commit => FND_API.G_FALSE ,
340: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
341: p_return_status => l_return_status,
342: p_msg_count => l_msg_count,
343: p_msg_data => l_msg_data,
336: (
337: p_api_version => 1.0,
338: p_init_msg_list => FND_API.G_FALSE ,
339: p_commit => FND_API.G_FALSE ,
340: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
341: p_return_status => l_return_status,
342: p_msg_count => l_msg_count,
343: p_msg_data => l_msg_data,
344: --
346: p_parent_or_child_mode => 'CHILD' ,
347: p_maintenance_mode => 'MAINTENANCE'
348: );
349: --
350: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
351: RAISE FND_API.G_EXC_ERROR ;
352: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
353: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
354: END IF;
347: p_maintenance_mode => 'MAINTENANCE'
348: );
349: --
350: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
351: RAISE FND_API.G_EXC_ERROR ;
352: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
353: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
354: END IF;
355: --
348: );
349: --
350: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
351: RAISE FND_API.G_EXC_ERROR ;
352: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
353: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
354: END IF;
355: --
356:
349: --
350: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
351: RAISE FND_API.G_EXC_ERROR ;
352: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
353: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
354: END IF;
355: --
356:
357: --
360: --
361: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
362: (
363: p_api_version => 1.0,
364: p_init_msg_list => FND_API.G_FALSE ,
365: p_commit => FND_API.G_FALSE ,
366: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
367: p_return_status => l_return_status,
368: p_msg_count => l_msg_count,
361: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
362: (
363: p_api_version => 1.0,
364: p_init_msg_list => FND_API.G_FALSE ,
365: p_commit => FND_API.G_FALSE ,
366: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
367: p_return_status => l_return_status,
368: p_msg_count => l_msg_count,
369: p_msg_data => l_msg_data,
362: (
363: p_api_version => 1.0,
364: p_init_msg_list => FND_API.G_FALSE ,
365: p_commit => FND_API.G_FALSE ,
366: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
367: p_return_status => l_return_status,
368: p_msg_count => l_msg_count,
369: p_msg_data => l_msg_data,
370: --
372: p_parent_or_child_mode => 'PARENT' ,
373: p_maintenance_mode => 'MAINTENANCE'
374: );
375: --
376: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
377: RAISE FND_API.G_EXC_ERROR ;
378: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
379: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
380: END IF;
373: p_maintenance_mode => 'MAINTENANCE'
374: );
375: --
376: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
377: RAISE FND_API.G_EXC_ERROR ;
378: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
379: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
380: END IF;
381: --
374: );
375: --
376: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
377: RAISE FND_API.G_EXC_ERROR ;
378: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
379: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
380: END IF;
381: --
382: ELSIF p_operation_type IN ('MERGE' ) THEN
375: --
376: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
377: RAISE FND_API.G_EXC_ERROR ;
378: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
379: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
380: END IF;
381: --
382: ELSIF p_operation_type IN ('MERGE' ) THEN
383: --
387: --
388: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
389: (
390: p_api_version => 1.0,
391: p_init_msg_list => FND_API.G_FALSE,
392: p_commit => FND_API.G_FALSE,
393: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
394: p_return_status => l_return_status,
395: p_msg_count => l_msg_count,
388: PSB_WS_Ops_Pvt.Enforce_WS_Concurrency
389: (
390: p_api_version => 1.0,
391: p_init_msg_list => FND_API.G_FALSE,
392: p_commit => FND_API.G_FALSE,
393: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
394: p_return_status => l_return_status,
395: p_msg_count => l_msg_count,
396: p_msg_data => l_msg_data,
389: (
390: p_api_version => 1.0,
391: p_init_msg_list => FND_API.G_FALSE,
392: p_commit => FND_API.G_FALSE,
393: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
394: p_return_status => l_return_status,
395: p_msg_count => l_msg_count,
396: p_msg_data => l_msg_data,
397: --
399: p_parent_or_child_mode => 'PARENT' ,
400: p_maintenance_mode => 'MAINTENANCE'
401: );
402: --
403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR ;
405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
407: END IF;
400: p_maintenance_mode => 'MAINTENANCE'
401: );
402: --
403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR ;
405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
407: END IF;
408: --
401: );
402: --
403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR ;
405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
407: END IF;
408: --
409: ELSIF p_operation_type IN ('UNFREEZE' ) THEN
402: --
403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
404: RAISE FND_API.G_EXC_ERROR ;
405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
407: END IF;
408: --
409: ELSIF p_operation_type IN ('UNFREEZE' ) THEN
410: --
412: --
413: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
414: (
415: p_api_version => 1.0,
416: p_init_msg_list => FND_API.G_FALSE,
417: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
418: p_return_status => l_return_status,
419: p_msg_count => l_msg_count,
420: p_msg_data => l_msg_data,
413: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
414: (
415: p_api_version => 1.0,
416: p_init_msg_list => FND_API.G_FALSE,
417: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
418: p_return_status => l_return_status,
419: p_msg_count => l_msg_count,
420: p_msg_data => l_msg_data,
421: --
423: p_concurrency_entity_name => 'WORKSHEET' ,
424: p_concurrency_entity_id => p_worksheet_id
425: );
426: --
427: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
428: RAISE FND_API.G_EXC_ERROR ;
429: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
430: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
431: END IF;
424: p_concurrency_entity_id => p_worksheet_id
425: );
426: --
427: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
428: RAISE FND_API.G_EXC_ERROR ;
429: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
430: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
431: END IF;
432: --
425: );
426: --
427: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
428: RAISE FND_API.G_EXC_ERROR ;
429: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
430: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
431: END IF;
432: --
433: ELSE
426: --
427: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
428: RAISE FND_API.G_EXC_ERROR ;
429: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
430: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
431: END IF;
432: --
433: ELSE
434: --
434: --
435: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_ARGUMENT') ;
436: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
437: FND_MSG_PUB.Add;
438: RAISE FND_API.G_EXC_ERROR ;
439: --
440: END IF ;
441:
442: --
439: --
440: END IF ;
441:
442: --
443: IF FND_API.To_Boolean ( p_commit ) THEN
444: COMMIT WORK;
445: END IF;
446: --
447: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
448: p_data => p_msg_data );
449: --
450: EXCEPTION
451: --
452: WHEN FND_API.G_EXC_ERROR THEN
453: --
454: -- For Bug 4337768: Commenting out Rollback.
455: -- ROLLBACK TO Check_WS_Ops_Concurrency_Pvt ;
456: p_return_status := FND_API.G_RET_STS_ERROR;
452: WHEN FND_API.G_EXC_ERROR THEN
453: --
454: -- For Bug 4337768: Commenting out Rollback.
455: -- ROLLBACK TO Check_WS_Ops_Concurrency_Pvt ;
456: p_return_status := FND_API.G_RET_STS_ERROR;
457: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
458: p_data => p_msg_data );
459: --
460: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
456: p_return_status := FND_API.G_RET_STS_ERROR;
457: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
458: p_data => p_msg_data );
459: --
460: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
461: --
462: ROLLBACK TO Check_WS_Ops_Concurrency_Pvt ;
463: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
464: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
459: --
460: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
461: --
462: ROLLBACK TO Check_WS_Ops_Concurrency_Pvt ;
463: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
464: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
465: p_data => p_msg_data );
466: --
467: WHEN OTHERS THEN
466: --
467: WHEN OTHERS THEN
468: --
469: ROLLBACK TO Check_WS_Ops_Concurrency_Pvt ;
470: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
471: --
472: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
473: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
474: l_api_name );
494: --
495: PROCEDURE Create_Worksheet
496: (
497: p_api_version IN NUMBER ,
498: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
499: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
500: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
501: p_return_status OUT NOCOPY VARCHAR2 ,
502: p_msg_count OUT NOCOPY NUMBER ,
495: PROCEDURE Create_Worksheet
496: (
497: p_api_version IN NUMBER ,
498: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
499: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
500: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
501: p_return_status OUT NOCOPY VARCHAR2 ,
502: p_msg_count OUT NOCOPY NUMBER ,
503: p_msg_data OUT NOCOPY VARCHAR2 ,
496: (
497: p_api_version IN NUMBER ,
498: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
499: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
500: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
501: p_return_status OUT NOCOPY VARCHAR2 ,
502: p_msg_count OUT NOCOPY NUMBER ,
503: p_msg_data OUT NOCOPY VARCHAR2 ,
504: --
505: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
506: p_budget_group_id IN psb_worksheets.budget_group_id%TYPE ,
507: p_account_position_set_tbl IN account_position_set_tbl_type ,
508: p_service_package_operation_id
509: IN NUMBER := FND_API.G_MISS_NUM ,
510: p_worksheet_id_OUT OUT NOCOPY psb_worksheets.worksheet_id%TYPE
511: )
512: IS
513: --
567: BEGIN
568: --
569: SAVEPOINT Create_Worksheet_Pvt ;
570: --
571: IF NOT FND_API.Compatible_API_Call ( l_api_version,
572: p_api_version,
573: l_api_name,
574: G_PKG_NAME )
575: THEN
572: p_api_version,
573: l_api_name,
574: G_PKG_NAME )
575: THEN
576: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
577: END IF;
578: --
579:
580: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
576: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
577: END IF;
578: --
579:
580: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
581: FND_MSG_PUB.initialize ;
582: END IF;
583: --
584: p_return_status := FND_API.G_RET_STS_SUCCESS ;
580: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
581: FND_MSG_PUB.initialize ;
582: END IF;
583: --
584: p_return_status := FND_API.G_RET_STS_SUCCESS ;
585: p_worksheet_id_OUT := 0 ;
586: --
587:
588: --
599: --
600: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_ARGUMENT') ;
601: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
602: FND_MSG_PUB.Add;
603: RAISE FND_API.G_EXC_ERROR ;
604: END IF ;
605:
606:
607: --
615: --
616: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_WORKSHEET_ID') ;
617: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
618: FND_MSG_PUB.Add;
619: RAISE FND_API.G_EXC_ERROR ;
620: END IF ;
621:
622: -- l_budget_by_position defines whether worksheet contains positions or not.
623: l_budget_by_position := NVL(l_worksheets_rec.budget_by_position, 'N') ;
655: --
656: PSB_Worksheet_Pvt.Create_Worksheet
657: (
658: p_api_version => 1.0 ,
659: p_init_msg_list => FND_API.G_FALSE,
660: p_commit => FND_API.G_FALSE,
661: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
662: p_return_status => l_return_status,
663: p_msg_count => l_msg_count,
656: PSB_Worksheet_Pvt.Create_Worksheet
657: (
658: p_api_version => 1.0 ,
659: p_init_msg_list => FND_API.G_FALSE,
660: p_commit => FND_API.G_FALSE,
661: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
662: p_return_status => l_return_status,
663: p_msg_count => l_msg_count,
664: p_msg_data => l_msg_data ,
657: (
658: p_api_version => 1.0 ,
659: p_init_msg_list => FND_API.G_FALSE,
660: p_commit => FND_API.G_FALSE,
661: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
662: p_return_status => l_return_status,
663: p_msg_count => l_msg_count,
664: p_msg_data => l_msg_data ,
665: --
708: p_worksheet_id => l_new_worksheet_id
709: );
710: --
711: CLOSE l_worksheets_csr ;
712: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
713: RAISE FND_API.G_EXC_ERROR ;
714: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
715: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
716: END IF;
709: );
710: --
711: CLOSE l_worksheets_csr ;
712: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
713: RAISE FND_API.G_EXC_ERROR ;
714: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
715: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
716: END IF;
717:
710: --
711: CLOSE l_worksheets_csr ;
712: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
713: RAISE FND_API.G_EXC_ERROR ;
714: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
715: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
716: END IF;
717:
718: --
711: CLOSE l_worksheets_csr ;
712: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
713: RAISE FND_API.G_EXC_ERROR ;
714: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
715: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
716: END IF;
717:
718: --
719: -- Get budget calendar related info to find all the budget groups down in the
727: p_return_status => l_return_status ,
728: p_budget_calendar_id => l_main_budget_calendar_id
729: );
730: --
731: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
732: RAISE FND_API.G_EXC_ERROR ;
733: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
735: END IF;
728: p_budget_calendar_id => l_main_budget_calendar_id
729: );
730: --
731: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
732: RAISE FND_API.G_EXC_ERROR ;
733: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
735: END IF;
736: --
729: );
730: --
731: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
732: RAISE FND_API.G_EXC_ERROR ;
733: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
735: END IF;
736: --
737: END IF ;
730: --
731: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
732: RAISE FND_API.G_EXC_ERROR ;
733: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
734: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
735: END IF;
736: --
737: END IF ;
738:
744: SELECT count(*) INTO l_service_package_count
745: FROM psb_ws_submit_service_packages
746: WHERE worksheet_id = p_worksheet_id
747: AND operation_id = NVL( p_service_package_operation_id ,
748: FND_API.G_MISS_NUM ) ;
749: FOR l_lines_rec IN
750: (
751: SELECT lines.* ,
752: accts.code_combination_id ,
807: p_return_status => l_return_status
808: ) ;
809: --
810: CLOSE l_budget_accounts_csr;
811: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
812: RAISE FND_API.G_EXC_ERROR ;
813: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
814: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
815: END IF;
808: ) ;
809: --
810: CLOSE l_budget_accounts_csr;
811: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
812: RAISE FND_API.G_EXC_ERROR ;
813: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
814: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
815: END IF;
816: --
809: --
810: CLOSE l_budget_accounts_csr;
811: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
812: RAISE FND_API.G_EXC_ERROR ;
813: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
814: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
815: END IF;
816: --
817: EXIT;
810: CLOSE l_budget_accounts_csr;
811: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
812: RAISE FND_API.G_EXC_ERROR ;
813: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
814: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
815: END IF;
816: --
817: EXIT;
818: --
893: --
894: PSB_WS_Pos_Pvt.Create_Position_Matrix
895: (
896: p_api_version => 1.0 ,
897: p_init_msg_list => FND_API.G_FALSE ,
898: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
899: p_return_status => l_return_status ,
900: p_msg_count => l_msg_count ,
901: p_msg_data => l_msg_data ,
894: PSB_WS_Pos_Pvt.Create_Position_Matrix
895: (
896: p_api_version => 1.0 ,
897: p_init_msg_list => FND_API.G_FALSE ,
898: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
899: p_return_status => l_return_status ,
900: p_msg_count => l_msg_count ,
901: p_msg_data => l_msg_data ,
902: --
906: p_view_line_flag => l_lines_pos_rec.view_line_flag
907: ) ;
908: --
909: CLOSE l_budget_positions_csr ;
910: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
911: RAISE FND_API.G_EXC_ERROR ;
912: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
914: END IF;
907: ) ;
908: --
909: CLOSE l_budget_positions_csr ;
910: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
911: RAISE FND_API.G_EXC_ERROR ;
912: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
914: END IF;
915: --
908: --
909: CLOSE l_budget_positions_csr ;
910: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
911: RAISE FND_API.G_EXC_ERROR ;
912: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
914: END IF;
915: --
916:
909: CLOSE l_budget_positions_csr ;
910: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
911: RAISE FND_API.G_EXC_ERROR ;
912: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
913: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
914: END IF;
915: --
916:
917: --
942: p_creation_date => g_current_date,
943: p_return_status => l_return_status
944: ) ;
945: --
946: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
947: RAISE FND_API.G_EXC_ERROR ;
948: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
950: END IF;
943: p_return_status => l_return_status
944: ) ;
945: --
946: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
947: RAISE FND_API.G_EXC_ERROR ;
948: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
950: END IF;
951: --
944: ) ;
945: --
946: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
947: RAISE FND_API.G_EXC_ERROR ;
948: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
950: END IF;
951: --
952: END LOOP ;
945: --
946: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
947: RAISE FND_API.G_EXC_ERROR ;
948: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
949: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
950: END IF;
951: --
952: END LOOP ;
953:
974: ELSE
975: p_worksheet_id_OUT := l_new_worksheet_id ;
976: END IF ;
977: --
978: IF FND_API.To_Boolean ( p_commit ) THEN
979: COMMIT WORK;
980: END IF;
981: --
982: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
983: p_data => p_msg_data );
984: --
985: EXCEPTION
986: --
987: WHEN FND_API.G_EXC_ERROR THEN
988: --
989: ROLLBACK TO Create_Worksheet_Pvt ;
990: p_return_status := FND_API.G_RET_STS_ERROR;
991: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
986: --
987: WHEN FND_API.G_EXC_ERROR THEN
988: --
989: ROLLBACK TO Create_Worksheet_Pvt ;
990: p_return_status := FND_API.G_RET_STS_ERROR;
991: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
992: p_data => p_msg_data );
993: --
994: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
990: p_return_status := FND_API.G_RET_STS_ERROR;
991: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
992: p_data => p_msg_data );
993: --
994: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
995: --
996: ROLLBACK TO Create_Worksheet_Pvt ;
997: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
998: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
993: --
994: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
995: --
996: ROLLBACK TO Create_Worksheet_Pvt ;
997: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
998: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
999: p_data => p_msg_data );
1000: --
1001: WHEN OTHERS THEN
1008: CLOSE l_budget_accounts_csr ;
1009: END IF ;
1010: --
1011: ROLLBACK TO Create_Worksheet_Pvt ;
1012: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1013: --
1014: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1015: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
1016: l_api_name);
1031: --
1032: PROCEDURE Create_Worksheet
1033: (
1034: p_api_version IN NUMBER ,
1035: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1036: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1037: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1038: p_return_status OUT NOCOPY VARCHAR2 ,
1039: p_msg_count OUT NOCOPY NUMBER ,
1032: PROCEDURE Create_Worksheet
1033: (
1034: p_api_version IN NUMBER ,
1035: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1036: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1037: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1038: p_return_status OUT NOCOPY VARCHAR2 ,
1039: p_msg_count OUT NOCOPY NUMBER ,
1040: p_msg_data OUT NOCOPY VARCHAR2 ,
1033: (
1034: p_api_version IN NUMBER ,
1035: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1036: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1037: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1038: p_return_status OUT NOCOPY VARCHAR2 ,
1039: p_msg_count OUT NOCOPY NUMBER ,
1040: p_msg_data OUT NOCOPY VARCHAR2 ,
1041: --
1075: BEGIN
1076: --
1077: SAVEPOINT Create_Worksheet_Pvt ;
1078: --
1079: IF NOT FND_API.Compatible_API_Call ( l_api_version,
1080: p_api_version,
1081: l_api_name,
1082: G_PKG_NAME )
1083: THEN
1080: p_api_version,
1081: l_api_name,
1082: G_PKG_NAME )
1083: THEN
1084: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1085: END IF;
1086: --
1087:
1088: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1084: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1085: END IF;
1086: --
1087:
1088: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1089: FND_MSG_PUB.initialize ;
1090: END IF;
1091: --
1092: p_return_status := FND_API.G_RET_STS_SUCCESS ;
1088: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1089: FND_MSG_PUB.initialize ;
1090: END IF;
1091: --
1092: p_return_status := FND_API.G_RET_STS_SUCCESS ;
1093: --
1094:
1095: --
1096: -- Validating p_budget_group_id.
1110: --
1111: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_WORKSHEET_ID') ;
1112: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
1113: FND_MSG_PUB.Add;
1114: RAISE FND_API.G_EXC_ERROR ;
1115: END IF ;
1116:
1117: -- l_budget_by_position defines whether worksheet contains positions or not.
1118: l_budget_by_position := NVL(l_ws_row_type.budget_by_position, 'N') ;
1150: --
1151: PSB_Worksheet_Pvt.Create_Worksheet
1152: (
1153: p_api_version => 1.0 ,
1154: p_init_msg_list => FND_API.G_FALSE,
1155: p_commit => FND_API.G_FALSE,
1156: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1157: p_return_status => l_return_status,
1158: p_msg_count => l_msg_count,
1151: PSB_Worksheet_Pvt.Create_Worksheet
1152: (
1153: p_api_version => 1.0 ,
1154: p_init_msg_list => FND_API.G_FALSE,
1155: p_commit => FND_API.G_FALSE,
1156: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1157: p_return_status => l_return_status,
1158: p_msg_count => l_msg_count,
1159: p_msg_data => l_msg_data ,
1152: (
1153: p_api_version => 1.0 ,
1154: p_init_msg_list => FND_API.G_FALSE,
1155: p_commit => FND_API.G_FALSE,
1156: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1157: p_return_status => l_return_status,
1158: p_msg_count => l_msg_count,
1159: p_msg_data => l_msg_data ,
1160: --
1202: );
1203: --
1204: CLOSE l_worksheets_csr ;
1205: --
1206: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1207: RAISE FND_API.G_EXC_ERROR ;
1208: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1209: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1210: END IF;
1203: --
1204: CLOSE l_worksheets_csr ;
1205: --
1206: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1207: RAISE FND_API.G_EXC_ERROR ;
1208: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1209: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1210: END IF;
1211: --
1204: CLOSE l_worksheets_csr ;
1205: --
1206: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1207: RAISE FND_API.G_EXC_ERROR ;
1208: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1209: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1210: END IF;
1211: --
1212:
1205: --
1206: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1207: RAISE FND_API.G_EXC_ERROR ;
1208: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1209: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1210: END IF;
1211: --
1212:
1213: --
1222: p_return_status => l_return_status ,
1223: p_budget_calendar_id => l_main_budget_calendar_id
1224: );
1225: --
1226: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1227: RAISE FND_API.G_EXC_ERROR ;
1228: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1230: END IF;
1223: p_budget_calendar_id => l_main_budget_calendar_id
1224: );
1225: --
1226: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1227: RAISE FND_API.G_EXC_ERROR ;
1228: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1230: END IF;
1231: --
1224: );
1225: --
1226: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1227: RAISE FND_API.G_EXC_ERROR ;
1228: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1230: END IF;
1231: --
1232: END IF ;
1225: --
1226: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1227: RAISE FND_API.G_EXC_ERROR ;
1228: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1229: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1230: END IF;
1231: --
1232: END IF ;
1233:
1288: p_creation_date => g_current_date,
1289: p_return_status => l_return_status
1290: ) ;
1291: --
1292: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1293: RAISE FND_API.G_EXC_ERROR ;
1294: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1295: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1296: END IF;
1289: p_return_status => l_return_status
1290: ) ;
1291: --
1292: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1293: RAISE FND_API.G_EXC_ERROR ;
1294: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1295: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1296: END IF;
1297: --
1290: ) ;
1291: --
1292: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1293: RAISE FND_API.G_EXC_ERROR ;
1294: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1295: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1296: END IF;
1297: --
1298: END LOOP;
1291: --
1292: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1293: RAISE FND_API.G_EXC_ERROR ;
1294: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1295: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1296: END IF;
1297: --
1298: END LOOP;
1299: --
1367: --
1368: PSB_WS_Pos_Pvt.Create_Position_Matrix
1369: (
1370: p_api_version => 1.0 ,
1371: p_init_msg_list => FND_API.G_FALSE ,
1372: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
1373: p_return_status => l_return_status ,
1374: p_msg_count => l_msg_count ,
1375: p_msg_data => l_msg_data ,
1368: PSB_WS_Pos_Pvt.Create_Position_Matrix
1369: (
1370: p_api_version => 1.0 ,
1371: p_init_msg_list => FND_API.G_FALSE ,
1372: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
1373: p_return_status => l_return_status ,
1374: p_msg_count => l_msg_count ,
1375: p_msg_data => l_msg_data ,
1376: --
1379: p_freeze_flag => l_lines_rec.freeze_flag ,
1380: p_view_line_flag => l_lines_rec.view_line_flag
1381: ) ;
1382: --
1383: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1384: RAISE FND_API.G_EXC_ERROR ;
1385: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1387: END IF;
1380: p_view_line_flag => l_lines_rec.view_line_flag
1381: ) ;
1382: --
1383: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1384: RAISE FND_API.G_EXC_ERROR ;
1385: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1387: END IF;
1388: --
1381: ) ;
1382: --
1383: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1384: RAISE FND_API.G_EXC_ERROR ;
1385: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1387: END IF;
1388: --
1389: END LOOP;
1382: --
1383: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1384: RAISE FND_API.G_EXC_ERROR ;
1385: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1386: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1387: END IF;
1388: --
1389: END LOOP;
1390:
1392:
1393: p_worksheet_id_OUT := l_new_worksheet_id;
1394:
1395: --
1396: IF FND_API.To_Boolean ( p_commit ) THEN
1397: COMMIT WORK;
1398: END IF;
1399: --
1400: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1401: p_data => p_msg_data );
1402: --
1403: EXCEPTION
1404: --
1405: WHEN FND_API.G_EXC_ERROR THEN
1406: --
1407: ROLLBACK TO Create_Worksheet_Pvt ;
1408: p_return_status := FND_API.G_RET_STS_ERROR;
1409: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1404: --
1405: WHEN FND_API.G_EXC_ERROR THEN
1406: --
1407: ROLLBACK TO Create_Worksheet_Pvt ;
1408: p_return_status := FND_API.G_RET_STS_ERROR;
1409: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1410: p_data => p_msg_data );
1411: --
1412: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1408: p_return_status := FND_API.G_RET_STS_ERROR;
1409: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1410: p_data => p_msg_data );
1411: --
1412: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1413: --
1414: ROLLBACK TO Create_Worksheet_Pvt ;
1415: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1416: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1411: --
1412: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1413: --
1414: ROLLBACK TO Create_Worksheet_Pvt ;
1415: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1416: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1417: p_data => p_msg_data );
1418: --
1419: WHEN OTHERS THEN
1422: CLOSE l_worksheets_csr ;
1423: END IF ;
1424: --
1425: ROLLBACK TO Create_Worksheet_Pvt ;
1426: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1427: --
1428: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1429: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
1430: l_api_name);
1446: --
1447: PROCEDURE Copy_Worksheet
1448: (
1449: p_api_version IN NUMBER ,
1450: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1451: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1452: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1453: p_return_status OUT NOCOPY VARCHAR2 ,
1454: p_msg_count OUT NOCOPY NUMBER ,
1447: PROCEDURE Copy_Worksheet
1448: (
1449: p_api_version IN NUMBER ,
1450: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1451: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1452: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1453: p_return_status OUT NOCOPY VARCHAR2 ,
1454: p_msg_count OUT NOCOPY NUMBER ,
1455: p_msg_data OUT NOCOPY VARCHAR2 ,
1448: (
1449: p_api_version IN NUMBER ,
1450: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
1451: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
1452: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
1453: p_return_status OUT NOCOPY VARCHAR2 ,
1454: p_msg_count OUT NOCOPY NUMBER ,
1455: p_msg_data OUT NOCOPY VARCHAR2 ,
1456: --
1494: BEGIN
1495: --
1496: SAVEPOINT Copy_Worksheet_Pvt ;
1497: --
1498: IF NOT FND_API.Compatible_API_Call ( l_api_version,
1499: p_api_version,
1500: l_api_name,
1501: G_PKG_NAME )
1502: THEN
1499: p_api_version,
1500: l_api_name,
1501: G_PKG_NAME )
1502: THEN
1503: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1504: END IF;
1505: --
1506:
1507: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1503: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1504: END IF;
1505: --
1506:
1507: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1508: FND_MSG_PUB.initialize ;
1509: END IF;
1510: --
1511: p_return_status := FND_API.G_RET_STS_SUCCESS ;
1507: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
1508: FND_MSG_PUB.initialize ;
1509: END IF;
1510: --
1511: p_return_status := FND_API.G_RET_STS_SUCCESS ;
1512: --
1513:
1514: --
1515: -- Finding the worksheet information.
1522: --
1523: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_WORKSHEET_ID') ;
1524: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
1525: FND_MSG_PUB.Add;
1526: RAISE FND_API.G_EXC_ERROR ;
1527: END IF ;
1528:
1529: -- l_budget_by_position defines whether worksheet contains positions or not.
1530: l_budget_by_position := NVL(l_ws_row_type.budget_by_position, 'N') ;
1534: --
1535: IF l_ws_row_type.worksheet_type <> 'O' THEN
1536: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_WORKSHEET_FOR_COPY') ;
1537: FND_MSG_PUB.Add;
1538: RAISE FND_API.G_EXC_ERROR ;
1539: END IF ;
1540:
1541: --
1542: -- Finding the main budget group name.
1558: --
1559: PSB_Worksheet_Pvt.Create_Worksheet
1560: (
1561: p_api_version => 1.0 ,
1562: p_init_msg_list => FND_API.G_FALSE,
1563: p_commit => FND_API.G_FALSE,
1564: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1565: p_return_status => l_return_status,
1566: p_msg_count => l_msg_count,
1559: PSB_Worksheet_Pvt.Create_Worksheet
1560: (
1561: p_api_version => 1.0 ,
1562: p_init_msg_list => FND_API.G_FALSE,
1563: p_commit => FND_API.G_FALSE,
1564: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1565: p_return_status => l_return_status,
1566: p_msg_count => l_msg_count,
1567: p_msg_data => l_msg_data ,
1560: (
1561: p_api_version => 1.0 ,
1562: p_init_msg_list => FND_API.G_FALSE,
1563: p_commit => FND_API.G_FALSE,
1564: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
1565: p_return_status => l_return_status,
1566: p_msg_count => l_msg_count,
1567: p_msg_data => l_msg_data ,
1568: --
1611: p_context => l_ws_row_type.context,
1612: p_worksheet_id => l_new_worksheet_id
1613: );
1614: --
1615: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1616: CLOSE l_worksheets_csr ;
1617: RAISE FND_API.G_EXC_ERROR ;
1618: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1619: CLOSE l_worksheets_csr ;
1613: );
1614: --
1615: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1616: CLOSE l_worksheets_csr ;
1617: RAISE FND_API.G_EXC_ERROR ;
1618: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1619: CLOSE l_worksheets_csr ;
1620: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1621: END IF;
1614: --
1615: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1616: CLOSE l_worksheets_csr ;
1617: RAISE FND_API.G_EXC_ERROR ;
1618: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1619: CLOSE l_worksheets_csr ;
1620: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1621: END IF;
1622:
1616: CLOSE l_worksheets_csr ;
1617: RAISE FND_API.G_EXC_ERROR ;
1618: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1619: CLOSE l_worksheets_csr ;
1620: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1621: END IF;
1622:
1623: --
1624: -- Get account_line related info for the current worksheet to be copied in
1647: /*For Bug No : 2440100 Start*/
1648: p_return_status => l_return_status
1649: ) ;
1650: --
1651: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1652: RAISE FND_API.G_EXC_ERROR ;
1653: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1655: END IF;
1648: p_return_status => l_return_status
1649: ) ;
1650: --
1651: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1652: RAISE FND_API.G_EXC_ERROR ;
1653: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1655: END IF;
1656: --
1649: ) ;
1650: --
1651: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1652: RAISE FND_API.G_EXC_ERROR ;
1653: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1655: END IF;
1656: --
1657: END LOOP;
1650: --
1651: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1652: RAISE FND_API.G_EXC_ERROR ;
1653: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1654: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1655: END IF;
1656: --
1657: END LOOP;
1658:
1685: --
1686: PSB_WS_Pos_Pvt.Create_Position_Lines
1687: (
1688: p_api_version => 1.0 ,
1689: p_init_msg_list => FND_API.G_FALSE ,
1690: p_commit => FND_API.G_FALSE ,
1691: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1692: p_return_status => l_return_status ,
1693: p_msg_count => l_msg_count ,
1686: PSB_WS_Pos_Pvt.Create_Position_Lines
1687: (
1688: p_api_version => 1.0 ,
1689: p_init_msg_list => FND_API.G_FALSE ,
1690: p_commit => FND_API.G_FALSE ,
1691: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1692: p_return_status => l_return_status ,
1693: p_msg_count => l_msg_count ,
1694: p_msg_data => l_msg_data ,
1687: (
1688: p_api_version => 1.0 ,
1689: p_init_msg_list => FND_API.G_FALSE ,
1690: p_commit => FND_API.G_FALSE ,
1691: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1692: p_return_status => l_return_status ,
1693: p_msg_count => l_msg_count ,
1694: p_msg_data => l_msg_data ,
1695: --
1699: p_budget_group_id => l_lines_pos_rec.budget_group_id ,
1700: p_copy_of_position_line_id => l_lines_pos_rec.position_line_id
1701: );
1702: --
1703: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1704: RAISE FND_API.G_EXC_ERROR ;
1705: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1707: END IF;
1700: p_copy_of_position_line_id => l_lines_pos_rec.position_line_id
1701: );
1702: --
1703: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1704: RAISE FND_API.G_EXC_ERROR ;
1705: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1707: END IF;
1708: --
1701: );
1702: --
1703: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1704: RAISE FND_API.G_EXC_ERROR ;
1705: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1707: END IF;
1708: --
1709:
1702: --
1703: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1704: RAISE FND_API.G_EXC_ERROR ;
1705: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1706: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1707: END IF;
1708: --
1709:
1710: --
1728: p_return_status => l_return_status
1729: ) ;
1730:
1731: --
1732: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1733: RAISE FND_API.G_EXC_ERROR ;
1734: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1735: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1736: END IF;
1729: ) ;
1730:
1731: --
1732: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1733: RAISE FND_API.G_EXC_ERROR ;
1734: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1735: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1736: END IF;
1737: --
1730:
1731: --
1732: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1733: RAISE FND_API.G_EXC_ERROR ;
1734: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1735: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1736: END IF;
1737: --
1738: END LOOP;
1731: --
1732: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1733: RAISE FND_API.G_EXC_ERROR ;
1734: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1735: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1736: END IF;
1737: --
1738: END LOOP;
1739:
1833: -- API to create new fte lines in psb_ws_fte_lines.
1834: PSB_WS_Pos_Pvt.Create_FTE_Lines
1835: (
1836: p_api_version => 1.0 ,
1837: p_init_msg_list => FND_API.G_FALSE ,
1838: p_commit => FND_API.G_FALSE ,
1839: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1840: p_return_status => l_return_status ,
1841: p_msg_count => l_msg_count ,
1834: PSB_WS_Pos_Pvt.Create_FTE_Lines
1835: (
1836: p_api_version => 1.0 ,
1837: p_init_msg_list => FND_API.G_FALSE ,
1838: p_commit => FND_API.G_FALSE ,
1839: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1840: p_return_status => l_return_status ,
1841: p_msg_count => l_msg_count ,
1842: p_msg_data => l_msg_data ,
1835: (
1836: p_api_version => 1.0 ,
1837: p_init_msg_list => FND_API.G_FALSE ,
1838: p_commit => FND_API.G_FALSE ,
1839: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1840: p_return_status => l_return_status ,
1841: p_msg_count => l_msg_count ,
1842: p_msg_data => l_msg_data ,
1843: --
1841: p_msg_count => l_msg_count ,
1842: p_msg_data => l_msg_data ,
1843: --
1844: p_fte_line_id => l_new_fte_line_id ,
1845: p_check_spfl_exists => FND_API.G_FALSE,
1846: p_worksheet_id => l_new_worksheet_id ,
1847: p_position_line_id => l_new_position_line_id ,
1848: p_budget_year_id => l_fte_rec.budget_year_id ,
1849: p_annual_fte => l_fte_rec.annual_fte ,
1850: p_service_package_id => l_fte_rec.service_package_id ,
1851: p_stage_set_id => l_fte_rec.stage_set_id ,
1852: p_start_stage_seq => l_fte_rec.start_stage_seq ,
1853: p_current_stage_seq => l_fte_rec.current_stage_seq ,
1854: p_end_stage_seq => nvl(l_fte_rec.end_stage_seq, FND_API.G_MISS_NUM),
1855: p_period_fte => l_period_fte_tbl
1856: );
1857: --
1858: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1854: p_end_stage_seq => nvl(l_fte_rec.end_stage_seq, FND_API.G_MISS_NUM),
1855: p_period_fte => l_period_fte_tbl
1856: );
1857: --
1858: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1859: RAISE FND_API.G_EXC_ERROR ;
1860: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1861: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1862: END IF;
1855: p_period_fte => l_period_fte_tbl
1856: );
1857: --
1858: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1859: RAISE FND_API.G_EXC_ERROR ;
1860: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1861: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1862: END IF;
1863: --
1856: );
1857: --
1858: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1859: RAISE FND_API.G_EXC_ERROR ;
1860: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1861: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1862: END IF;
1863: --
1864: END LOOP; -- To process fte_lines in psb_ws_element_lines.
1857: --
1858: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1859: RAISE FND_API.G_EXC_ERROR ;
1860: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1861: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1862: END IF;
1863: --
1864: END LOOP; -- To process fte_lines in psb_ws_element_lines.
1865:
1879: -- API to create new element lines in psb_ws_element_lines.
1880: PSB_WS_Pos_Pvt.Create_Element_Lines
1881: (
1882: p_api_version => 1.0 ,
1883: p_init_msg_list => FND_API.G_FALSE ,
1884: p_commit => FND_API.G_FALSE ,
1885: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1886: p_return_status => l_return_status ,
1887: p_msg_count => l_msg_count ,
1880: PSB_WS_Pos_Pvt.Create_Element_Lines
1881: (
1882: p_api_version => 1.0 ,
1883: p_init_msg_list => FND_API.G_FALSE ,
1884: p_commit => FND_API.G_FALSE ,
1885: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1886: p_return_status => l_return_status ,
1887: p_msg_count => l_msg_count ,
1888: p_msg_data => l_msg_data ,
1881: (
1882: p_api_version => 1.0 ,
1883: p_init_msg_list => FND_API.G_FALSE ,
1884: p_commit => FND_API.G_FALSE ,
1885: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
1886: p_return_status => l_return_status ,
1887: p_msg_count => l_msg_count ,
1888: p_msg_data => l_msg_data ,
1889: --
1897: p_service_package_id => l_element_rec.service_package_id ,
1898: p_stage_set_id => l_element_rec.stage_set_id ,
1899: p_start_stage_seq => l_element_rec.start_stage_seq ,
1900: p_current_stage_seq => l_element_rec.current_stage_seq,
1901: p_end_stage_seq => nvl(l_element_rec.end_stage_seq, FND_API.G_MISS_NUM)
1902: );
1903: --
1904: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1905: RAISE FND_API.G_EXC_ERROR ;
1900: p_current_stage_seq => l_element_rec.current_stage_seq,
1901: p_end_stage_seq => nvl(l_element_rec.end_stage_seq, FND_API.G_MISS_NUM)
1902: );
1903: --
1904: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1905: RAISE FND_API.G_EXC_ERROR ;
1906: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1907: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1908: END IF;
1901: p_end_stage_seq => nvl(l_element_rec.end_stage_seq, FND_API.G_MISS_NUM)
1902: );
1903: --
1904: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1905: RAISE FND_API.G_EXC_ERROR ;
1906: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1907: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1908: END IF;
1909: --
1902: );
1903: --
1904: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1905: RAISE FND_API.G_EXC_ERROR ;
1906: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1907: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1908: END IF;
1909: --
1910: END LOOP; -- To process element_lines in psb_ws_element_lines.
1903: --
1904: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1905: RAISE FND_API.G_EXC_ERROR ;
1906: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1907: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1908: END IF;
1909: --
1910: END LOOP; -- To process element_lines in psb_ws_element_lines.
1911:
1930: --
1931: PSB_Positions_Pvt.Modify_Assignment
1932: (
1933: p_api_version => 1.0 ,
1934: p_init_msg_list => FND_API.G_FALSE ,
1935: p_commit => FND_API.G_FALSE ,
1936: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
1937: p_return_status => l_return_status ,
1938: p_msg_count => l_msg_count ,
1931: PSB_Positions_Pvt.Modify_Assignment
1932: (
1933: p_api_version => 1.0 ,
1934: p_init_msg_list => FND_API.G_FALSE ,
1935: p_commit => FND_API.G_FALSE ,
1936: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
1937: p_return_status => l_return_status ,
1938: p_msg_count => l_msg_count ,
1939: p_msg_data => l_msg_data ,
1932: (
1933: p_api_version => 1.0 ,
1934: p_init_msg_list => FND_API.G_FALSE ,
1935: p_commit => FND_API.G_FALSE ,
1936: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
1937: p_return_status => l_return_status ,
1938: p_msg_count => l_msg_count ,
1939: p_msg_data => l_msg_data ,
1940: --
1963: p_primary_employee_flag => l_asgn_rec.primary_employee_flag ,
1964: p_mode => 'R'
1965: ) ;
1966: --
1967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1968: RAISE FND_API.G_EXC_ERROR ;
1969: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1970: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1971: END IF;
1964: p_mode => 'R'
1965: ) ;
1966: --
1967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1968: RAISE FND_API.G_EXC_ERROR ;
1969: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1970: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1971: END IF;
1972: --
1965: ) ;
1966: --
1967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1968: RAISE FND_API.G_EXC_ERROR ;
1969: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1970: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1971: END IF;
1972: --
1973: END LOOP; -- To process assignments in psb_position_assignments for
1966: --
1967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1968: RAISE FND_API.G_EXC_ERROR ;
1969: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1970: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
1971: END IF;
1972: --
1973: END LOOP; -- To process assignments in psb_position_assignments for
1974: -- current position line l_lines_pos_rec.position_line_id.
1981: CLOSE l_worksheets_csr ;
1982: --
1983: p_worksheet_id_OUT := l_new_worksheet_id;
1984: --
1985: IF FND_API.To_Boolean ( p_commit ) THEN
1986: COMMIT WORK;
1987: END IF;
1988: --
1989: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1990: p_data => p_msg_data );
1991: --
1992: EXCEPTION
1993: --
1994: WHEN FND_API.G_EXC_ERROR THEN
1995: --
1996: ROLLBACK TO Copy_Worksheet_Pvt ;
1997: p_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1993: --
1994: WHEN FND_API.G_EXC_ERROR THEN
1995: --
1996: ROLLBACK TO Copy_Worksheet_Pvt ;
1997: p_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1999: p_data => p_msg_data );
2000: --
2001: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1997: p_return_status := FND_API.G_RET_STS_ERROR;
1998: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
1999: p_data => p_msg_data );
2000: --
2001: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2002: --
2003: ROLLBACK TO Copy_Worksheet_Pvt ;
2004: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2005: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
2000: --
2001: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2002: --
2003: ROLLBACK TO Copy_Worksheet_Pvt ;
2004: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2005: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
2006: p_data => p_msg_data );
2007: --
2008: WHEN OTHERS THEN
2011: CLOSE l_worksheets_csr ;
2012: END IF ;
2013: --
2014: ROLLBACK TO Copy_Worksheet_Pvt ;
2015: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2016: --
2017: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2018: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
2019: l_api_name);
2035: --
2036: PROCEDURE Merge_Worksheets
2037: (
2038: p_api_version IN NUMBER ,
2039: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
2040: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2041: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
2042: p_return_status OUT NOCOPY VARCHAR2 ,
2043: p_msg_count OUT NOCOPY NUMBER ,
2036: PROCEDURE Merge_Worksheets
2037: (
2038: p_api_version IN NUMBER ,
2039: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
2040: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2041: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
2042: p_return_status OUT NOCOPY VARCHAR2 ,
2043: p_msg_count OUT NOCOPY NUMBER ,
2044: p_msg_data OUT NOCOPY VARCHAR2 ,
2037: (
2038: p_api_version IN NUMBER ,
2039: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
2040: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
2041: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
2042: p_return_status OUT NOCOPY VARCHAR2 ,
2043: p_msg_count OUT NOCOPY NUMBER ,
2044: p_msg_data OUT NOCOPY VARCHAR2 ,
2045: --
2110: BEGIN
2111: --
2112: SAVEPOINT Merge_Worksheets_Pvt ;
2113: --
2114: IF NOT FND_API.Compatible_API_Call ( l_api_version,
2115: p_api_version,
2116: l_api_name,
2117: G_PKG_NAME )
2118: THEN
2115: p_api_version,
2116: l_api_name,
2117: G_PKG_NAME )
2118: THEN
2119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2120: END IF;
2121: --
2122:
2123: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
2119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2120: END IF;
2121: --
2122:
2123: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
2124: FND_MSG_PUB.initialize ;
2125: END IF;
2126: --
2127: p_return_status := FND_API.G_RET_STS_SUCCESS ;
2123: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
2124: FND_MSG_PUB.initialize ;
2125: END IF;
2126: --
2127: p_return_status := FND_API.G_RET_STS_SUCCESS ;
2128: --
2129:
2130: --
2131: -- Find information about worksheets.
2173: --
2174: IF l_target_freeze_flag = 'Y' THEN
2175: Fnd_Message.Set_Name('PSB', 'PSB_TARGET_WORKSHEET_IS_FROZEN') ;
2176: FND_MSG_PUB.Add;
2177: RAISE FND_API.G_EXC_ERROR ;
2178: END IF ;
2179:
2180: --
2181: -- Validating that p_source_worksheet_id is a copy of p_target_worksheet_id
2189: )
2190: THEN
2191: Fnd_Message.Set_Name ('PSB', 'PSB_INCOMPATIBLE_WORKSHEETS') ;
2192: FND_MSG_PUB.Add;
2193: RAISE FND_API.G_EXC_ERROR ;
2194: END IF ;
2195:
2196: --
2197: -- Merging those account lines which are not related to positions.
2291: --
2292: PSB_WS_Acct_Pvt.Create_Account_Dist
2293: (
2294: p_api_version => 1.0 ,
2295: p_init_msg_list => FND_API.G_FALSE,
2296: p_commit => FND_API.G_FALSE,
2297: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2298: p_return_status => l_return_status,
2299: p_account_line_id => l_new_account_line_id,
2292: PSB_WS_Acct_Pvt.Create_Account_Dist
2293: (
2294: p_api_version => 1.0 ,
2295: p_init_msg_list => FND_API.G_FALSE,
2296: p_commit => FND_API.G_FALSE,
2297: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2298: p_return_status => l_return_status,
2299: p_account_line_id => l_new_account_line_id,
2300: p_check_spal_exists => FND_API.G_FALSE,
2293: (
2294: p_api_version => 1.0 ,
2295: p_init_msg_list => FND_API.G_FALSE,
2296: p_commit => FND_API.G_FALSE,
2297: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2298: p_return_status => l_return_status,
2299: p_account_line_id => l_new_account_line_id,
2300: p_check_spal_exists => FND_API.G_FALSE,
2301: p_msg_count => l_msg_count,
2296: p_commit => FND_API.G_FALSE,
2297: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2298: p_return_status => l_return_status,
2299: p_account_line_id => l_new_account_line_id,
2300: p_check_spal_exists => FND_API.G_FALSE,
2301: p_msg_count => l_msg_count,
2302: p_msg_data => l_msg_data,
2303: --
2304: p_worksheet_id => p_target_worksheet_id,
2305: p_budget_year_id => l_lines_accts_rec.budget_year_id,
2306: p_budget_group_id => l_lines_accts_rec.budget_group_id,
2307: p_ccid => l_lines_accts_rec.code_combination_id,
2308: p_template_id => NVL(l_lines_accts_rec.template_id ,
2309: FND_API.G_MISS_NUM ) ,
2310: p_currency_code => l_lines_accts_rec.currency_code ,
2311: p_balance_type => l_lines_accts_rec.balance_type ,
2312: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2313: p_distribute_flag => FND_API.G_FALSE ,
2309: FND_API.G_MISS_NUM ) ,
2310: p_currency_code => l_lines_accts_rec.currency_code ,
2311: p_balance_type => l_lines_accts_rec.balance_type ,
2312: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2313: p_distribute_flag => FND_API.G_FALSE ,
2314: p_annual_fte => NVL ( l_lines_accts_rec.annual_fte,
2315: FND_API.G_MISS_NUM ) ,
2316: p_period_amount => l_period_amount_tbl ,
2317: p_position_line_id => NVL( l_lines_accts_rec.position_line_id,
2311: p_balance_type => l_lines_accts_rec.balance_type ,
2312: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2313: p_distribute_flag => FND_API.G_FALSE ,
2314: p_annual_fte => NVL ( l_lines_accts_rec.annual_fte,
2315: FND_API.G_MISS_NUM ) ,
2316: p_period_amount => l_period_amount_tbl ,
2317: p_position_line_id => NVL( l_lines_accts_rec.position_line_id,
2318: FND_API.G_MISS_NUM ) ,
2319: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2314: p_annual_fte => NVL ( l_lines_accts_rec.annual_fte,
2315: FND_API.G_MISS_NUM ) ,
2316: p_period_amount => l_period_amount_tbl ,
2317: p_position_line_id => NVL( l_lines_accts_rec.position_line_id,
2318: FND_API.G_MISS_NUM ) ,
2319: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2320: FND_API.G_MISS_NUM ) ,
2321: p_salary_account_line => NVL(l_lines_accts_rec.salary_account_line,
2322: FND_API.G_FALSE ) ,
2316: p_period_amount => l_period_amount_tbl ,
2317: p_position_line_id => NVL( l_lines_accts_rec.position_line_id,
2318: FND_API.G_MISS_NUM ) ,
2319: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2320: FND_API.G_MISS_NUM ) ,
2321: p_salary_account_line => NVL(l_lines_accts_rec.salary_account_line,
2322: FND_API.G_FALSE ) ,
2323: p_service_package_id => l_lines_accts_rec.service_package_id ,
2324: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2318: FND_API.G_MISS_NUM ) ,
2319: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2320: FND_API.G_MISS_NUM ) ,
2321: p_salary_account_line => NVL(l_lines_accts_rec.salary_account_line,
2322: FND_API.G_FALSE ) ,
2323: p_service_package_id => l_lines_accts_rec.service_package_id ,
2324: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2325: p_current_stage_seq => l_lines_accts_rec.current_stage_seq ,
2326: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2323: p_service_package_id => l_lines_accts_rec.service_package_id ,
2324: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2325: p_current_stage_seq => l_lines_accts_rec.current_stage_seq ,
2326: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2327: FND_API.G_MISS_NUM )
2328: );
2329: --
2330: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2331: RAISE FND_API.G_EXC_ERROR ;
2326: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2327: FND_API.G_MISS_NUM )
2328: );
2329: --
2330: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2331: RAISE FND_API.G_EXC_ERROR ;
2332: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2334: END IF;
2327: FND_API.G_MISS_NUM )
2328: );
2329: --
2330: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2331: RAISE FND_API.G_EXC_ERROR ;
2332: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2334: END IF;
2335:
2328: );
2329: --
2330: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2331: RAISE FND_API.G_EXC_ERROR ;
2332: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2334: END IF;
2335:
2336: --
2329: --
2330: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2331: RAISE FND_API.G_EXC_ERROR ;
2332: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2333: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2334: END IF;
2335:
2336: --
2337: -- The new_account_line_id will be null if the desired account lines are
2346: --
2347: PSB_WS_Ops_Pvt.Add_Worksheet_Line
2348: (
2349: p_api_version => 1.0 ,
2350: p_init_msg_list => FND_API.G_FALSE,
2351: p_commit => FND_API.G_FALSE,
2352: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2353: p_return_status => l_return_status,
2354: p_msg_count => l_msg_count,
2347: PSB_WS_Ops_Pvt.Add_Worksheet_Line
2348: (
2349: p_api_version => 1.0 ,
2350: p_init_msg_list => FND_API.G_FALSE,
2351: p_commit => FND_API.G_FALSE,
2352: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2353: p_return_status => l_return_status,
2354: p_msg_count => l_msg_count,
2355: p_msg_data => l_msg_data ,
2348: (
2349: p_api_version => 1.0 ,
2350: p_init_msg_list => FND_API.G_FALSE,
2351: p_commit => FND_API.G_FALSE,
2352: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2353: p_return_status => l_return_status,
2354: p_msg_count => l_msg_count,
2355: p_msg_data => l_msg_data ,
2356: --
2355: p_msg_data => l_msg_data ,
2356: --
2357: p_worksheet_id => p_target_worksheet_id ,
2358: p_account_line_id => l_new_account_line_id ,
2359: p_add_in_current_worksheet => FND_API.G_FALSE
2360: ) ;
2361: --
2362: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2363: RAISE FND_API.G_EXC_ERROR ;
2358: p_account_line_id => l_new_account_line_id ,
2359: p_add_in_current_worksheet => FND_API.G_FALSE
2360: ) ;
2361: --
2362: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2363: RAISE FND_API.G_EXC_ERROR ;
2364: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2365: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2366: END IF;
2359: p_add_in_current_worksheet => FND_API.G_FALSE
2360: ) ;
2361: --
2362: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2363: RAISE FND_API.G_EXC_ERROR ;
2364: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2365: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2366: END IF;
2367: --
2360: ) ;
2361: --
2362: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2363: RAISE FND_API.G_EXC_ERROR ;
2364: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2365: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2366: END IF;
2367: --
2368: END IF;
2361: --
2362: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2363: RAISE FND_API.G_EXC_ERROR ;
2364: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2365: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2366: END IF;
2367: --
2368: END IF;
2369: --
2379:
2380: PSB_WS_Acct_Pvt.Create_Account_Dist
2381: (
2382: p_api_version => 1.0 ,
2383: p_init_msg_list => FND_API.G_FALSE,
2384: p_commit => FND_API.G_FALSE,
2385: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2386: p_return_status => l_return_status,
2387: p_msg_count => l_msg_count,
2380: PSB_WS_Acct_Pvt.Create_Account_Dist
2381: (
2382: p_api_version => 1.0 ,
2383: p_init_msg_list => FND_API.G_FALSE,
2384: p_commit => FND_API.G_FALSE,
2385: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2386: p_return_status => l_return_status,
2387: p_msg_count => l_msg_count,
2388: p_msg_data => l_msg_data,
2381: (
2382: p_api_version => 1.0 ,
2383: p_init_msg_list => FND_API.G_FALSE,
2384: p_commit => FND_API.G_FALSE,
2385: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2386: p_return_status => l_return_status,
2387: p_msg_count => l_msg_count,
2388: p_msg_data => l_msg_data,
2389: -- comment out the following line for bug 3419241
2386: p_return_status => l_return_status,
2387: p_msg_count => l_msg_count,
2388: p_msg_data => l_msg_data,
2389: -- comment out the following line for bug 3419241
2390: -- p_check_stages must be set to FND_API.G_TRUE to automatically
2391: -- create new Stage for the Account Line. p_check_stages is
2392: -- FND_API.G_TRUE by default.
2393: --p_check_stages => FND_API.G_FALSE,
2394: p_worksheet_id => p_target_worksheet_id,
2388: p_msg_data => l_msg_data,
2389: -- comment out the following line for bug 3419241
2390: -- p_check_stages must be set to FND_API.G_TRUE to automatically
2391: -- create new Stage for the Account Line. p_check_stages is
2392: -- FND_API.G_TRUE by default.
2393: --p_check_stages => FND_API.G_FALSE,
2394: p_worksheet_id => p_target_worksheet_id,
2395: p_account_line_id => l_target_account_line_id,
2396: p_ytd_amount => l_lines_accts_rec.ytd_amount,
2389: -- comment out the following line for bug 3419241
2390: -- p_check_stages must be set to FND_API.G_TRUE to automatically
2391: -- create new Stage for the Account Line. p_check_stages is
2392: -- FND_API.G_TRUE by default.
2393: --p_check_stages => FND_API.G_FALSE,
2394: p_worksheet_id => p_target_worksheet_id,
2395: p_account_line_id => l_target_account_line_id,
2396: p_ytd_amount => l_lines_accts_rec.ytd_amount,
2397: p_period_amount => l_period_amount_tbl,
2399: p_current_stage_seq => l_lines_accts_rec.current_stage_seq,
2400: p_annual_fte => l_lines_accts_rec.annual_fte
2401: ) ;
2402: --
2403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2404: RAISE FND_API.G_EXC_ERROR ;
2405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2407: END IF;
2400: p_annual_fte => l_lines_accts_rec.annual_fte
2401: ) ;
2402: --
2403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2404: RAISE FND_API.G_EXC_ERROR ;
2405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2407: END IF;
2408: --
2401: ) ;
2402: --
2403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2404: RAISE FND_API.G_EXC_ERROR ;
2405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2407: END IF;
2408: --
2409: END IF ; -- For l_ws_account_lines_csr%NOTFOUND.
2402: --
2403: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2404: RAISE FND_API.G_EXC_ERROR ;
2405: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2406: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2407: END IF;
2408: --
2409: END IF ; -- For l_ws_account_lines_csr%NOTFOUND.
2410: --
2445: --
2446: PSB_WS_Pos_Pvt.Create_Position_Lines
2447: (
2448: p_api_version => 1.0 ,
2449: p_init_msg_list => FND_API.G_FALSE ,
2450: p_commit => FND_API.G_FALSE ,
2451: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2452: p_return_status => l_return_status ,
2453: p_msg_count => l_msg_count ,
2446: PSB_WS_Pos_Pvt.Create_Position_Lines
2447: (
2448: p_api_version => 1.0 ,
2449: p_init_msg_list => FND_API.G_FALSE ,
2450: p_commit => FND_API.G_FALSE ,
2451: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2452: p_return_status => l_return_status ,
2453: p_msg_count => l_msg_count ,
2454: p_msg_data => l_msg_data ,
2447: (
2448: p_api_version => 1.0 ,
2449: p_init_msg_list => FND_API.G_FALSE ,
2450: p_commit => FND_API.G_FALSE ,
2451: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2452: p_return_status => l_return_status ,
2453: p_msg_count => l_msg_count ,
2454: p_msg_data => l_msg_data ,
2455: --
2459: p_budget_group_id => l_lines_pos_rec.budget_group_id ,
2460: p_copy_of_position_line_id => NULL
2461: );
2462: --
2463: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2464: RAISE FND_API.G_EXC_ERROR ;
2465: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2466: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2467: END IF;
2460: p_copy_of_position_line_id => NULL
2461: );
2462: --
2463: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2464: RAISE FND_API.G_EXC_ERROR ;
2465: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2466: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2467: END IF;
2468:
2461: );
2462: --
2463: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2464: RAISE FND_API.G_EXC_ERROR ;
2465: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2466: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2467: END IF;
2468:
2469: --
2462: --
2463: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2464: RAISE FND_API.G_EXC_ERROR ;
2465: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2466: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2467: END IF;
2468:
2469: --
2470: -- Create new account distribution for the new position_line_id by
2486: p_new_position_line_id => l_new_position_line_id ,
2487: p_return_status => l_return_status
2488: ) ;
2489: --
2490: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2491: RAISE FND_API.G_EXC_ERROR ;
2492: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2493: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2494: END IF;
2487: p_return_status => l_return_status
2488: ) ;
2489: --
2490: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2491: RAISE FND_API.G_EXC_ERROR ;
2492: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2493: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2494: END IF;
2495: --
2488: ) ;
2489: --
2490: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2491: RAISE FND_API.G_EXC_ERROR ;
2492: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2493: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2494: END IF;
2495: --
2496: END LOOP;
2489: --
2490: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2491: RAISE FND_API.G_EXC_ERROR ;
2492: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2493: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2494: END IF;
2495: --
2496: END LOOP;
2497:
2517: --
2518: PSB_WS_Ops_Pvt.Add_Worksheet_Position_Line
2519: (
2520: p_api_version => 1.0 ,
2521: p_init_msg_list => FND_API.G_FALSE ,
2522: p_commit => FND_API.G_FALSE ,
2523: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2524: p_return_status => l_return_status ,
2525: p_msg_count => l_msg_count ,
2518: PSB_WS_Ops_Pvt.Add_Worksheet_Position_Line
2519: (
2520: p_api_version => 1.0 ,
2521: p_init_msg_list => FND_API.G_FALSE ,
2522: p_commit => FND_API.G_FALSE ,
2523: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2524: p_return_status => l_return_status ,
2525: p_msg_count => l_msg_count ,
2526: p_msg_data => l_msg_data ,
2519: (
2520: p_api_version => 1.0 ,
2521: p_init_msg_list => FND_API.G_FALSE ,
2522: p_commit => FND_API.G_FALSE ,
2523: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2524: p_return_status => l_return_status ,
2525: p_msg_count => l_msg_count ,
2526: p_msg_data => l_msg_data ,
2527: --
2526: p_msg_data => l_msg_data ,
2527: --
2528: p_worksheet_id => p_target_worksheet_id ,
2529: p_position_line_id => l_new_position_line_id ,
2530: p_add_in_current_worksheet => FND_API.G_FALSE
2531: ) ;
2532: --
2533: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2534: RAISE FND_API.G_EXC_ERROR ;
2529: p_position_line_id => l_new_position_line_id ,
2530: p_add_in_current_worksheet => FND_API.G_FALSE
2531: ) ;
2532: --
2533: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2534: RAISE FND_API.G_EXC_ERROR ;
2535: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2536: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2537: END IF;
2530: p_add_in_current_worksheet => FND_API.G_FALSE
2531: ) ;
2532: --
2533: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2534: RAISE FND_API.G_EXC_ERROR ;
2535: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2536: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2537: END IF;
2538:
2531: ) ;
2532: --
2533: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2534: RAISE FND_API.G_EXC_ERROR ;
2535: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2536: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2537: END IF;
2538:
2539:
2532: --
2533: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2534: RAISE FND_API.G_EXC_ERROR ;
2535: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2536: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2537: END IF;
2538:
2539:
2540: --
2617: -- API to create new fte lines in psb_ws_fte_lines.
2618: PSB_WS_Pos_Pvt.Create_FTE_Lines
2619: (
2620: p_api_version => 1.0 ,
2621: p_init_msg_list => FND_API.G_FALSE ,
2622: p_commit => FND_API.G_FALSE ,
2623: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2624: p_return_status => l_return_status ,
2625: p_msg_count => l_msg_count ,
2618: PSB_WS_Pos_Pvt.Create_FTE_Lines
2619: (
2620: p_api_version => 1.0 ,
2621: p_init_msg_list => FND_API.G_FALSE ,
2622: p_commit => FND_API.G_FALSE ,
2623: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2624: p_return_status => l_return_status ,
2625: p_msg_count => l_msg_count ,
2626: p_msg_data => l_msg_data ,
2619: (
2620: p_api_version => 1.0 ,
2621: p_init_msg_list => FND_API.G_FALSE ,
2622: p_commit => FND_API.G_FALSE ,
2623: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2624: p_return_status => l_return_status ,
2625: p_msg_count => l_msg_count ,
2626: p_msg_data => l_msg_data ,
2627: --
2625: p_msg_count => l_msg_count ,
2626: p_msg_data => l_msg_data ,
2627: --
2628: p_fte_line_id => l_new_fte_line_id ,
2629: p_check_spfl_exists => FND_API.G_FALSE,
2630: p_worksheet_id => p_target_worksheet_id ,
2631: p_position_line_id => l_new_position_line_id ,
2632: p_budget_year_id => l_fte_rec.budget_year_id ,
2633: p_annual_fte => l_fte_rec.annual_fte ,
2635: p_stage_set_id => l_fte_rec.stage_set_id ,
2636: p_start_stage_seq => l_fte_rec.start_stage_seq ,
2637: p_current_stage_seq => l_fte_rec.current_stage_seq ,
2638: p_end_stage_seq => NVL( l_fte_rec.end_stage_seq ,
2639: FND_API.G_MISS_NUM),
2640: p_period_fte => l_period_fte_tbl
2641: );
2642: --
2643: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2639: FND_API.G_MISS_NUM),
2640: p_period_fte => l_period_fte_tbl
2641: );
2642: --
2643: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2644: RAISE FND_API.G_EXC_ERROR ;
2645: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2646: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2647: END IF;
2640: p_period_fte => l_period_fte_tbl
2641: );
2642: --
2643: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2644: RAISE FND_API.G_EXC_ERROR ;
2645: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2646: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2647: END IF;
2648: --
2641: );
2642: --
2643: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2644: RAISE FND_API.G_EXC_ERROR ;
2645: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2646: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2647: END IF;
2648: --
2649: END LOOP; -- To process fte_lines in psb_ws_element_lines
2642: --
2643: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2644: RAISE FND_API.G_EXC_ERROR ;
2645: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2646: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2647: END IF;
2648: --
2649: END LOOP; -- To process fte_lines in psb_ws_element_lines
2650:
2665: -- API to create new element lines in psb_ws_element_lines.
2666: PSB_WS_Pos_Pvt.Create_Element_Lines
2667: (
2668: p_api_version => 1.0 ,
2669: p_init_msg_list => FND_API.G_FALSE ,
2670: p_commit => FND_API.G_FALSE ,
2671: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2672: p_return_status => l_return_status ,
2673: p_msg_count => l_msg_count ,
2666: PSB_WS_Pos_Pvt.Create_Element_Lines
2667: (
2668: p_api_version => 1.0 ,
2669: p_init_msg_list => FND_API.G_FALSE ,
2670: p_commit => FND_API.G_FALSE ,
2671: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2672: p_return_status => l_return_status ,
2673: p_msg_count => l_msg_count ,
2674: p_msg_data => l_msg_data ,
2667: (
2668: p_api_version => 1.0 ,
2669: p_init_msg_list => FND_API.G_FALSE ,
2670: p_commit => FND_API.G_FALSE ,
2671: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
2672: p_return_status => l_return_status ,
2673: p_msg_count => l_msg_count ,
2674: p_msg_data => l_msg_data ,
2675: --
2684: p_stage_set_id => l_element_rec.stage_set_id ,
2685: p_start_stage_seq => l_element_rec.start_stage_seq ,
2686: p_current_stage_seq => l_element_rec.current_stage_seq,
2687: p_end_stage_seq => NVL( l_element_rec.end_stage_seq ,
2688: FND_API.G_MISS_NUM )
2689: );
2690:
2691: --
2692: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2688: FND_API.G_MISS_NUM )
2689: );
2690:
2691: --
2692: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2693: RAISE FND_API.G_EXC_ERROR ;
2694: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2696: END IF;
2689: );
2690:
2691: --
2692: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2693: RAISE FND_API.G_EXC_ERROR ;
2694: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2696: END IF;
2697: --
2690:
2691: --
2692: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2693: RAISE FND_API.G_EXC_ERROR ;
2694: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2696: END IF;
2697: --
2698: END LOOP; -- To process element_lines in psb_ws_element_lines.
2691: --
2692: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2693: RAISE FND_API.G_EXC_ERROR ;
2694: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2695: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2696: END IF;
2697: --
2698: END LOOP; -- To process element_lines in psb_ws_element_lines.
2699:
2716: --
2717: PSB_Positions_Pvt.Modify_Assignment
2718: (
2719: p_api_version => 1.0 ,
2720: p_init_msg_list => FND_API.G_FALSE ,
2721: p_commit => FND_API.G_FALSE ,
2722: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2723: p_return_status => l_return_status ,
2724: p_msg_count => l_msg_count ,
2717: PSB_Positions_Pvt.Modify_Assignment
2718: (
2719: p_api_version => 1.0 ,
2720: p_init_msg_list => FND_API.G_FALSE ,
2721: p_commit => FND_API.G_FALSE ,
2722: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2723: p_return_status => l_return_status ,
2724: p_msg_count => l_msg_count ,
2725: p_msg_data => l_msg_data ,
2718: (
2719: p_api_version => 1.0 ,
2720: p_init_msg_list => FND_API.G_FALSE ,
2721: p_commit => FND_API.G_FALSE ,
2722: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
2723: p_return_status => l_return_status ,
2724: p_msg_count => l_msg_count ,
2725: p_msg_data => l_msg_data ,
2726: --
2749: p_primary_employee_flag => l_asgn_rec.primary_employee_flag ,
2750: p_mode => 'R'
2751: ) ;
2752: --
2753: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2754: RAISE FND_API.G_EXC_ERROR ;
2755: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2757: END IF;
2750: p_mode => 'R'
2751: ) ;
2752: --
2753: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2754: RAISE FND_API.G_EXC_ERROR ;
2755: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2757: END IF;
2758: --
2751: ) ;
2752: --
2753: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2754: RAISE FND_API.G_EXC_ERROR ;
2755: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2757: END IF;
2758: --
2759: END LOOP ;
2752: --
2753: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2754: RAISE FND_API.G_EXC_ERROR ;
2755: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2756: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2757: END IF;
2758: --
2759: END LOOP ;
2760:
2877:
2878: PSB_WS_Acct_Pvt.Create_Account_Dist
2879: (
2880: p_api_version => 1.0 ,
2881: p_init_msg_list => FND_API.G_FALSE,
2882: p_commit => FND_API.G_FALSE,
2883: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2884: p_return_status => l_return_status,
2885: p_account_line_id => l_new_account_line_id,
2878: PSB_WS_Acct_Pvt.Create_Account_Dist
2879: (
2880: p_api_version => 1.0 ,
2881: p_init_msg_list => FND_API.G_FALSE,
2882: p_commit => FND_API.G_FALSE,
2883: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2884: p_return_status => l_return_status,
2885: p_account_line_id => l_new_account_line_id,
2886: p_check_spal_exists => FND_API.G_FALSE,
2879: (
2880: p_api_version => 1.0 ,
2881: p_init_msg_list => FND_API.G_FALSE,
2882: p_commit => FND_API.G_FALSE,
2883: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2884: p_return_status => l_return_status,
2885: p_account_line_id => l_new_account_line_id,
2886: p_check_spal_exists => FND_API.G_FALSE,
2887: p_msg_count => l_msg_count,
2882: p_commit => FND_API.G_FALSE,
2883: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2884: p_return_status => l_return_status,
2885: p_account_line_id => l_new_account_line_id,
2886: p_check_spal_exists => FND_API.G_FALSE,
2887: p_msg_count => l_msg_count,
2888: p_msg_data => l_msg_data,
2889: --
2890: p_worksheet_id => p_target_worksheet_id,
2891: p_budget_year_id => l_lines_accts_rec.budget_year_id,
2892: p_budget_group_id => l_lines_accts_rec.budget_group_id,
2893: p_ccid => l_lines_accts_rec.code_combination_id,
2894: p_template_id => NVL(l_lines_accts_rec.template_id ,
2895: FND_API.G_MISS_NUM ) ,
2896: p_currency_code => l_lines_accts_rec.currency_code ,
2897: p_balance_type => l_lines_accts_rec.balance_type ,
2898: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2899: p_distribute_flag => FND_API.G_FALSE ,
2895: FND_API.G_MISS_NUM ) ,
2896: p_currency_code => l_lines_accts_rec.currency_code ,
2897: p_balance_type => l_lines_accts_rec.balance_type ,
2898: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2899: p_distribute_flag => FND_API.G_FALSE ,
2900: p_annual_fte => NVL ( l_lines_accts_rec.annual_fte,
2901: FND_API.G_MISS_NUM ) ,
2902: p_period_amount => l_period_amount_tbl ,
2903: p_position_line_id => l_target_position_line_id,
2897: p_balance_type => l_lines_accts_rec.balance_type ,
2898: p_ytd_amount => l_lines_accts_rec.ytd_amount ,
2899: p_distribute_flag => FND_API.G_FALSE ,
2900: p_annual_fte => NVL ( l_lines_accts_rec.annual_fte,
2901: FND_API.G_MISS_NUM ) ,
2902: p_period_amount => l_period_amount_tbl ,
2903: p_position_line_id => l_target_position_line_id,
2904: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2905: FND_API.G_MISS_NUM ) ,
2901: FND_API.G_MISS_NUM ) ,
2902: p_period_amount => l_period_amount_tbl ,
2903: p_position_line_id => l_target_position_line_id,
2904: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2905: FND_API.G_MISS_NUM ) ,
2906: p_salary_account_line => NVL(l_lines_accts_rec.salary_account_line,
2907: FND_API.G_FALSE ) ,
2908: p_service_package_id => l_lines_accts_rec.service_package_id ,
2909: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2903: p_position_line_id => l_target_position_line_id,
2904: p_element_set_id => NVL( l_lines_accts_rec.element_set_id,
2905: FND_API.G_MISS_NUM ) ,
2906: p_salary_account_line => NVL(l_lines_accts_rec.salary_account_line,
2907: FND_API.G_FALSE ) ,
2908: p_service_package_id => l_lines_accts_rec.service_package_id ,
2909: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2910: p_current_stage_seq => l_lines_accts_rec.current_stage_seq ,
2911: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2908: p_service_package_id => l_lines_accts_rec.service_package_id ,
2909: p_start_stage_seq => l_lines_accts_rec.start_stage_seq ,
2910: p_current_stage_seq => l_lines_accts_rec.current_stage_seq ,
2911: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2912: FND_API.G_MISS_NUM )
2913: );
2914: --
2915: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2916: RAISE FND_API.G_EXC_ERROR ;
2911: p_end_stage_seq => NVL( l_lines_accts_rec.end_stage_seq,
2912: FND_API.G_MISS_NUM )
2913: );
2914: --
2915: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2916: RAISE FND_API.G_EXC_ERROR ;
2917: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2918: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2919: END IF;
2912: FND_API.G_MISS_NUM )
2913: );
2914: --
2915: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2916: RAISE FND_API.G_EXC_ERROR ;
2917: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2918: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2919: END IF;
2920: --
2913: );
2914: --
2915: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2916: RAISE FND_API.G_EXC_ERROR ;
2917: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2918: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2919: END IF;
2920: --
2921: -- The new_account_line_id will be null if the desired account lines are
2914: --
2915: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2916: RAISE FND_API.G_EXC_ERROR ;
2917: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2918: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2919: END IF;
2920: --
2921: -- The new_account_line_id will be null if the desired account lines are
2922: -- already there in the target worksheet. If not null, add the new
2929: --
2930: PSB_WS_Ops_Pvt.Add_Worksheet_Line
2931: (
2932: p_api_version => 1.0 ,
2933: p_init_msg_list => FND_API.G_FALSE,
2934: p_commit => FND_API.G_FALSE,
2935: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2936: p_return_status => l_return_status,
2937: p_msg_count => l_msg_count,
2930: PSB_WS_Ops_Pvt.Add_Worksheet_Line
2931: (
2932: p_api_version => 1.0 ,
2933: p_init_msg_list => FND_API.G_FALSE,
2934: p_commit => FND_API.G_FALSE,
2935: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2936: p_return_status => l_return_status,
2937: p_msg_count => l_msg_count,
2938: p_msg_data => l_msg_data ,
2931: (
2932: p_api_version => 1.0 ,
2933: p_init_msg_list => FND_API.G_FALSE,
2934: p_commit => FND_API.G_FALSE,
2935: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
2936: p_return_status => l_return_status,
2937: p_msg_count => l_msg_count,
2938: p_msg_data => l_msg_data ,
2939: --
2938: p_msg_data => l_msg_data ,
2939: --
2940: p_worksheet_id => p_target_worksheet_id ,
2941: p_account_line_id => l_new_account_line_id ,
2942: p_add_in_current_worksheet => FND_API.G_FALSE
2943: ) ;
2944: --
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR ;
2941: p_account_line_id => l_new_account_line_id ,
2942: p_add_in_current_worksheet => FND_API.G_FALSE
2943: ) ;
2944: --
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR ;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2949: END IF;
2942: p_add_in_current_worksheet => FND_API.G_FALSE
2943: ) ;
2944: --
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR ;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2949: END IF;
2950: --
2943: ) ;
2944: --
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR ;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2949: END IF;
2950: --
2951: END IF;
2944: --
2945: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2946: RAISE FND_API.G_EXC_ERROR ;
2947: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2948: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2949: END IF;
2950: --
2951: END IF;
2952: --
2960:
2961: PSB_WS_Acct_Pvt.Create_Account_Dist
2962: (
2963: p_api_version => 1.0 ,
2964: p_init_msg_list => FND_API.G_FALSE,
2965: p_commit => FND_API.G_FALSE,
2966: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2967: p_return_status => l_return_status,
2968: p_msg_count => l_msg_count,
2961: PSB_WS_Acct_Pvt.Create_Account_Dist
2962: (
2963: p_api_version => 1.0 ,
2964: p_init_msg_list => FND_API.G_FALSE,
2965: p_commit => FND_API.G_FALSE,
2966: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2967: p_return_status => l_return_status,
2968: p_msg_count => l_msg_count,
2969: p_msg_data => l_msg_data,
2962: (
2963: p_api_version => 1.0 ,
2964: p_init_msg_list => FND_API.G_FALSE,
2965: p_commit => FND_API.G_FALSE,
2966: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2967: p_return_status => l_return_status,
2968: p_msg_count => l_msg_count,
2969: p_msg_data => l_msg_data,
2970: -- comment out the following line for bug 3419241
2967: p_return_status => l_return_status,
2968: p_msg_count => l_msg_count,
2969: p_msg_data => l_msg_data,
2970: -- comment out the following line for bug 3419241
2971: -- p_check_stages must be set to FND_API.G_TRUE to
2972: -- automatically create new Stage for the Account Line.
2973: -- p_check_stages is FND_API.G_TRUE by default.
2974: --p_check_stages => FND_API.G_FALSE,
2975: p_worksheet_id => p_target_worksheet_id,
2969: p_msg_data => l_msg_data,
2970: -- comment out the following line for bug 3419241
2971: -- p_check_stages must be set to FND_API.G_TRUE to
2972: -- automatically create new Stage for the Account Line.
2973: -- p_check_stages is FND_API.G_TRUE by default.
2974: --p_check_stages => FND_API.G_FALSE,
2975: p_worksheet_id => p_target_worksheet_id,
2976: p_account_line_id => l_target_account_line_id,
2977: p_ytd_amount => l_lines_accts_rec.ytd_amount,
2970: -- comment out the following line for bug 3419241
2971: -- p_check_stages must be set to FND_API.G_TRUE to
2972: -- automatically create new Stage for the Account Line.
2973: -- p_check_stages is FND_API.G_TRUE by default.
2974: --p_check_stages => FND_API.G_FALSE,
2975: p_worksheet_id => p_target_worksheet_id,
2976: p_account_line_id => l_target_account_line_id,
2977: p_ytd_amount => l_lines_accts_rec.ytd_amount,
2978: p_period_amount => l_period_amount_tbl,
2980: p_current_stage_seq => l_lines_accts_rec.current_stage_seq,
2981: p_annual_fte => l_lines_accts_rec.annual_fte
2982: ) ;
2983:
2984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2985: RAISE FND_API.G_EXC_ERROR ;
2986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2988: END IF;
2981: p_annual_fte => l_lines_accts_rec.annual_fte
2982: ) ;
2983:
2984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2985: RAISE FND_API.G_EXC_ERROR ;
2986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2988: END IF;
2989: --
2982: ) ;
2983:
2984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2985: RAISE FND_API.G_EXC_ERROR ;
2986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2988: END IF;
2989: --
2990: END IF ; -- For l_ws_account_lines_csr%NOTFOUND.
2983:
2984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2985: RAISE FND_API.G_EXC_ERROR ;
2986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
2988: END IF;
2989: --
2990: END IF ; -- For l_ws_account_lines_csr%NOTFOUND.
2991: --
3079: -- API to create new fte lines in psb_ws_fte_lines.
3080: PSB_WS_Pos_Pvt.Create_FTE_Lines
3081: (
3082: p_api_version => 1.0 ,
3083: p_init_msg_list => FND_API.G_FALSE ,
3084: p_commit => FND_API.G_FALSE ,
3085: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3086: p_return_status => l_return_status ,
3087: p_msg_count => l_msg_count ,
3080: PSB_WS_Pos_Pvt.Create_FTE_Lines
3081: (
3082: p_api_version => 1.0 ,
3083: p_init_msg_list => FND_API.G_FALSE ,
3084: p_commit => FND_API.G_FALSE ,
3085: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3086: p_return_status => l_return_status ,
3087: p_msg_count => l_msg_count ,
3088: p_msg_data => l_msg_data ,
3081: (
3082: p_api_version => 1.0 ,
3083: p_init_msg_list => FND_API.G_FALSE ,
3084: p_commit => FND_API.G_FALSE ,
3085: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3086: p_return_status => l_return_status ,
3087: p_msg_count => l_msg_count ,
3088: p_msg_data => l_msg_data ,
3089: --
3087: p_msg_count => l_msg_count ,
3088: p_msg_data => l_msg_data ,
3089: --
3090: p_fte_line_id => l_new_fte_line_id ,
3091: p_check_spfl_exists => FND_API.G_FALSE,
3092: p_worksheet_id => p_target_worksheet_id ,
3093: p_position_line_id => l_target_position_line_id ,
3094: p_budget_year_id => l_fte_rec.budget_year_id ,
3095: p_annual_fte => l_fte_rec.annual_fte ,
3097: p_stage_set_id => l_fte_rec.stage_set_id ,
3098: p_start_stage_seq => l_fte_rec.start_stage_seq ,
3099: p_current_stage_seq => l_fte_rec.current_stage_seq ,
3100: p_end_stage_seq => NVL( l_fte_rec.end_stage_seq ,
3101: FND_API.G_MISS_NUM ),
3102: p_period_fte => l_period_fte_tbl
3103: );
3104:
3105: --
3102: p_period_fte => l_period_fte_tbl
3103: );
3104:
3105: --
3106: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3107: RAISE FND_API.G_EXC_ERROR ;
3108: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3110: END IF;
3103: );
3104:
3105: --
3106: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3107: RAISE FND_API.G_EXC_ERROR ;
3108: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3110: END IF;
3111: --
3104:
3105: --
3106: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3107: RAISE FND_API.G_EXC_ERROR ;
3108: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3110: END IF;
3111: --
3112:
3105: --
3106: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3107: RAISE FND_API.G_EXC_ERROR ;
3108: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3109: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3110: END IF;
3111: --
3112:
3113: END LOOP; -- To process fte_lines in psb_ws_element_lines.
3134: -- API to create new element lines in psb_ws_element_lines.
3135: PSB_WS_Pos_Pvt.Create_Element_Lines
3136: (
3137: p_api_version => 1.0 ,
3138: p_init_msg_list => FND_API.G_FALSE ,
3139: p_commit => FND_API.G_FALSE ,
3140: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3141: p_return_status => l_return_status ,
3142: p_msg_count => l_msg_count ,
3135: PSB_WS_Pos_Pvt.Create_Element_Lines
3136: (
3137: p_api_version => 1.0 ,
3138: p_init_msg_list => FND_API.G_FALSE ,
3139: p_commit => FND_API.G_FALSE ,
3140: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3141: p_return_status => l_return_status ,
3142: p_msg_count => l_msg_count ,
3143: p_msg_data => l_msg_data ,
3136: (
3137: p_api_version => 1.0 ,
3138: p_init_msg_list => FND_API.G_FALSE ,
3139: p_commit => FND_API.G_FALSE ,
3140: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
3141: p_return_status => l_return_status ,
3142: p_msg_count => l_msg_count ,
3143: p_msg_data => l_msg_data ,
3144: --
3153: p_stage_set_id => l_element_rec.stage_set_id ,
3154: p_start_stage_seq => l_element_rec.start_stage_seq ,
3155: p_current_stage_seq => l_element_rec.current_stage_seq,
3156: p_end_stage_seq => NVL( l_element_rec.end_stage_seq,
3157: FND_API.G_MISS_NUM )
3158: );
3159:
3160: --
3161: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3157: FND_API.G_MISS_NUM )
3158: );
3159:
3160: --
3161: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3162: RAISE FND_API.G_EXC_ERROR ;
3163: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3165: END IF;
3158: );
3159:
3160: --
3161: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3162: RAISE FND_API.G_EXC_ERROR ;
3163: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3165: END IF;
3166: --
3159:
3160: --
3161: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3162: RAISE FND_API.G_EXC_ERROR ;
3163: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3165: END IF;
3166: --
3167: END LOOP; -- To process element_lines in psb_ws_element_lines.
3160: --
3161: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3162: RAISE FND_API.G_EXC_ERROR ;
3163: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3164: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3165: END IF;
3166: --
3167: END LOOP; -- To process element_lines in psb_ws_element_lines.
3168:
3195: --
3196: PSB_Positions_Pvt.Modify_Assignment
3197: (
3198: p_api_version => 1.0 ,
3199: p_init_msg_list => FND_API.G_FALSE ,
3200: p_commit => FND_API.G_FALSE ,
3201: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3202: p_return_status => l_return_status ,
3203: p_msg_count => l_msg_count ,
3196: PSB_Positions_Pvt.Modify_Assignment
3197: (
3198: p_api_version => 1.0 ,
3199: p_init_msg_list => FND_API.G_FALSE ,
3200: p_commit => FND_API.G_FALSE ,
3201: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3202: p_return_status => l_return_status ,
3203: p_msg_count => l_msg_count ,
3204: p_msg_data => l_msg_data ,
3197: (
3198: p_api_version => 1.0 ,
3199: p_init_msg_list => FND_API.G_FALSE ,
3200: p_commit => FND_API.G_FALSE ,
3201: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3202: p_return_status => l_return_status ,
3203: p_msg_count => l_msg_count ,
3204: p_msg_data => l_msg_data ,
3205: --
3228: p_primary_employee_flag => l_asgn_rec.primary_employee_flag ,
3229: p_mode => 'R'
3230: ) ;
3231: --
3232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3233: RAISE FND_API.G_EXC_ERROR ;
3234: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3235: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3236: END IF;
3229: p_mode => 'R'
3230: ) ;
3231: --
3232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3233: RAISE FND_API.G_EXC_ERROR ;
3234: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3235: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3236: END IF;
3237: --
3230: ) ;
3231: --
3232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3233: RAISE FND_API.G_EXC_ERROR ;
3234: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3235: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3236: END IF;
3237: --
3238: END LOOP ; -- To process position assignments.
3231: --
3232: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3233: RAISE FND_API.G_EXC_ERROR ;
3234: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3235: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3236: END IF;
3237: --
3238: END LOOP ; -- To process position assignments.
3239:
3245:
3246: END IF ; -- l_source_budget_by_position = 'Y' THEN
3247:
3248: --
3249: IF FND_API.To_Boolean ( p_commit ) THEN
3250: COMMIT WORK;
3251: END IF;
3252: --
3253: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3254: p_data => p_msg_data );
3255: --
3256: EXCEPTION
3257: --
3258: WHEN FND_API.G_EXC_ERROR THEN
3259: --
3260: ROLLBACK TO Merge_Worksheets_Pvt ;
3261: p_return_status := FND_API.G_RET_STS_ERROR;
3262: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3257: --
3258: WHEN FND_API.G_EXC_ERROR THEN
3259: --
3260: ROLLBACK TO Merge_Worksheets_Pvt ;
3261: p_return_status := FND_API.G_RET_STS_ERROR;
3262: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3263: p_data => p_msg_data );
3264: --
3265: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3261: p_return_status := FND_API.G_RET_STS_ERROR;
3262: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3263: p_data => p_msg_data );
3264: --
3265: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3266: --
3267: ROLLBACK TO Merge_Worksheets_Pvt ;
3268: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3269: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3264: --
3265: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3266: --
3267: ROLLBACK TO Merge_Worksheets_Pvt ;
3268: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3269: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3270: p_data => p_msg_data );
3271: --
3272: WHEN OTHERS THEN
3275: CLOSE l_ws_account_lines_csr ;
3276: END IF ;
3277: --
3278: ROLLBACK TO Merge_Worksheets_Pvt ;
3279: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3280: --
3281: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3282: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
3283: l_api_name);
3298: --
3299: PROCEDURE Delete_Worksheet
3300: (
3301: p_api_version IN NUMBER ,
3302: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3303: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3304: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3305: p_return_status OUT NOCOPY VARCHAR2 ,
3306: p_msg_count OUT NOCOPY NUMBER ,
3299: PROCEDURE Delete_Worksheet
3300: (
3301: p_api_version IN NUMBER ,
3302: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3303: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3304: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3305: p_return_status OUT NOCOPY VARCHAR2 ,
3306: p_msg_count OUT NOCOPY NUMBER ,
3307: p_msg_data OUT NOCOPY VARCHAR2 ,
3300: (
3301: p_api_version IN NUMBER ,
3302: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3303: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3304: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3305: p_return_status OUT NOCOPY VARCHAR2 ,
3306: p_msg_count OUT NOCOPY NUMBER ,
3307: p_msg_data OUT NOCOPY VARCHAR2 ,
3308: --
3326: BEGIN
3327: --
3328: SAVEPOINT Delete_Worksheet ;
3329: --
3330: IF NOT FND_API.Compatible_API_Call ( l_api_version,
3331: p_api_version,
3332: l_api_name,
3333: G_PKG_NAME )
3334: THEN
3331: p_api_version,
3332: l_api_name,
3333: G_PKG_NAME )
3334: THEN
3335: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3336: END IF;
3337: --
3338:
3339: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3335: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3336: END IF;
3337: --
3338:
3339: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3340: FND_MSG_PUB.initialize ;
3341: END IF;
3342: --
3343: p_return_status := FND_API.G_RET_STS_SUCCESS ;
3339: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3340: FND_MSG_PUB.initialize ;
3341: END IF;
3342: --
3343: p_return_status := FND_API.G_RET_STS_SUCCESS ;
3344: --
3345:
3346: SELECT NVL( global_worksheet_flag, 'N') ,
3347: NVL( local_copy_flag, 'N') ,
3376: --
3377: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3378: (
3379: p_api_version => 1.0 ,
3380: p_init_msg_list => FND_API.G_FALSE ,
3381: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3382: p_return_status => l_return_status ,
3383: p_msg_count => l_msg_count ,
3384: p_msg_data => l_msg_data ,
3377: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3378: (
3379: p_api_version => 1.0 ,
3380: p_init_msg_list => FND_API.G_FALSE ,
3381: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3382: p_return_status => l_return_status ,
3383: p_msg_count => l_msg_count ,
3384: p_msg_data => l_msg_data ,
3385: --
3387: p_concurrency_entity_name => 'WORKSHEET',
3388: p_concurrency_entity_id => l_worksheet_rec.worksheet_id
3389: );
3390: --
3391: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3392: RAISE FND_API.G_EXC_ERROR ;
3393: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3394: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3395: END IF;
3388: p_concurrency_entity_id => l_worksheet_rec.worksheet_id
3389: );
3390: --
3391: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3392: RAISE FND_API.G_EXC_ERROR ;
3393: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3394: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3395: END IF;
3396: --
3389: );
3390: --
3391: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3392: RAISE FND_API.G_EXC_ERROR ;
3393: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3394: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3395: END IF;
3396: --
3397: END LOOP ; -- Lock child official, review group and local worksheets.
3390: --
3391: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3392: RAISE FND_API.G_EXC_ERROR ;
3393: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3394: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3395: END IF;
3396: --
3397: END LOOP ; -- Lock child official, review group and local worksheets.
3398:
3414: p_delete_lines_flag => 'N' ,
3415: p_return_status => l_return_status
3416: ) ;
3417: --
3418: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3419: RAISE FND_API.G_EXC_ERROR ;
3420: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3421: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3422: END IF;
3415: p_return_status => l_return_status
3416: ) ;
3417: --
3418: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3419: RAISE FND_API.G_EXC_ERROR ;
3420: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3421: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3422: END IF;
3423: --
3416: ) ;
3417: --
3418: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3419: RAISE FND_API.G_EXC_ERROR ;
3420: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3421: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3422: END IF;
3423: --
3424: END LOOP;
3417: --
3418: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3419: RAISE FND_API.G_EXC_ERROR ;
3420: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3421: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3422: END IF;
3423: --
3424: END LOOP;
3425:
3443: p_delete_lines_flag => 'Y' ,
3444: p_return_status => l_return_status
3445: ) ;
3446: --
3447: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3448: RAISE FND_API.G_EXC_ERROR ;
3449: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3450: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3451: END IF;
3444: p_return_status => l_return_status
3445: ) ;
3446: --
3447: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3448: RAISE FND_API.G_EXC_ERROR ;
3449: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3450: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3451: END IF;
3452: --
3445: ) ;
3446: --
3447: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3448: RAISE FND_API.G_EXC_ERROR ;
3449: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3450: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3451: END IF;
3452: --
3453: ELSE
3446: --
3447: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3448: RAISE FND_API.G_EXC_ERROR ;
3449: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3450: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3451: END IF;
3452: --
3453: ELSE
3454: --
3457: --
3458: PSB_Worksheet_Pvt.Update_Worksheet
3459: (
3460: p_api_version => 1.0 ,
3461: p_init_msg_list => FND_API.G_FALSE ,
3462: p_commit => FND_API.G_FALSE ,
3463: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3464: p_return_status => l_return_status ,
3465: p_msg_count => l_msg_count ,
3458: PSB_Worksheet_Pvt.Update_Worksheet
3459: (
3460: p_api_version => 1.0 ,
3461: p_init_msg_list => FND_API.G_FALSE ,
3462: p_commit => FND_API.G_FALSE ,
3463: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3464: p_return_status => l_return_status ,
3465: p_msg_count => l_msg_count ,
3466: p_msg_data => l_msg_data ,
3459: (
3460: p_api_version => 1.0 ,
3461: p_init_msg_list => FND_API.G_FALSE ,
3462: p_commit => FND_API.G_FALSE ,
3463: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3464: p_return_status => l_return_status ,
3465: p_msg_count => l_msg_count ,
3466: p_msg_data => l_msg_data ,
3467: --
3468: p_worksheet_id => l_worksheet_rec.worksheet_id ,
3469: p_global_worksheet_id => NULL
3470: ) ;
3471: --
3472: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3473: RAISE FND_API.G_EXC_ERROR ;
3474: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3475: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3476: END IF;
3469: p_global_worksheet_id => NULL
3470: ) ;
3471: --
3472: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3473: RAISE FND_API.G_EXC_ERROR ;
3474: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3475: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3476: END IF;
3477: --
3470: ) ;
3471: --
3472: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3473: RAISE FND_API.G_EXC_ERROR ;
3474: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3475: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3476: END IF;
3477: --
3478: END IF ; -- if p_keep_local_copy_flag is 'Y'.
3471: --
3472: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3473: RAISE FND_API.G_EXC_ERROR ;
3474: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3475: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3476: END IF;
3477: --
3478: END IF ; -- if p_keep_local_copy_flag is 'Y'.
3479: --
3488: p_delete_lines_flag => 'Y' ,
3489: p_return_status => l_return_status
3490: ) ;
3491: --
3492: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3493: RAISE FND_API.G_EXC_ERROR ;
3494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3496: END IF;
3489: p_return_status => l_return_status
3490: ) ;
3491: --
3492: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3493: RAISE FND_API.G_EXC_ERROR ;
3494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3496: END IF;
3497: --
3490: ) ;
3491: --
3492: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3493: RAISE FND_API.G_EXC_ERROR ;
3494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3496: END IF;
3497: --
3498:
3491: --
3492: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3493: RAISE FND_API.G_EXC_ERROR ;
3494: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3495: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3496: END IF;
3497: --
3498:
3499: ELSIF l_local_copy_flag = 'Y' THEN
3508: p_delete_lines_flag => 'Y' ,
3509: p_return_status => l_return_status
3510: ) ;
3511: --
3512: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3513: RAISE FND_API.G_EXC_ERROR ;
3514: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3515: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3516: END IF;
3509: p_return_status => l_return_status
3510: ) ;
3511: --
3512: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3513: RAISE FND_API.G_EXC_ERROR ;
3514: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3515: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3516: END IF;
3517: --
3510: ) ;
3511: --
3512: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3513: RAISE FND_API.G_EXC_ERROR ;
3514: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3515: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3516: END IF;
3517: --
3518:
3511: --
3512: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3513: RAISE FND_API.G_EXC_ERROR ;
3514: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3515: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3516: END IF;
3517: --
3518:
3519: ELSE
3527: -- Find all the child worksheets.
3528: PSB_WS_Ops_Pvt.Find_Child_Worksheets
3529: (
3530: p_api_version => 1.0 ,
3531: p_init_msg_list => FND_API.G_FALSE,
3532: p_commit => FND_API.G_FALSE,
3533: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
3534: p_return_status => l_return_status,
3535: p_msg_count => l_msg_count,
3528: PSB_WS_Ops_Pvt.Find_Child_Worksheets
3529: (
3530: p_api_version => 1.0 ,
3531: p_init_msg_list => FND_API.G_FALSE,
3532: p_commit => FND_API.G_FALSE,
3533: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
3534: p_return_status => l_return_status,
3535: p_msg_count => l_msg_count,
3536: p_msg_data => l_msg_data,
3529: (
3530: p_api_version => 1.0 ,
3531: p_init_msg_list => FND_API.G_FALSE,
3532: p_commit => FND_API.G_FALSE,
3533: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
3534: p_return_status => l_return_status,
3535: p_msg_count => l_msg_count,
3536: p_msg_data => l_msg_data,
3537: --
3538: p_worksheet_id => p_worksheet_id,
3539: p_worksheet_tbl => l_worksheets_tab
3540: );
3541: --
3542: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3543: RAISE FND_API.G_EXC_ERROR ;
3544: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3546: END IF;
3539: p_worksheet_tbl => l_worksheets_tab
3540: );
3541: --
3542: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3543: RAISE FND_API.G_EXC_ERROR ;
3544: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3546: END IF;
3547: --
3540: );
3541: --
3542: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3543: RAISE FND_API.G_EXC_ERROR ;
3544: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3546: END IF;
3547: --
3548:
3541: --
3542: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3543: RAISE FND_API.G_EXC_ERROR ;
3544: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3545: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3546: END IF;
3547: --
3548:
3549: -- Adding the current worksheet in the table as it has to go through
3560: -- Lock the current worksheet.
3561: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3562: (
3563: p_api_version => 1.0 ,
3564: p_init_msg_list => FND_API.G_FALSE ,
3565: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3566: p_return_status => l_return_status ,
3567: p_msg_count => l_msg_count ,
3568: p_msg_data => l_msg_data ,
3561: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3562: (
3563: p_api_version => 1.0 ,
3564: p_init_msg_list => FND_API.G_FALSE ,
3565: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3566: p_return_status => l_return_status ,
3567: p_msg_count => l_msg_count ,
3568: p_msg_data => l_msg_data ,
3569: --
3571: p_concurrency_entity_name => 'WORKSHEET',
3572: p_concurrency_entity_id => l_worksheets_tab(i)
3573: );
3574: --
3575: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3576: RAISE FND_API.G_EXC_ERROR ;
3577: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3579: END IF;
3572: p_concurrency_entity_id => l_worksheets_tab(i)
3573: );
3574: --
3575: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3576: RAISE FND_API.G_EXC_ERROR ;
3577: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3579: END IF;
3580: --
3573: );
3574: --
3575: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3576: RAISE FND_API.G_EXC_ERROR ;
3577: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3579: END IF;
3580: --
3581:
3574: --
3575: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3576: RAISE FND_API.G_EXC_ERROR ;
3577: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3578: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3579: END IF;
3580: --
3581:
3582: -- Lock local copies of the current worksheet as per the parameter.
3593: -- Lock the current worksheet.
3594: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3595: (
3596: p_api_version => 1.0 ,
3597: p_init_msg_list => FND_API.G_FALSE ,
3598: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3599: p_return_status => l_return_status ,
3600: p_msg_count => l_msg_count ,
3601: p_msg_data => l_msg_data ,
3594: PSB_Concurrency_Control_Pub.Enforce_Concurrency_Control
3595: (
3596: p_api_version => 1.0 ,
3597: p_init_msg_list => FND_API.G_FALSE ,
3598: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
3599: p_return_status => l_return_status ,
3600: p_msg_count => l_msg_count ,
3601: p_msg_data => l_msg_data ,
3602: --
3604: p_concurrency_entity_name => 'WORKSHEET',
3605: p_concurrency_entity_id => l_local_ws_rec.worksheet_id
3606: );
3607: --
3608: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3609: RAISE FND_API.G_EXC_ERROR ;
3610: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3611: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3612: END IF;
3605: p_concurrency_entity_id => l_local_ws_rec.worksheet_id
3606: );
3607: --
3608: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3609: RAISE FND_API.G_EXC_ERROR ;
3610: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3611: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3612: END IF;
3613: --
3606: );
3607: --
3608: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3609: RAISE FND_API.G_EXC_ERROR ;
3610: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3611: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3612: END IF;
3613: --
3614:
3607: --
3608: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3609: RAISE FND_API.G_EXC_ERROR ;
3610: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3611: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3612: END IF;
3613: --
3614:
3615: END LOOP ;
3633: p_delete_lines_flag => 'N' ,
3634: p_return_status => l_return_status
3635: ) ;
3636: --
3637: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3638: RAISE FND_API.G_EXC_ERROR ;
3639: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3640: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3641: END IF;
3634: p_return_status => l_return_status
3635: ) ;
3636: --
3637: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3638: RAISE FND_API.G_EXC_ERROR ;
3639: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3640: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3641: END IF;
3642:
3635: ) ;
3636: --
3637: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3638: RAISE FND_API.G_EXC_ERROR ;
3639: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3640: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3641: END IF;
3642:
3643: -- Delete local copies of the current worksheet as per the parameter.
3636: --
3637: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3638: RAISE FND_API.G_EXC_ERROR ;
3639: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3640: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3641: END IF;
3642:
3643: -- Delete local copies of the current worksheet as per the parameter.
3644: IF p_keep_local_copy_flag = 'N' THEN
3658: p_delete_lines_flag => 'Y' ,
3659: p_return_status => l_return_status
3660: ) ;
3661: --
3662: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3663: RAISE FND_API.G_EXC_ERROR ;
3664: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3665: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3666: END IF;
3659: p_return_status => l_return_status
3660: ) ;
3661: --
3662: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3663: RAISE FND_API.G_EXC_ERROR ;
3664: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3665: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3666: END IF;
3667:
3660: ) ;
3661: --
3662: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3663: RAISE FND_API.G_EXC_ERROR ;
3664: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3665: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3666: END IF;
3667:
3668: END LOOP ;
3661: --
3662: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3663: RAISE FND_API.G_EXC_ERROR ;
3664: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3665: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3666: END IF;
3667:
3668: END LOOP ;
3669:
3672: END LOOP; -- For deletion phase.
3673:
3674: END IF; -- For the main IF statement.
3675:
3676: IF FND_API.To_Boolean ( p_commit ) THEN
3677: COMMIT WORK;
3678: END IF;
3679: --
3680: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3681: p_data => p_msg_data );
3682: --
3683: EXCEPTION
3684: --
3685: WHEN FND_API.G_EXC_ERROR THEN
3686: --
3687: /*For Bug No : 2266309 Start*/
3688: --ROLLBACK TO Delete_Worksheet ;
3689: ROLLBACK;
3687: /*For Bug No : 2266309 Start*/
3688: --ROLLBACK TO Delete_Worksheet ;
3689: ROLLBACK;
3690: /*For Bug No : 2266309 End*/
3691: p_return_status := FND_API.G_RET_STS_ERROR;
3692: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3693: p_data => p_msg_data );
3694: --
3695: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3691: p_return_status := FND_API.G_RET_STS_ERROR;
3692: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3693: p_data => p_msg_data );
3694: --
3695: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3696: --
3697: /*For Bug No : 2266309 Start*/
3698: --ROLLBACK TO Delete_Worksheet ;
3699: ROLLBACK;
3697: /*For Bug No : 2266309 Start*/
3698: --ROLLBACK TO Delete_Worksheet ;
3699: ROLLBACK;
3700: /*For Bug No : 2266309 End*/
3701: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3702: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3703: p_data => p_msg_data );
3704: --
3705: WHEN OTHERS THEN
3707: /*For Bug No : 2266309 Start*/
3708: --ROLLBACK TO Delete_Worksheet ;
3709: ROLLBACK;
3710: /*For Bug No : 2266309 End*/
3711: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3712: --
3713: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3714: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
3715: l_api_name);
3732: --
3733: PROCEDURE Add_Worksheet_Line
3734: (
3735: p_api_version IN NUMBER ,
3736: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3737: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3738: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3739: p_return_status OUT NOCOPY VARCHAR2 ,
3740: p_msg_count OUT NOCOPY NUMBER ,
3733: PROCEDURE Add_Worksheet_Line
3734: (
3735: p_api_version IN NUMBER ,
3736: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3737: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3738: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3739: p_return_status OUT NOCOPY VARCHAR2 ,
3740: p_msg_count OUT NOCOPY NUMBER ,
3741: p_msg_data OUT NOCOPY VARCHAR2 ,
3734: (
3735: p_api_version IN NUMBER ,
3736: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
3737: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
3738: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
3739: p_return_status OUT NOCOPY VARCHAR2 ,
3740: p_msg_count OUT NOCOPY NUMBER ,
3741: p_msg_data OUT NOCOPY VARCHAR2 ,
3742: --
3741: p_msg_data OUT NOCOPY VARCHAR2 ,
3742: --
3743: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
3744: p_account_line_id IN psb_ws_account_lines.account_line_id%TYPE,
3745: p_add_in_current_worksheet IN VARCHAR2 := FND_API.G_FALSE
3746: )
3747: IS
3748: --
3749: l_api_name CONSTANT VARCHAR2(30) := 'Add_Worksheet_Line' ;
3771: BEGIN
3772: --
3773: SAVEPOINT Add_Worksheet_Line_Pvt ;
3774: --
3775: IF NOT FND_API.Compatible_API_Call ( l_api_version,
3776: p_api_version,
3777: l_api_name,
3778: G_PKG_NAME )
3779: THEN
3776: p_api_version,
3777: l_api_name,
3778: G_PKG_NAME )
3779: THEN
3780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3781: END IF;
3782: --
3783:
3784: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3780: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3781: END IF;
3782: --
3783:
3784: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3785: FND_MSG_PUB.initialize ;
3786: END IF;
3787: --
3788: p_return_status := FND_API.G_RET_STS_SUCCESS ;
3784: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
3785: FND_MSG_PUB.initialize ;
3786: END IF;
3787: --
3788: p_return_status := FND_API.G_RET_STS_SUCCESS ;
3789:
3790: --
3791: -- Finding the account line information.
3792: --
3799: --
3800: CLOSE l_ws_lines_csr ;
3801: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_ACCOUNT_LINE_ID') ;
3802: FND_MSG_PUB.Add;
3803: RAISE FND_API.G_EXC_ERROR ;
3804: END IF ;
3805:
3806: l_current_worksheet_id := p_worksheet_id ;
3807:
3805:
3806: l_current_worksheet_id := p_worksheet_id ;
3807:
3808: -- Updating the current worksheet (the one which is passed).
3809: IF p_add_in_current_worksheet = FND_API.G_TRUE THEN
3810:
3811: --
3812: -- Add the new account line to the current worksheet. All we need to do
3813: -- is make an entry in the account-line matrix.
3825: p_creation_date => g_current_date,
3826: p_return_status => l_return_status
3827: ) ;
3828: --
3829: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3830: RAISE FND_API.G_EXC_ERROR ;
3831: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3832: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3833: END IF;
3826: p_return_status => l_return_status
3827: ) ;
3828: --
3829: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3830: RAISE FND_API.G_EXC_ERROR ;
3831: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3832: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3833: END IF;
3834: --
3827: ) ;
3828: --
3829: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3830: RAISE FND_API.G_EXC_ERROR ;
3831: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3832: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3833: END IF;
3834: --
3835: END IF ;
3828: --
3829: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3830: RAISE FND_API.G_EXC_ERROR ;
3831: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3832: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3833: END IF;
3834: --
3835: END IF ;
3836:
3841: --
3842: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
3843: (
3844: p_api_version => 1.0 ,
3845: p_init_msg_list => FND_API.G_FALSE,
3846: p_commit => FND_API.G_FALSE,
3847: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
3848: p_return_status => l_return_status,
3849: p_msg_count => l_msg_count,
3842: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
3843: (
3844: p_api_version => 1.0 ,
3845: p_init_msg_list => FND_API.G_FALSE,
3846: p_commit => FND_API.G_FALSE,
3847: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
3848: p_return_status => l_return_status,
3849: p_msg_count => l_msg_count,
3850: p_msg_data => l_msg_data ,
3843: (
3844: p_api_version => 1.0 ,
3845: p_init_msg_list => FND_API.G_FALSE,
3846: p_commit => FND_API.G_FALSE,
3847: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
3848: p_return_status => l_return_status,
3849: p_msg_count => l_msg_count,
3850: p_msg_data => l_msg_data ,
3851: --
3852: p_worksheet_id => l_current_worksheet_id ,
3853: p_worksheet_id_OUT => l_parent_worksheet_id
3854: ) ;
3855: --
3856: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3857: RAISE FND_API.G_EXC_ERROR ;
3858: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3859: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3860: ELSIF l_parent_worksheet_id = 0 THEN
3853: p_worksheet_id_OUT => l_parent_worksheet_id
3854: ) ;
3855: --
3856: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3857: RAISE FND_API.G_EXC_ERROR ;
3858: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3859: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3860: ELSIF l_parent_worksheet_id = 0 THEN
3861: -- It means all the top worksheets have been processed.
3854: ) ;
3855: --
3856: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3857: RAISE FND_API.G_EXC_ERROR ;
3858: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3859: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3860: ELSIF l_parent_worksheet_id = 0 THEN
3861: -- It means all the top worksheets have been processed.
3862: EXIT ;
3855: --
3856: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3857: RAISE FND_API.G_EXC_ERROR ;
3858: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3859: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3860: ELSIF l_parent_worksheet_id = 0 THEN
3861: -- It means all the top worksheets have been processed.
3862: EXIT ;
3863: END IF ;
3881: p_creation_date => g_current_date,
3882: p_return_status => l_return_status
3883: ) ;
3884: --
3885: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3886: RAISE FND_API.G_EXC_ERROR ;
3887: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3888: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3889: END IF;
3882: p_return_status => l_return_status
3883: ) ;
3884: --
3885: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3886: RAISE FND_API.G_EXC_ERROR ;
3887: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3888: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3889: END IF;
3890: --
3883: ) ;
3884: --
3885: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3886: RAISE FND_API.G_EXC_ERROR ;
3887: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3888: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3889: END IF;
3890: --
3891: END LOOP;
3884: --
3885: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
3886: RAISE FND_API.G_EXC_ERROR ;
3887: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
3888: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
3889: END IF;
3890: --
3891: END LOOP;
3892: --
3891: END LOOP;
3892: --
3893: CLOSE l_ws_lines_csr ;
3894: --
3895: IF FND_API.To_Boolean ( p_commit ) THEN
3896: COMMIT WORK;
3897: END IF;
3898: --
3899: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3900: p_data => p_msg_data );
3901: --
3902: EXCEPTION
3903: --
3904: WHEN FND_API.G_EXC_ERROR THEN
3905: --
3906: ROLLBACK TO Add_Worksheet_Line_Pvt ;
3907: p_return_status := FND_API.G_RET_STS_ERROR;
3908: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3903: --
3904: WHEN FND_API.G_EXC_ERROR THEN
3905: --
3906: ROLLBACK TO Add_Worksheet_Line_Pvt ;
3907: p_return_status := FND_API.G_RET_STS_ERROR;
3908: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3909: p_data => p_msg_data );
3910: --
3911: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3907: p_return_status := FND_API.G_RET_STS_ERROR;
3908: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3909: p_data => p_msg_data );
3910: --
3911: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3912: --
3913: ROLLBACK TO Add_Worksheet_Line_Pvt ;
3914: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3915: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3910: --
3911: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3912: --
3913: ROLLBACK TO Add_Worksheet_Line_Pvt ;
3914: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3915: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
3916: p_data => p_msg_data );
3917: --
3918: WHEN OTHERS THEN
3921: CLOSE l_ws_lines_csr ;
3922: END IF ;
3923: --
3924: ROLLBACK TO Add_Worksheet_Line_Pvt ;
3925: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3926: --
3927: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3928: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
3929: l_api_name);
3944: -- higher worksheets. The operation is performed only on the psb_ws_lines table.
3945: --
3946: PROCEDURE Add_Worksheet_Line
3947: ( p_api_version IN NUMBER,
3948: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
3949: p_commit IN VARCHAR2 := FND_API.G_FALSE,
3950: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3951: p_return_status OUT NOCOPY VARCHAR2,
3952: p_msg_count OUT NOCOPY NUMBER,
3945: --
3946: PROCEDURE Add_Worksheet_Line
3947: ( p_api_version IN NUMBER,
3948: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
3949: p_commit IN VARCHAR2 := FND_API.G_FALSE,
3950: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3951: p_return_status OUT NOCOPY VARCHAR2,
3952: p_msg_count OUT NOCOPY NUMBER,
3953: p_msg_data OUT NOCOPY VARCHAR2,
3946: PROCEDURE Add_Worksheet_Line
3947: ( p_api_version IN NUMBER,
3948: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
3949: p_commit IN VARCHAR2 := FND_API.G_FALSE,
3950: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
3951: p_return_status OUT NOCOPY VARCHAR2,
3952: p_msg_count OUT NOCOPY NUMBER,
3953: p_msg_data OUT NOCOPY VARCHAR2,
3954: p_worksheet_id IN NUMBER,
3976: BEGIN
3977:
3978: SAVEPOINT Add_Worksheet_Line_Pvt;
3979:
3980: if not FND_API.Compatible_API_Call (l_api_version,
3981: p_api_version,
3982: l_api_name,
3983: G_PKG_NAME)
3984: then
3981: p_api_version,
3982: l_api_name,
3983: G_PKG_NAME)
3984: then
3985: raise FND_API.G_EXC_UNEXPECTED_ERROR;
3986: end if;
3987:
3988: if FND_API.To_Boolean (p_init_msg_list) then
3989: FND_MSG_PUB.initialize;
3984: then
3985: raise FND_API.G_EXC_UNEXPECTED_ERROR;
3986: end if;
3987:
3988: if FND_API.To_Boolean (p_init_msg_list) then
3989: FND_MSG_PUB.initialize;
3990: end if;
3991:
3992: --
4002: --
4003: PSB_WS_Ops_Pvt.Add_Worksheet_Line
4004: (
4005: p_api_version => 1.0 ,
4006: p_init_msg_list => FND_API.G_FALSE,
4007: p_commit => FND_API.G_FALSE,
4008: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4009: p_return_status => l_return_status,
4010: p_msg_count => l_msg_count,
4003: PSB_WS_Ops_Pvt.Add_Worksheet_Line
4004: (
4005: p_api_version => 1.0 ,
4006: p_init_msg_list => FND_API.G_FALSE,
4007: p_commit => FND_API.G_FALSE,
4008: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4009: p_return_status => l_return_status,
4010: p_msg_count => l_msg_count,
4011: p_msg_data => l_msg_data ,
4004: (
4005: p_api_version => 1.0 ,
4006: p_init_msg_list => FND_API.G_FALSE,
4007: p_commit => FND_API.G_FALSE,
4008: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4009: p_return_status => l_return_status,
4010: p_msg_count => l_msg_count,
4011: p_msg_data => l_msg_data ,
4012: --
4011: p_msg_data => l_msg_data ,
4012: --
4013: p_worksheet_id => p_worksheet_id ,
4014: p_account_line_id => c_WL_Rec.account_line_id,
4015: p_add_in_current_worksheet => FND_API.G_FALSE
4016: ) ;
4017: --
4018: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4019: RAISE FND_API.G_EXC_ERROR ;
4014: p_account_line_id => c_WL_Rec.account_line_id,
4015: p_add_in_current_worksheet => FND_API.G_FALSE
4016: ) ;
4017: --
4018: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4019: RAISE FND_API.G_EXC_ERROR ;
4020: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4022: END IF;
4015: p_add_in_current_worksheet => FND_API.G_FALSE
4016: ) ;
4017: --
4018: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4019: RAISE FND_API.G_EXC_ERROR ;
4020: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4022: END IF;
4023: --
4016: ) ;
4017: --
4018: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4019: RAISE FND_API.G_EXC_ERROR ;
4020: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4022: END IF;
4023: --
4024:
4017: --
4018: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4019: RAISE FND_API.G_EXC_ERROR ;
4020: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4021: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4022: END IF;
4023: --
4024:
4025: END LOOP; -- End finding the account_line_id(s).
4024:
4025: END LOOP; -- End finding the account_line_id(s).
4026:
4027: --
4028: IF FND_API.To_Boolean (p_commit) THEN
4029: COMMIT WORK;
4030: END IF;
4031: --
4032: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4031: --
4032: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4033: p_data => p_msg_data );
4034: --
4035: p_return_status := FND_API.G_RET_STS_SUCCESS;
4036:
4037: EXCEPTION
4038: --
4039: WHEN FND_API.G_EXC_ERROR THEN
4035: p_return_status := FND_API.G_RET_STS_SUCCESS;
4036:
4037: EXCEPTION
4038: --
4039: WHEN FND_API.G_EXC_ERROR THEN
4040: --
4041: ROLLBACK TO Add_Worksheet_Line_Pvt ;
4042: p_return_status := FND_API.G_RET_STS_ERROR;
4043: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4038: --
4039: WHEN FND_API.G_EXC_ERROR THEN
4040: --
4041: ROLLBACK TO Add_Worksheet_Line_Pvt ;
4042: p_return_status := FND_API.G_RET_STS_ERROR;
4043: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4044: p_data => p_msg_data );
4045: --
4046: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4042: p_return_status := FND_API.G_RET_STS_ERROR;
4043: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4044: p_data => p_msg_data );
4045: --
4046: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4047: --
4048: ROLLBACK TO Add_Worksheet_Line_Pvt ;
4049: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4050: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4045: --
4046: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4047: --
4048: ROLLBACK TO Add_Worksheet_Line_Pvt ;
4049: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4050: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4051: p_data => p_msg_data );
4052: --
4053: WHEN OTHERS THEN
4052: --
4053: WHEN OTHERS THEN
4054: --
4055: ROLLBACK TO Add_Worksheet_Line_Pvt ;
4056: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4057: --
4058: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
4059: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
4060: l_api_name);
4075: --
4076: PROCEDURE Add_Line_To_Worksheets
4077: (
4078: p_api_version IN NUMBER ,
4079: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4080: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4081: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4082: p_return_status OUT NOCOPY VARCHAR2 ,
4083: p_msg_count OUT NOCOPY NUMBER ,
4076: PROCEDURE Add_Line_To_Worksheets
4077: (
4078: p_api_version IN NUMBER ,
4079: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4080: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4081: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4082: p_return_status OUT NOCOPY VARCHAR2 ,
4083: p_msg_count OUT NOCOPY NUMBER ,
4084: p_msg_data OUT NOCOPY VARCHAR2 ,
4077: (
4078: p_api_version IN NUMBER ,
4079: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4080: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4081: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4082: p_return_status OUT NOCOPY VARCHAR2 ,
4083: p_msg_count OUT NOCOPY NUMBER ,
4084: p_msg_data OUT NOCOPY VARCHAR2 ,
4085: --
4108: BEGIN
4109: --
4110: SAVEPOINT Add_Line_To_Worksheets_Pvt ;
4111: --
4112: IF NOT FND_API.Compatible_API_Call ( l_api_version,
4113: p_api_version,
4114: l_api_name,
4115: G_PKG_NAME )
4116: THEN
4113: p_api_version,
4114: l_api_name,
4115: G_PKG_NAME )
4116: THEN
4117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4118: END IF;
4119: --
4120:
4121: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4117: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4118: END IF;
4119: --
4120:
4121: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4122: FND_MSG_PUB.initialize ;
4123: END IF;
4124: --
4125: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4121: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4122: FND_MSG_PUB.initialize ;
4123: END IF;
4124: --
4125: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4126:
4127: OPEN l_ws_lines_csr ;
4128:
4129: FETCH l_ws_lines_csr INTO l_ws_lines_row_type ;
4132: --
4133: CLOSE l_ws_lines_csr ;
4134: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_ACCOUNT_LINE_ID') ;
4135: FND_MSG_PUB.Add;
4136: RAISE FND_API.G_EXC_ERROR ;
4137: END IF ;
4138:
4139: -- Process all the worksheets in the table.
4140: FOR i IN 1..p_worksheet_tbl.COUNT
4155: p_creation_date => g_current_date,
4156: p_return_status => l_return_status
4157: ) ;
4158: --
4159: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4160: RAISE FND_API.G_EXC_ERROR ;
4161: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4163: END IF;
4156: p_return_status => l_return_status
4157: ) ;
4158: --
4159: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4160: RAISE FND_API.G_EXC_ERROR ;
4161: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4163: END IF;
4164: --
4157: ) ;
4158: --
4159: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4160: RAISE FND_API.G_EXC_ERROR ;
4161: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4163: END IF;
4164: --
4165: END LOOP;
4158: --
4159: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4160: RAISE FND_API.G_EXC_ERROR ;
4161: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4162: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4163: END IF;
4164: --
4165: END LOOP;
4166:
4164: --
4165: END LOOP;
4166:
4167: --
4168: IF FND_API.To_Boolean ( p_commit ) THEN
4169: COMMIT WORK;
4170: END IF;
4171: --
4172: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4173: p_data => p_msg_data );
4174: --
4175: EXCEPTION
4176: --
4177: WHEN FND_API.G_EXC_ERROR THEN
4178: --
4179: ROLLBACK TO Add_Line_To_Worksheets_Pvt ;
4180: p_return_status := FND_API.G_RET_STS_ERROR;
4181: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4176: --
4177: WHEN FND_API.G_EXC_ERROR THEN
4178: --
4179: ROLLBACK TO Add_Line_To_Worksheets_Pvt ;
4180: p_return_status := FND_API.G_RET_STS_ERROR;
4181: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4182: p_data => p_msg_data );
4183: --
4184: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4180: p_return_status := FND_API.G_RET_STS_ERROR;
4181: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4182: p_data => p_msg_data );
4183: --
4184: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4185: --
4186: ROLLBACK TO Add_Line_To_Worksheets_Pvt ;
4187: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4188: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4183: --
4184: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4185: --
4186: ROLLBACK TO Add_Line_To_Worksheets_Pvt ;
4187: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4188: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4189: p_data => p_msg_data );
4190: --
4191: WHEN OTHERS THEN
4190: --
4191: WHEN OTHERS THEN
4192: --
4193: ROLLBACK TO Add_Line_To_Worksheets_Pvt ;
4194: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4195: --
4196: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
4197: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
4198: l_api_name);
4215: --
4216: PROCEDURE Add_Worksheet_Position_Line
4217: (
4218: p_api_version IN NUMBER ,
4219: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4220: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4221: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4222: p_return_status OUT NOCOPY VARCHAR2 ,
4223: p_msg_count OUT NOCOPY NUMBER ,
4216: PROCEDURE Add_Worksheet_Position_Line
4217: (
4218: p_api_version IN NUMBER ,
4219: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4220: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4221: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4222: p_return_status OUT NOCOPY VARCHAR2 ,
4223: p_msg_count OUT NOCOPY NUMBER ,
4224: p_msg_data OUT NOCOPY VARCHAR2 ,
4217: (
4218: p_api_version IN NUMBER ,
4219: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4220: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4221: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4222: p_return_status OUT NOCOPY VARCHAR2 ,
4223: p_msg_count OUT NOCOPY NUMBER ,
4224: p_msg_data OUT NOCOPY VARCHAR2 ,
4225: --
4224: p_msg_data OUT NOCOPY VARCHAR2 ,
4225: --
4226: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
4227: p_position_line_id IN psb_ws_position_lines.position_line_id%TYPE,
4228: p_add_in_current_worksheet IN VARCHAR2 := FND_API.G_FALSE
4229: )
4230: IS
4231: --
4232: l_api_name CONSTANT VARCHAR2(30) := 'Add_Worksheet_Position_Line' ;
4255: BEGIN
4256: --
4257: SAVEPOINT Add_Worksheet_Pos_Line_Pvt ;
4258: --
4259: IF NOT FND_API.Compatible_API_Call ( l_api_version,
4260: p_api_version,
4261: l_api_name,
4262: G_PKG_NAME )
4263: THEN
4260: p_api_version,
4261: l_api_name,
4262: G_PKG_NAME )
4263: THEN
4264: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4265: END IF;
4266: --
4267:
4268: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4264: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4265: END IF;
4266: --
4267:
4268: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4269: FND_MSG_PUB.initialize ;
4270: END IF;
4271: --
4272: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4268: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4269: FND_MSG_PUB.initialize ;
4270: END IF;
4271: --
4272: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4273:
4274: --
4275: -- Finding the account line information.
4276: --
4283: --
4284: CLOSE l_ws_lines_positions_csr ;
4285: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_POSITION_LINE_ID') ;
4286: FND_MSG_PUB.Add;
4287: RAISE FND_API.G_EXC_ERROR ;
4288: END IF ;
4289:
4290: l_current_worksheet_id := p_worksheet_id ;
4291:
4289:
4290: l_current_worksheet_id := p_worksheet_id ;
4291:
4292: -- Updating the current worksheet (the one which is passed).
4293: IF p_add_in_current_worksheet = FND_API.G_TRUE THEN
4294:
4295: --
4296: -- Add the new position line to the current worksheet. All we need to do
4297: -- is make an entry in the position matrix.
4298: --
4299: PSB_WS_Pos_Pvt.Create_Position_Matrix
4300: (
4301: p_api_version => 1.0 ,
4302: p_init_msg_list => FND_API.G_FALSE ,
4303: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4304: p_return_status => l_return_status ,
4305: p_msg_count => l_msg_count ,
4306: p_msg_data => l_msg_data ,
4299: PSB_WS_Pos_Pvt.Create_Position_Matrix
4300: (
4301: p_api_version => 1.0 ,
4302: p_init_msg_list => FND_API.G_FALSE ,
4303: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4304: p_return_status => l_return_status ,
4305: p_msg_count => l_msg_count ,
4306: p_msg_data => l_msg_data ,
4307: --
4310: p_freeze_flag => l_ws_lines_positions_row_type.freeze_flag ,
4311: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4312: ) ;
4313: --
4314: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4315: RAISE FND_API.G_EXC_ERROR ;
4316: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4317: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4318: END IF;
4311: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4312: ) ;
4313: --
4314: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4315: RAISE FND_API.G_EXC_ERROR ;
4316: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4317: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4318: END IF;
4319: --
4312: ) ;
4313: --
4314: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4315: RAISE FND_API.G_EXC_ERROR ;
4316: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4317: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4318: END IF;
4319: --
4320: END IF ;
4313: --
4314: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4315: RAISE FND_API.G_EXC_ERROR ;
4316: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4317: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4318: END IF;
4319: --
4320: END IF ;
4321:
4326: --
4327: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
4328: (
4329: p_api_version => 1.0 ,
4330: p_init_msg_list => FND_API.G_FALSE,
4331: p_commit => FND_API.G_FALSE,
4332: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4333: p_return_status => l_return_status,
4334: p_msg_count => l_msg_count,
4327: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
4328: (
4329: p_api_version => 1.0 ,
4330: p_init_msg_list => FND_API.G_FALSE,
4331: p_commit => FND_API.G_FALSE,
4332: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4333: p_return_status => l_return_status,
4334: p_msg_count => l_msg_count,
4335: p_msg_data => l_msg_data ,
4328: (
4329: p_api_version => 1.0 ,
4330: p_init_msg_list => FND_API.G_FALSE,
4331: p_commit => FND_API.G_FALSE,
4332: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4333: p_return_status => l_return_status,
4334: p_msg_count => l_msg_count,
4335: p_msg_data => l_msg_data ,
4336: --
4337: p_worksheet_id => l_current_worksheet_id ,
4338: p_worksheet_id_OUT => l_parent_worksheet_id
4339: ) ;
4340: --
4341: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4342: RAISE FND_API.G_EXC_ERROR ;
4343: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4345: ELSIF l_parent_worksheet_id = 0 THEN
4338: p_worksheet_id_OUT => l_parent_worksheet_id
4339: ) ;
4340: --
4341: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4342: RAISE FND_API.G_EXC_ERROR ;
4343: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4345: ELSIF l_parent_worksheet_id = 0 THEN
4346: -- It means all the top worksheets have been processed.
4339: ) ;
4340: --
4341: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4342: RAISE FND_API.G_EXC_ERROR ;
4343: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4345: ELSIF l_parent_worksheet_id = 0 THEN
4346: -- It means all the top worksheets have been processed.
4347: EXIT ;
4340: --
4341: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4342: RAISE FND_API.G_EXC_ERROR ;
4343: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4344: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4345: ELSIF l_parent_worksheet_id = 0 THEN
4346: -- It means all the top worksheets have been processed.
4347: EXIT ;
4348: END IF ;
4354: --
4355: PSB_WS_Pos_Pvt.Create_Position_Matrix
4356: (
4357: p_api_version => 1.0 ,
4358: p_init_msg_list => FND_API.G_FALSE ,
4359: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4360: p_return_status => l_return_status ,
4361: p_msg_count => l_msg_count ,
4362: p_msg_data => l_msg_data ,
4355: PSB_WS_Pos_Pvt.Create_Position_Matrix
4356: (
4357: p_api_version => 1.0 ,
4358: p_init_msg_list => FND_API.G_FALSE ,
4359: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4360: p_return_status => l_return_status ,
4361: p_msg_count => l_msg_count ,
4362: p_msg_data => l_msg_data ,
4363: --
4366: p_freeze_flag => l_ws_lines_positions_row_type.freeze_flag ,
4367: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4368: ) ;
4369: --
4370: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4371: RAISE FND_API.G_EXC_ERROR ;
4372: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4373: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4374: END IF;
4367: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4368: ) ;
4369: --
4370: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4371: RAISE FND_API.G_EXC_ERROR ;
4372: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4373: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4374: END IF;
4375: --
4368: ) ;
4369: --
4370: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4371: RAISE FND_API.G_EXC_ERROR ;
4372: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4373: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4374: END IF;
4375: --
4376: END LOOP;
4369: --
4370: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4371: RAISE FND_API.G_EXC_ERROR ;
4372: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4373: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4374: END IF;
4375: --
4376: END LOOP;
4377: --
4377: --
4378: CLOSE l_ws_lines_positions_csr ;
4379:
4380: --
4381: IF FND_API.To_Boolean ( p_commit ) THEN
4382: COMMIT WORK;
4383: END IF;
4384: --
4385: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4386: p_data => p_msg_data );
4387: --
4388: EXCEPTION
4389: --
4390: WHEN FND_API.G_EXC_ERROR THEN
4391: --
4392: ROLLBACK TO Add_Worksheet_Pos_Line_Pvt ;
4393: p_return_status := FND_API.G_RET_STS_ERROR;
4394: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4389: --
4390: WHEN FND_API.G_EXC_ERROR THEN
4391: --
4392: ROLLBACK TO Add_Worksheet_Pos_Line_Pvt ;
4393: p_return_status := FND_API.G_RET_STS_ERROR;
4394: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4395: p_data => p_msg_data );
4396: --
4397: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4393: p_return_status := FND_API.G_RET_STS_ERROR;
4394: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4395: p_data => p_msg_data );
4396: --
4397: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4398: --
4399: ROLLBACK TO Add_Worksheet_Pos_Line_Pvt ;
4400: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4401: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4396: --
4397: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4398: --
4399: ROLLBACK TO Add_Worksheet_Pos_Line_Pvt ;
4400: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4401: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4402: p_data => p_msg_data );
4403: --
4404: WHEN OTHERS THEN
4407: CLOSE l_ws_lines_positions_csr ;
4408: END IF ;
4409: --
4410: ROLLBACK TO Add_Worksheet_Pos_Line_Pvt ;
4411: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4412: --
4413: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
4414: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
4415: l_api_name);
4430: --
4431: PROCEDURE Add_Pos_Line_To_Worksheets
4432: (
4433: p_api_version IN NUMBER ,
4434: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4435: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4436: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4437: p_return_status OUT NOCOPY VARCHAR2 ,
4438: p_msg_count OUT NOCOPY NUMBER ,
4431: PROCEDURE Add_Pos_Line_To_Worksheets
4432: (
4433: p_api_version IN NUMBER ,
4434: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4435: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4436: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4437: p_return_status OUT NOCOPY VARCHAR2 ,
4438: p_msg_count OUT NOCOPY NUMBER ,
4439: p_msg_data OUT NOCOPY VARCHAR2 ,
4432: (
4433: p_api_version IN NUMBER ,
4434: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4435: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4436: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4437: p_return_status OUT NOCOPY VARCHAR2 ,
4438: p_msg_count OUT NOCOPY NUMBER ,
4439: p_msg_data OUT NOCOPY VARCHAR2 ,
4440: --
4463: BEGIN
4464: --
4465: SAVEPOINT Add_Pos_Line_To_Worksheets_Pvt ;
4466: --
4467: IF NOT FND_API.Compatible_API_Call ( l_api_version,
4468: p_api_version,
4469: l_api_name,
4470: G_PKG_NAME )
4471: THEN
4468: p_api_version,
4469: l_api_name,
4470: G_PKG_NAME )
4471: THEN
4472: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4473: END IF;
4474: --
4475:
4476: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4472: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4473: END IF;
4474: --
4475:
4476: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4477: FND_MSG_PUB.initialize ;
4478: END IF;
4479: --
4480: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4476: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4477: FND_MSG_PUB.initialize ;
4478: END IF;
4479: --
4480: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4481:
4482: OPEN l_ws_lines_positions_csr ;
4483:
4484: FETCH l_ws_lines_positions_csr INTO l_ws_lines_positions_row_type ;
4487: --
4488: CLOSE l_ws_lines_positions_csr ;
4489: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_POSITION_LINE_ID') ;
4490: FND_MSG_PUB.Add;
4491: RAISE FND_API.G_EXC_ERROR ;
4492: END IF ;
4493:
4494: -- Process all the worksheets in the table.
4495: FOR i IN 1..p_worksheet_tbl.COUNT
4499: --
4500: PSB_WS_Pos_Pvt.Create_Position_Matrix
4501: (
4502: p_api_version => 1.0 ,
4503: p_init_msg_list => FND_API.G_FALSE ,
4504: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4505: p_return_status => l_return_status ,
4506: p_msg_count => l_msg_count ,
4507: p_msg_data => l_msg_data ,
4500: PSB_WS_Pos_Pvt.Create_Position_Matrix
4501: (
4502: p_api_version => 1.0 ,
4503: p_init_msg_list => FND_API.G_FALSE ,
4504: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
4505: p_return_status => l_return_status ,
4506: p_msg_count => l_msg_count ,
4507: p_msg_data => l_msg_data ,
4508: --
4511: p_freeze_flag => l_ws_lines_positions_row_type.freeze_flag ,
4512: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4513: ) ;
4514: --
4515: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4516: RAISE FND_API.G_EXC_ERROR ;
4517: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4518: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4519: END IF;
4512: p_view_line_flag => l_ws_lines_positions_row_type.view_line_flag
4513: ) ;
4514: --
4515: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4516: RAISE FND_API.G_EXC_ERROR ;
4517: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4518: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4519: END IF;
4520: --
4513: ) ;
4514: --
4515: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4516: RAISE FND_API.G_EXC_ERROR ;
4517: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4518: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4519: END IF;
4520: --
4521: END LOOP;
4514: --
4515: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4516: RAISE FND_API.G_EXC_ERROR ;
4517: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4518: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4519: END IF;
4520: --
4521: END LOOP;
4522:
4520: --
4521: END LOOP;
4522:
4523: --
4524: IF FND_API.To_Boolean ( p_commit ) THEN
4525: COMMIT WORK;
4526: END IF;
4527: --
4528: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4529: p_data => p_msg_data );
4530: --
4531: EXCEPTION
4532: --
4533: WHEN FND_API.G_EXC_ERROR THEN
4534: --
4535: ROLLBACK TO Add_Pos_Line_To_Worksheets_Pvt ;
4536: p_return_status := FND_API.G_RET_STS_ERROR;
4537: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4532: --
4533: WHEN FND_API.G_EXC_ERROR THEN
4534: --
4535: ROLLBACK TO Add_Pos_Line_To_Worksheets_Pvt ;
4536: p_return_status := FND_API.G_RET_STS_ERROR;
4537: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4538: p_data => p_msg_data );
4539: --
4540: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4536: p_return_status := FND_API.G_RET_STS_ERROR;
4537: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4538: p_data => p_msg_data );
4539: --
4540: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4541: --
4542: ROLLBACK TO Add_Pos_Line_To_Worksheets_Pvt ;
4543: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4544: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4539: --
4540: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4541: --
4542: ROLLBACK TO Add_Pos_Line_To_Worksheets_Pvt ;
4543: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4544: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4545: p_data => p_msg_data );
4546: --
4547: WHEN OTHERS THEN
4546: --
4547: WHEN OTHERS THEN
4548: --
4549: ROLLBACK TO Add_Pos_Line_To_Worksheets_Pvt ;
4550: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4551: --
4552: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
4553: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
4554: l_api_name);
4569: --
4570: PROCEDURE Freeze_Worksheet
4571: (
4572: p_api_version IN NUMBER ,
4573: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4574: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4575: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4576: p_return_status OUT NOCOPY VARCHAR2 ,
4577: p_msg_count OUT NOCOPY NUMBER ,
4570: PROCEDURE Freeze_Worksheet
4571: (
4572: p_api_version IN NUMBER ,
4573: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4574: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4575: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4576: p_return_status OUT NOCOPY VARCHAR2 ,
4577: p_msg_count OUT NOCOPY NUMBER ,
4578: p_msg_data OUT NOCOPY VARCHAR2 ,
4571: (
4572: p_api_version IN NUMBER ,
4573: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4574: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4575: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4576: p_return_status OUT NOCOPY VARCHAR2 ,
4577: p_msg_count OUT NOCOPY NUMBER ,
4578: p_msg_data OUT NOCOPY VARCHAR2 ,
4579: --
4603: BEGIN
4604: --
4605: SAVEPOINT Freeze_Worksheet_Pvt ;
4606: --
4607: IF NOT FND_API.Compatible_API_Call ( l_api_version,
4608: p_api_version,
4609: l_api_name,
4610: G_PKG_NAME )
4611: THEN
4608: p_api_version,
4609: l_api_name,
4610: G_PKG_NAME )
4611: THEN
4612: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4613: END IF;
4614: --
4615:
4616: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4612: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4613: END IF;
4614: --
4615:
4616: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4617: FND_MSG_PUB.initialize ;
4618: END IF;
4619: --
4620: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4616: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4617: FND_MSG_PUB.initialize ;
4618: END IF;
4619: --
4620: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4621: --
4622: /* Bug 3664027 Start */
4623: -- A worksheet(other than local worksheet) can only be unfrozen
4624: -- if the parent worksheet is not frozen, if exists( p_freeze_flag = 'N'
4645: -- Find parent worksheet, if exists.
4646: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
4647: (
4648: p_api_version => 1.0 ,
4649: p_init_msg_list => FND_API.G_FALSE,
4650: p_commit => FND_API.G_FALSE,
4651: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4652: p_return_status => l_return_status,
4653: p_msg_count => l_msg_count,
4646: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
4647: (
4648: p_api_version => 1.0 ,
4649: p_init_msg_list => FND_API.G_FALSE,
4650: p_commit => FND_API.G_FALSE,
4651: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4652: p_return_status => l_return_status,
4653: p_msg_count => l_msg_count,
4654: p_msg_data => l_msg_data ,
4647: (
4648: p_api_version => 1.0 ,
4649: p_init_msg_list => FND_API.G_FALSE,
4650: p_commit => FND_API.G_FALSE,
4651: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4652: p_return_status => l_return_status,
4653: p_msg_count => l_msg_count,
4654: p_msg_data => l_msg_data ,
4655: --
4656: p_worksheet_id => p_worksheet_id ,
4657: p_worksheet_id_OUT => l_parent_worksheet_id
4658: ) ;
4659: --
4660: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4661: RAISE FND_API.G_EXC_ERROR ;
4662: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4663: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4664: END IF;
4657: p_worksheet_id_OUT => l_parent_worksheet_id
4658: ) ;
4659: --
4660: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4661: RAISE FND_API.G_EXC_ERROR ;
4662: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4663: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4664: END IF;
4665:
4658: ) ;
4659: --
4660: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4661: RAISE FND_API.G_EXC_ERROR ;
4662: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4663: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4664: END IF;
4665:
4666: -- Check the freeze_flag for the parent worksheet.
4659: --
4660: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4661: RAISE FND_API.G_EXC_ERROR ;
4662: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4663: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4664: END IF;
4665:
4666: -- Check the freeze_flag for the parent worksheet.
4667: IF l_parent_worksheet_id <> 0 THEN
4673: IF l_parent_freeze_flag = 'Y' THEN
4674:
4675: Fnd_Message.Set_Name('PSB','PSB_CANNOT_UNFREEZE_WORKSHEET') ;
4676: FND_MSG_PUB.Add;
4677: RAISE FND_API.G_EXC_ERROR ;
4678:
4679: END IF ;
4680:
4681: END IF ;
4702:
4703: PSB_Worksheet_Pvt.Update_Worksheet
4704: (
4705: p_api_version => 1.0 ,
4706: p_init_msg_list => FND_API.G_FALSE,
4707: p_commit => FND_API.G_FALSE,
4708: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4709: p_return_status => l_return_status,
4710: p_msg_count => l_msg_count,
4703: PSB_Worksheet_Pvt.Update_Worksheet
4704: (
4705: p_api_version => 1.0 ,
4706: p_init_msg_list => FND_API.G_FALSE,
4707: p_commit => FND_API.G_FALSE,
4708: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4709: p_return_status => l_return_status,
4710: p_msg_count => l_msg_count,
4711: p_msg_data => l_msg_data ,
4704: (
4705: p_api_version => 1.0 ,
4706: p_init_msg_list => FND_API.G_FALSE,
4707: p_commit => FND_API.G_FALSE,
4708: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4709: p_return_status => l_return_status,
4710: p_msg_count => l_msg_count,
4711: p_msg_data => l_msg_data ,
4712: --
4717: p_gl_cutoff_period => l_gl_cutoff_period
4718: -- bug end 3970347
4719: );
4720: --
4721: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4722: RAISE FND_API.G_EXC_ERROR ;
4723: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4724: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4725: END IF;
4718: -- bug end 3970347
4719: );
4720: --
4721: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4722: RAISE FND_API.G_EXC_ERROR ;
4723: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4724: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4725: END IF;
4726: --
4719: );
4720: --
4721: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4722: RAISE FND_API.G_EXC_ERROR ;
4723: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4724: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4725: END IF;
4726: --
4727:
4720: --
4721: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4722: RAISE FND_API.G_EXC_ERROR ;
4723: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4724: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4725: END IF;
4726: --
4727:
4728:
4747: WHERE worksheet_id = p_worksheet_id;
4748: --
4749: END IF;
4750:
4751: IF FND_API.To_Boolean ( p_commit ) THEN
4752: COMMIT WORK;
4753: END IF;
4754: --
4755: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4756: p_data => p_msg_data );
4757: --
4758: EXCEPTION
4759: --
4760: WHEN FND_API.G_EXC_ERROR THEN
4761: --
4762: ROLLBACK TO Freeze_Worksheet_Pvt ;
4763: p_return_status := FND_API.G_RET_STS_ERROR;
4764: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4759: --
4760: WHEN FND_API.G_EXC_ERROR THEN
4761: --
4762: ROLLBACK TO Freeze_Worksheet_Pvt ;
4763: p_return_status := FND_API.G_RET_STS_ERROR;
4764: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4765: p_data => p_msg_data );
4766: --
4767: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4763: p_return_status := FND_API.G_RET_STS_ERROR;
4764: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4765: p_data => p_msg_data );
4766: --
4767: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4768: --
4769: ROLLBACK TO Freeze_Worksheet_Pvt ;
4770: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4771: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4766: --
4767: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
4768: --
4769: ROLLBACK TO Freeze_Worksheet_Pvt ;
4770: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4771: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
4772: p_data => p_msg_data );
4773: --
4774: WHEN OTHERS THEN
4773: --
4774: WHEN OTHERS THEN
4775: --
4776: ROLLBACK TO Freeze_Worksheet_Pvt ;
4777: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4778: --
4779: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
4780: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
4781: l_api_name);
4796: --
4797: PROCEDURE Change_Worksheet_Stage
4798: (
4799: p_api_version IN NUMBER ,
4800: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4801: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4802: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4803: p_return_status OUT NOCOPY VARCHAR2 ,
4804: p_msg_count OUT NOCOPY NUMBER ,
4797: PROCEDURE Change_Worksheet_Stage
4798: (
4799: p_api_version IN NUMBER ,
4800: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4801: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4802: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4803: p_return_status OUT NOCOPY VARCHAR2 ,
4804: p_msg_count OUT NOCOPY NUMBER ,
4805: p_msg_data OUT NOCOPY VARCHAR2 ,
4798: (
4799: p_api_version IN NUMBER ,
4800: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
4801: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
4802: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
4803: p_return_status OUT NOCOPY VARCHAR2 ,
4804: p_msg_count OUT NOCOPY NUMBER ,
4805: p_msg_data OUT NOCOPY VARCHAR2 ,
4806: --
4805: p_msg_data OUT NOCOPY VARCHAR2 ,
4806: --
4807: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
4808: p_stage_seq IN psb_worksheets.current_stage_seq%TYPE
4809: := FND_API.G_MISS_NUM ,
4810: p_operation_id IN NUMBER := FND_API.G_MISS_NUM
4811: )
4812: IS
4813: --
4806: --
4807: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
4808: p_stage_seq IN psb_worksheets.current_stage_seq%TYPE
4809: := FND_API.G_MISS_NUM ,
4810: p_operation_id IN NUMBER := FND_API.G_MISS_NUM
4811: )
4812: IS
4813: --
4814: l_api_name CONSTANT VARCHAR2(30) := 'Change_Worksheet_Stage' ;
4833: BEGIN
4834: --
4835: SAVEPOINT Change_Worksheet_Stage_Pvt ;
4836: --
4837: IF NOT FND_API.Compatible_API_Call ( l_api_version,
4838: p_api_version,
4839: l_api_name,
4840: G_PKG_NAME )
4841: THEN
4838: p_api_version,
4839: l_api_name,
4840: G_PKG_NAME )
4841: THEN
4842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4843: END IF;
4844: --
4845: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4846: FND_MSG_PUB.initialize ;
4841: THEN
4842: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4843: END IF;
4844: --
4845: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4846: FND_MSG_PUB.initialize ;
4847: END IF;
4848: --
4849: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4845: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
4846: FND_MSG_PUB.initialize ;
4847: END IF;
4848: --
4849: p_return_status := FND_API.G_RET_STS_SUCCESS ;
4850: --
4851:
4852: -- Get position budgeting flag.
4853:
4862: /* bug end 3970347 */
4863: FROM psb_worksheets
4864: WHERE worksheet_id = p_worksheet_id ;
4865:
4866: IF ( p_stage_seq = FND_API.G_MISS_NUM ) OR ( p_stage_seq IS NULL) THEN
4867:
4868: --
4869: -- Find next stage_id for the worksheet.
4870: --
4913:
4914: PSB_Worksheet_Pvt.Update_Worksheet
4915: (
4916: p_api_version => 1.0 ,
4917: p_init_msg_list => FND_API.G_FALSE,
4918: p_commit => FND_API.G_FALSE,
4919: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4920: p_return_status => l_return_status,
4921: p_msg_count => l_msg_count,
4914: PSB_Worksheet_Pvt.Update_Worksheet
4915: (
4916: p_api_version => 1.0 ,
4917: p_init_msg_list => FND_API.G_FALSE,
4918: p_commit => FND_API.G_FALSE,
4919: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4920: p_return_status => l_return_status,
4921: p_msg_count => l_msg_count,
4922: p_msg_data => l_msg_data,
4915: (
4916: p_api_version => 1.0 ,
4917: p_init_msg_list => FND_API.G_FALSE,
4918: p_commit => FND_API.G_FALSE,
4919: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
4920: p_return_status => l_return_status,
4921: p_msg_count => l_msg_count,
4922: p_msg_data => l_msg_data,
4923: --
4927: p_gl_cutoff_period => l_gl_cutoff_period
4928: -- bug end 3970347
4929: ) ;
4930: --
4931: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4932: RAISE FND_API.G_EXC_ERROR ;
4933: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4934: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4935: END IF;
4928: -- bug end 3970347
4929: ) ;
4930: --
4931: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4932: RAISE FND_API.G_EXC_ERROR ;
4933: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4934: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4935: END IF;
4936:
4929: ) ;
4930: --
4931: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4932: RAISE FND_API.G_EXC_ERROR ;
4933: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4934: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4935: END IF;
4936:
4937: --
4930: --
4931: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
4932: RAISE FND_API.G_EXC_ERROR ;
4933: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
4934: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
4935: END IF;
4936:
4937: --
4938: -- Check whether service packages were selected for the worksheet.
5056: --
5057: END IF ;
5058:
5059: --
5060: IF FND_API.To_Boolean ( p_commit ) THEN
5061: COMMIT WORK;
5062: END IF;
5063: --
5064: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5065: p_data => p_msg_data );
5066: --
5067: EXCEPTION
5068: --
5069: WHEN FND_API.G_EXC_ERROR THEN
5070: --
5071: ROLLBACK TO Change_Worksheet_Stage_Pvt ;
5072: p_return_status := FND_API.G_RET_STS_ERROR;
5073: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5068: --
5069: WHEN FND_API.G_EXC_ERROR THEN
5070: --
5071: ROLLBACK TO Change_Worksheet_Stage_Pvt ;
5072: p_return_status := FND_API.G_RET_STS_ERROR;
5073: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5074: p_data => p_msg_data );
5075: --
5076: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5072: p_return_status := FND_API.G_RET_STS_ERROR;
5073: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5074: p_data => p_msg_data );
5075: --
5076: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5077: --
5078: ROLLBACK TO Change_Worksheet_Stage_Pvt ;
5079: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5080: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5075: --
5076: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5077: --
5078: ROLLBACK TO Change_Worksheet_Stage_Pvt ;
5079: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5080: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5081: p_data => p_msg_data );
5082: --
5083: WHEN OTHERS THEN
5082: --
5083: WHEN OTHERS THEN
5084: --
5085: ROLLBACK TO Change_Worksheet_Stage_Pvt ;
5086: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5087: --
5088: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
5089: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
5090: l_api_name);
5105: --
5106: PROCEDURE Find_Parent_Worksheet
5107: (
5108: p_api_version IN NUMBER ,
5109: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5110: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5111: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5112: p_return_status OUT NOCOPY VARCHAR2 ,
5113: p_msg_count OUT NOCOPY NUMBER ,
5106: PROCEDURE Find_Parent_Worksheet
5107: (
5108: p_api_version IN NUMBER ,
5109: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5110: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5111: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5112: p_return_status OUT NOCOPY VARCHAR2 ,
5113: p_msg_count OUT NOCOPY NUMBER ,
5114: p_msg_data OUT NOCOPY VARCHAR2 ,
5107: (
5108: p_api_version IN NUMBER ,
5109: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5110: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5111: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5112: p_return_status OUT NOCOPY VARCHAR2 ,
5113: p_msg_count OUT NOCOPY NUMBER ,
5114: p_msg_data OUT NOCOPY VARCHAR2 ,
5115: --
5134: BEGIN
5135: --
5136: SAVEPOINT Find_Parent_Worksheet_Pvt ;
5137: --
5138: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5139: p_api_version,
5140: l_api_name,
5141: G_PKG_NAME )
5142: THEN
5139: p_api_version,
5140: l_api_name,
5141: G_PKG_NAME )
5142: THEN
5143: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5144: END IF;
5145: --
5146:
5147: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5143: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5144: END IF;
5145: --
5146:
5147: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5148: FND_MSG_PUB.initialize ;
5149: END IF;
5150: --
5151: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5147: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5148: FND_MSG_PUB.initialize ;
5149: END IF;
5150: --
5151: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5152: p_worksheet_id_OUT := -99 ;
5153: --
5154:
5155: --
5229: --
5230: EXCEPTION
5231: WHEN no_data_found THEN
5232: --
5233: -- Cannot use FND_API.G_MISS_NUM as worksheet_id is NUMBER(20) only.
5234: --
5235: p_worksheet_id_OUT := 0 ;
5236: --
5237: END ;
5236: --
5237: END ;
5238:
5239: --
5240: IF FND_API.To_Boolean ( p_commit ) THEN
5241: COMMIT WORK;
5242: END IF;
5243: --
5244: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5245: p_data => p_msg_data );
5246: --
5247: EXCEPTION
5248: --
5249: WHEN FND_API.G_EXC_ERROR THEN
5250: --
5251: ROLLBACK TO Find_Parent_Worksheet_Pvt ;
5252: p_return_status := FND_API.G_RET_STS_ERROR;
5253: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5248: --
5249: WHEN FND_API.G_EXC_ERROR THEN
5250: --
5251: ROLLBACK TO Find_Parent_Worksheet_Pvt ;
5252: p_return_status := FND_API.G_RET_STS_ERROR;
5253: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5254: p_data => p_msg_data );
5255: --
5256: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5252: p_return_status := FND_API.G_RET_STS_ERROR;
5253: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5254: p_data => p_msg_data );
5255: --
5256: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5257: --
5258: ROLLBACK TO Find_Parent_Worksheet_Pvt ;
5259: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5260: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5255: --
5256: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5257: --
5258: ROLLBACK TO Find_Parent_Worksheet_Pvt ;
5259: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5260: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5261: p_data => p_msg_data );
5262: --
5263: WHEN OTHERS THEN
5262: --
5263: WHEN OTHERS THEN
5264: --
5265: ROLLBACK TO Find_Parent_Worksheet_Pvt ;
5266: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5267: --
5268: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
5269: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
5270: l_api_name);
5285: --
5286: PROCEDURE Find_Parent_Worksheets
5287: (
5288: p_api_version IN NUMBER ,
5289: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5290: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5291: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5292: p_return_status OUT NOCOPY VARCHAR2 ,
5293: p_msg_count OUT NOCOPY NUMBER ,
5286: PROCEDURE Find_Parent_Worksheets
5287: (
5288: p_api_version IN NUMBER ,
5289: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5290: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5291: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5292: p_return_status OUT NOCOPY VARCHAR2 ,
5293: p_msg_count OUT NOCOPY NUMBER ,
5294: p_msg_data OUT NOCOPY VARCHAR2 ,
5287: (
5288: p_api_version IN NUMBER ,
5289: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5290: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5291: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5292: p_return_status OUT NOCOPY VARCHAR2 ,
5293: p_msg_count OUT NOCOPY NUMBER ,
5294: p_msg_data OUT NOCOPY VARCHAR2 ,
5295: --
5312: BEGIN
5313: --
5314: SAVEPOINT Find_Parent_Worksheets_Pvt ;
5315: --
5316: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5317: p_api_version,
5318: l_api_name,
5319: G_PKG_NAME )
5320: THEN
5317: p_api_version,
5318: l_api_name,
5319: G_PKG_NAME )
5320: THEN
5321: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5322: END IF;
5323: --
5324:
5325: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5321: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5322: END IF;
5323: --
5324:
5325: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5326: FND_MSG_PUB.initialize ;
5327: END IF;
5328: --
5329: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5325: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5326: FND_MSG_PUB.initialize ;
5327: END IF;
5328: --
5329: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5330: --
5331:
5332: --
5333: -- Perform initialization
5342: --
5343: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
5344: (
5345: p_api_version => 1.0 ,
5346: p_init_msg_list => FND_API.G_FALSE,
5347: p_commit => FND_API.G_FALSE,
5348: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
5349: p_return_status => l_return_status,
5350: p_msg_count => l_msg_count,
5343: PSB_WS_Ops_Pvt.Find_Parent_Worksheet
5344: (
5345: p_api_version => 1.0 ,
5346: p_init_msg_list => FND_API.G_FALSE,
5347: p_commit => FND_API.G_FALSE,
5348: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
5349: p_return_status => l_return_status,
5350: p_msg_count => l_msg_count,
5351: p_msg_data => l_msg_data,
5344: (
5345: p_api_version => 1.0 ,
5346: p_init_msg_list => FND_API.G_FALSE,
5347: p_commit => FND_API.G_FALSE,
5348: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
5349: p_return_status => l_return_status,
5350: p_msg_count => l_msg_count,
5351: p_msg_data => l_msg_data,
5352: --
5353: p_worksheet_id => l_current_worksheet_id ,
5354: p_worksheet_id_OUT => l_parent_worksheet_id
5355: );
5356: --
5357: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5358: RAISE FND_API.G_EXC_ERROR ;
5359: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5360: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5361: END IF;
5354: p_worksheet_id_OUT => l_parent_worksheet_id
5355: );
5356: --
5357: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5358: RAISE FND_API.G_EXC_ERROR ;
5359: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5360: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5361: END IF;
5362: --
5355: );
5356: --
5357: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5358: RAISE FND_API.G_EXC_ERROR ;
5359: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5360: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5361: END IF;
5362: --
5363: IF l_parent_worksheet_id = 0 THEN
5356: --
5357: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5358: RAISE FND_API.G_EXC_ERROR ;
5359: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5360: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5361: END IF;
5362: --
5363: IF l_parent_worksheet_id = 0 THEN
5364:
5376: --
5377: END LOOP ;
5378:
5379: --
5380: IF FND_API.To_Boolean ( p_commit ) THEN
5381: COMMIT WORK;
5382: END IF;
5383: --
5384: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5385: p_data => p_msg_data );
5386: --
5387: EXCEPTION
5388: --
5389: WHEN FND_API.G_EXC_ERROR THEN
5390: --
5391: ROLLBACK TO Find_Parent_Worksheets_Pvt ;
5392: p_return_status := FND_API.G_RET_STS_ERROR;
5393: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5388: --
5389: WHEN FND_API.G_EXC_ERROR THEN
5390: --
5391: ROLLBACK TO Find_Parent_Worksheets_Pvt ;
5392: p_return_status := FND_API.G_RET_STS_ERROR;
5393: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5394: p_data => p_msg_data );
5395: --
5396: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5392: p_return_status := FND_API.G_RET_STS_ERROR;
5393: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5394: p_data => p_msg_data );
5395: --
5396: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5397: --
5398: ROLLBACK TO Find_Parent_Worksheets_Pvt ;
5399: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5400: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5395: --
5396: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5397: --
5398: ROLLBACK TO Find_Parent_Worksheets_Pvt ;
5399: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5400: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5401: p_data => p_msg_data );
5402: --
5403: WHEN OTHERS THEN
5402: --
5403: WHEN OTHERS THEN
5404: --
5405: ROLLBACK TO Find_Parent_Worksheets_Pvt ;
5406: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5407: --
5408: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
5409: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
5410: l_api_name);
5425: --
5426: PROCEDURE Find_Child_Worksheets
5427: (
5428: p_api_version IN NUMBER ,
5429: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5430: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5431: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5432: p_return_status OUT NOCOPY VARCHAR2 ,
5433: p_msg_count OUT NOCOPY NUMBER ,
5426: PROCEDURE Find_Child_Worksheets
5427: (
5428: p_api_version IN NUMBER ,
5429: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5430: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5431: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5432: p_return_status OUT NOCOPY VARCHAR2 ,
5433: p_msg_count OUT NOCOPY NUMBER ,
5434: p_msg_data OUT NOCOPY VARCHAR2 ,
5427: (
5428: p_api_version IN NUMBER ,
5429: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5430: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5431: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5432: p_return_status OUT NOCOPY VARCHAR2 ,
5433: p_msg_count OUT NOCOPY NUMBER ,
5434: p_msg_data OUT NOCOPY VARCHAR2 ,
5435: --
5455: BEGIN
5456: --
5457: SAVEPOINT Find_Child_Worksheets_Pvt ;
5458: --
5459: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5460: p_api_version,
5461: l_api_name,
5462: G_PKG_NAME )
5463: THEN
5460: p_api_version,
5461: l_api_name,
5462: G_PKG_NAME )
5463: THEN
5464: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5465: END IF;
5466: --
5467:
5468: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5464: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5465: END IF;
5466: --
5467:
5468: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5469: FND_MSG_PUB.initialize ;
5470: END IF;
5471: --
5472: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5468: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5469: FND_MSG_PUB.initialize ;
5470: END IF;
5471: --
5472: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5473: --
5474:
5475: --
5476: -- Perform initialization
5510: p_return_status => l_return_status ,
5511: p_budget_calendar_id => l_budget_calendar_id
5512: );
5513: --
5514: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5515: RAISE FND_API.G_EXC_ERROR ;
5516: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5518: END IF;
5511: p_budget_calendar_id => l_budget_calendar_id
5512: );
5513: --
5514: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5515: RAISE FND_API.G_EXC_ERROR ;
5516: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5518: END IF;
5519: --
5512: );
5513: --
5514: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5515: RAISE FND_API.G_EXC_ERROR ;
5516: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5518: END IF;
5519: --
5520: END IF ;
5513: --
5514: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5515: RAISE FND_API.G_EXC_ERROR ;
5516: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5517: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5518: END IF;
5519: --
5520: END IF ;
5521:
5596:
5597: END LOOP ;
5598:
5599: --
5600: IF FND_API.To_Boolean ( p_commit ) THEN
5601: COMMIT WORK;
5602: END IF;
5603: --
5604: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5605: p_data => p_msg_data );
5606: --
5607: EXCEPTION
5608: --
5609: WHEN FND_API.G_EXC_ERROR THEN
5610: --
5611: ROLLBACK TO Find_Child_Worksheets_Pvt ;
5612: p_return_status := FND_API.G_RET_STS_ERROR;
5613: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5608: --
5609: WHEN FND_API.G_EXC_ERROR THEN
5610: --
5611: ROLLBACK TO Find_Child_Worksheets_Pvt ;
5612: p_return_status := FND_API.G_RET_STS_ERROR;
5613: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5614: p_data => p_msg_data );
5615: --
5616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5612: p_return_status := FND_API.G_RET_STS_ERROR;
5613: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5614: p_data => p_msg_data );
5615: --
5616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5617: --
5618: ROLLBACK TO Find_Child_Worksheets_Pvt ;
5619: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5620: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5615: --
5616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
5617: --
5618: ROLLBACK TO Find_Child_Worksheets_Pvt ;
5619: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5620: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
5621: p_data => p_msg_data );
5622: --
5623: WHEN OTHERS THEN
5622: --
5623: WHEN OTHERS THEN
5624: --
5625: ROLLBACK TO Find_Child_Worksheets_Pvt ;
5626: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
5627: --
5628: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
5629: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
5630: l_api_name);
5648: --
5649: PROCEDURE Update_Worksheet
5650: (
5651: p_api_version IN NUMBER ,
5652: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5653: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5654: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5655: p_return_status OUT NOCOPY VARCHAR2 ,
5656: p_msg_count OUT NOCOPY NUMBER ,
5649: PROCEDURE Update_Worksheet
5650: (
5651: p_api_version IN NUMBER ,
5652: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5653: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5654: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5655: p_return_status OUT NOCOPY VARCHAR2 ,
5656: p_msg_count OUT NOCOPY NUMBER ,
5657: p_msg_data OUT NOCOPY VARCHAR2 ,
5650: (
5651: p_api_version IN NUMBER ,
5652: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
5653: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
5654: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
5655: p_return_status OUT NOCOPY VARCHAR2 ,
5656: p_msg_count OUT NOCOPY NUMBER ,
5657: p_msg_data OUT NOCOPY VARCHAR2 ,
5658: --
5688: BEGIN
5689: --
5690: SAVEPOINT Update_Worksheet_Pvt ;
5691: --
5692: IF NOT FND_API.Compatible_API_Call ( l_api_version,
5693: p_api_version,
5694: l_api_name,
5695: G_PKG_NAME )
5696: THEN
5693: p_api_version,
5694: l_api_name,
5695: G_PKG_NAME )
5696: THEN
5697: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5698: END IF;
5699: --
5700:
5701: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5697: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5698: END IF;
5699: --
5700:
5701: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5702: FND_MSG_PUB.initialize ;
5703: END IF;
5704: --
5705: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5701: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
5702: FND_MSG_PUB.initialize ;
5703: END IF;
5704: --
5705: p_return_status := FND_API.G_RET_STS_SUCCESS ;
5706: --
5707:
5708: --
5709: -- Find the source worksheet information.
5741: --
5742: PSB_Worksheet_Pvt.Update_Worksheet
5743: (
5744: p_api_version => 1.0 ,
5745: p_init_msg_list => FND_API.G_FALSE,
5746: p_commit => FND_API.G_FALSE,
5747: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
5748: p_return_status => l_return_status,
5749: p_msg_count => l_msg_count,
5742: PSB_Worksheet_Pvt.Update_Worksheet
5743: (
5744: p_api_version => 1.0 ,
5745: p_init_msg_list => FND_API.G_FALSE,
5746: p_commit => FND_API.G_FALSE,
5747: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
5748: p_return_status => l_return_status,
5749: p_msg_count => l_msg_count,
5750: p_msg_data => l_msg_data ,
5743: (
5744: p_api_version => 1.0 ,
5745: p_init_msg_list => FND_API.G_FALSE,
5746: p_commit => FND_API.G_FALSE,
5747: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
5748: p_return_status => l_return_status,
5749: p_msg_count => l_msg_count,
5750: p_msg_data => l_msg_data ,
5751: --
5754: p_date_submitted => NULL ,
5755: p_submitted_by => NULL
5756: );
5757: --
5758: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5759: RAISE FND_API.G_EXC_ERROR ;
5760: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5761: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5762: END IF;
5755: p_submitted_by => NULL
5756: );
5757: --
5758: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5759: RAISE FND_API.G_EXC_ERROR ;
5760: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5761: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5762: END IF;
5763:
5756: );
5757: --
5758: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5759: RAISE FND_API.G_EXC_ERROR ;
5760: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5761: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5762: END IF;
5763:
5764: /* Bug No 2378285 End */
5757: --
5758: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5759: RAISE FND_API.G_EXC_ERROR ;
5760: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5761: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5762: END IF;
5763:
5764: /* Bug No 2378285 End */
5765:
5787: )
5788: THEN
5789: Fnd_Message.Set_Name ('PSB', 'PSB_INCOMPATIBLE_WORKSHEETS') ;
5790: FND_MSG_PUB.Add;
5791: RAISE FND_API.G_EXC_ERROR ;
5792: END IF ;
5793:
5794: --
5795: -- Get budget calendar for the global worksheet.
5810: p_return_status => l_return_status ,
5811: p_budget_calendar_id => l_budget_calendar_id
5812: );
5813: --
5814: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5815: RAISE FND_API.G_EXC_ERROR ;
5816: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5817: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5818: END IF;
5811: p_budget_calendar_id => l_budget_calendar_id
5812: );
5813: --
5814: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5815: RAISE FND_API.G_EXC_ERROR ;
5816: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5817: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5818: END IF;
5819: --
5812: );
5813: --
5814: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5815: RAISE FND_API.G_EXC_ERROR ;
5816: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5817: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5818: END IF;
5819: --
5820: END IF ;
5813: --
5814: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5815: RAISE FND_API.G_EXC_ERROR ;
5816: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5817: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5818: END IF;
5819: --
5820: END IF ;
5821:
5887: p_creation_date => g_current_date,
5888: p_return_status => l_return_status
5889: ) ;
5890: --
5891: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5892: RAISE FND_API.G_EXC_ERROR ;
5893: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5895: END IF;
5888: p_return_status => l_return_status
5889: ) ;
5890: --
5891: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5892: RAISE FND_API.G_EXC_ERROR ;
5893: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5895: END IF;
5896: --
5889: ) ;
5890: --
5891: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5892: RAISE FND_API.G_EXC_ERROR ;
5893: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5895: END IF;
5896: --
5897: END LOOP ;
5890: --
5891: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5892: RAISE FND_API.G_EXC_ERROR ;
5893: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5894: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5895: END IF;
5896: --
5897: END LOOP ;
5898:
5968: --
5969: PSB_WS_Pos_Pvt.Create_Position_Matrix
5970: (
5971: p_api_version => 1.0 ,
5972: p_init_msg_list => FND_API.G_FALSE ,
5973: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
5974: p_return_status => l_return_status ,
5975: p_msg_count => l_msg_count ,
5976: p_msg_data => l_msg_data ,
5969: PSB_WS_Pos_Pvt.Create_Position_Matrix
5970: (
5971: p_api_version => 1.0 ,
5972: p_init_msg_list => FND_API.G_FALSE ,
5973: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
5974: p_return_status => l_return_status ,
5975: p_msg_count => l_msg_count ,
5976: p_msg_data => l_msg_data ,
5977: --
5980: p_freeze_flag => l_ws_lines_positions_rec.freeze_flag ,
5981: p_view_line_flag => l_ws_lines_positions_rec.view_line_flag
5982: ) ;
5983: --
5984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5985: RAISE FND_API.G_EXC_ERROR ;
5986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5988: END IF;
5981: p_view_line_flag => l_ws_lines_positions_rec.view_line_flag
5982: ) ;
5983: --
5984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5985: RAISE FND_API.G_EXC_ERROR ;
5986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5988: END IF;
5989: --
5982: ) ;
5983: --
5984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5985: RAISE FND_API.G_EXC_ERROR ;
5986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5988: END IF;
5989: --
5990: END LOOP ;
5983: --
5984: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
5985: RAISE FND_API.G_EXC_ERROR ;
5986: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
5987: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
5988: END IF;
5989: --
5990: END LOOP ;
5991:
5991:
5992: END IF ;
5993:
5994: --
5995: IF FND_API.To_Boolean ( p_commit ) THEN
5996: COMMIT WORK;
5997: END IF;
5998: --
5999: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6000: p_data => p_msg_data );
6001: --
6002: EXCEPTION
6003: --
6004: WHEN FND_API.G_EXC_ERROR THEN
6005: --
6006: ROLLBACK TO Update_Worksheet_Pvt ;
6007: p_return_status := FND_API.G_RET_STS_ERROR;
6008: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6003: --
6004: WHEN FND_API.G_EXC_ERROR THEN
6005: --
6006: ROLLBACK TO Update_Worksheet_Pvt ;
6007: p_return_status := FND_API.G_RET_STS_ERROR;
6008: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6009: p_data => p_msg_data );
6010: --
6011: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6007: p_return_status := FND_API.G_RET_STS_ERROR;
6008: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6009: p_data => p_msg_data );
6010: --
6011: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6012: --
6013: ROLLBACK TO Update_Worksheet_Pvt ;
6014: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6015: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6010: --
6011: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6012: --
6013: ROLLBACK TO Update_Worksheet_Pvt ;
6014: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6015: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6016: p_data => p_msg_data );
6017: --
6018: WHEN OTHERS THEN
6017: --
6018: WHEN OTHERS THEN
6019: --
6020: ROLLBACK TO Update_Worksheet_Pvt ;
6021: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6022: --
6023:
6024: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
6025: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
6061: BEGIN
6062:
6063: SAVEPOINT Create_Local_Dist_Pvt ;
6064:
6065: p_return_status := FND_API.G_RET_STS_SUCCESS ;
6066:
6067: FOR l_accts_rec IN
6068: (
6069: SELECT *
6141: --
6142: PSB_WS_Acct_Pvt.Create_Account_Dist
6143: (
6144: p_api_version => 1.0 ,
6145: p_init_msg_list => FND_API.G_FALSE,
6146: p_commit => FND_API.G_FALSE,
6147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6148: p_return_status => l_return_status,
6149: p_account_line_id => l_dummy_account_line_id,
6142: PSB_WS_Acct_Pvt.Create_Account_Dist
6143: (
6144: p_api_version => 1.0 ,
6145: p_init_msg_list => FND_API.G_FALSE,
6146: p_commit => FND_API.G_FALSE,
6147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6148: p_return_status => l_return_status,
6149: p_account_line_id => l_dummy_account_line_id,
6150: p_msg_count => l_msg_count,
6143: (
6144: p_api_version => 1.0 ,
6145: p_init_msg_list => FND_API.G_FALSE,
6146: p_commit => FND_API.G_FALSE,
6147: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6148: p_return_status => l_return_status,
6149: p_account_line_id => l_dummy_account_line_id,
6150: p_msg_count => l_msg_count,
6151: p_msg_data => l_msg_data,
6154: p_budget_year_id => l_accts_rec.budget_year_id,
6155: p_budget_group_id => l_accts_rec.budget_group_id,
6156: p_ccid => l_accts_rec.code_combination_id,
6157: p_template_id => NVL(l_accts_rec.template_id ,
6158: FND_API.G_MISS_NUM ) ,
6159: p_currency_code => l_accts_rec.currency_code ,
6160: p_balance_type => l_accts_rec.balance_type ,
6161: p_ytd_amount => l_accts_rec.ytd_amount ,
6162: p_distribute_flag => FND_API.G_FALSE ,
6158: FND_API.G_MISS_NUM ) ,
6159: p_currency_code => l_accts_rec.currency_code ,
6160: p_balance_type => l_accts_rec.balance_type ,
6161: p_ytd_amount => l_accts_rec.ytd_amount ,
6162: p_distribute_flag => FND_API.G_FALSE ,
6163: p_annual_fte => NVL ( l_accts_rec.annual_fte,
6164: FND_API.G_MISS_NUM ) ,
6165: p_period_amount => l_period_amount_tbl ,
6166: p_position_line_id => NVL( p_new_position_line_id ,
6160: p_balance_type => l_accts_rec.balance_type ,
6161: p_ytd_amount => l_accts_rec.ytd_amount ,
6162: p_distribute_flag => FND_API.G_FALSE ,
6163: p_annual_fte => NVL ( l_accts_rec.annual_fte,
6164: FND_API.G_MISS_NUM ) ,
6165: p_period_amount => l_period_amount_tbl ,
6166: p_position_line_id => NVL( p_new_position_line_id ,
6167: FND_API.G_MISS_NUM ) ,
6168: p_element_set_id => NVL( l_accts_rec.element_set_id,
6163: p_annual_fte => NVL ( l_accts_rec.annual_fte,
6164: FND_API.G_MISS_NUM ) ,
6165: p_period_amount => l_period_amount_tbl ,
6166: p_position_line_id => NVL( p_new_position_line_id ,
6167: FND_API.G_MISS_NUM ) ,
6168: p_element_set_id => NVL( l_accts_rec.element_set_id,
6169: FND_API.G_MISS_NUM ) ,
6170: p_salary_account_line => NVL( l_accts_rec.salary_account_line,
6171: FND_API.G_FALSE ) ,
6165: p_period_amount => l_period_amount_tbl ,
6166: p_position_line_id => NVL( p_new_position_line_id ,
6167: FND_API.G_MISS_NUM ) ,
6168: p_element_set_id => NVL( l_accts_rec.element_set_id,
6169: FND_API.G_MISS_NUM ) ,
6170: p_salary_account_line => NVL( l_accts_rec.salary_account_line,
6171: FND_API.G_FALSE ) ,
6172: p_service_package_id => l_accts_rec.service_package_id ,
6173: p_start_stage_seq => l_accts_rec.start_stage_seq ,
6167: FND_API.G_MISS_NUM ) ,
6168: p_element_set_id => NVL( l_accts_rec.element_set_id,
6169: FND_API.G_MISS_NUM ) ,
6170: p_salary_account_line => NVL( l_accts_rec.salary_account_line,
6171: FND_API.G_FALSE ) ,
6172: p_service_package_id => l_accts_rec.service_package_id ,
6173: p_start_stage_seq => l_accts_rec.start_stage_seq ,
6174: p_current_stage_seq => l_accts_rec.current_stage_seq ,
6175: p_end_stage_seq => NVL( l_accts_rec.end_stage_seq,
6172: p_service_package_id => l_accts_rec.service_package_id ,
6173: p_start_stage_seq => l_accts_rec.start_stage_seq ,
6174: p_current_stage_seq => l_accts_rec.current_stage_seq ,
6175: p_end_stage_seq => NVL( l_accts_rec.end_stage_seq,
6176: FND_API.G_MISS_NUM ) ,
6177: p_copy_of_account_line_id => l_accts_rec.account_line_id
6178: );
6179: --
6180: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
6176: FND_API.G_MISS_NUM ) ,
6177: p_copy_of_account_line_id => l_accts_rec.account_line_id
6178: );
6179: --
6180: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
6181: --
6182: ROLLBACK TO Create_Local_Dist_Pvt ;
6183: p_return_status := l_return_status ;
6184: --
6190: --
6191: WHEN OTHERS THEN
6192: --
6193: ROLLBACK TO Create_Local_Dist_Pvt ;
6194: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6195: --
6196: --
6197: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
6198: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
6227: l_api_name CONSTANT VARCHAR2(30) := 'Insert_WS_Lines_Pvt' ;
6228: --
6229: BEGIN
6230: --
6231: p_return_status := FND_API.G_RET_STS_SUCCESS ;
6232: --
6233: update psb_ws_lines
6234: set freeze_flag = p_freeze_flag,
6235: view_line_flag = p_view_line_flag,
6270: EXCEPTION
6271: --
6272: WHEN OTHERS THEN
6273: --
6274: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6275: --
6276: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
6277: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
6278: l_api_name );
6327: /*For Bug No : 2266309 Start*/
6328: SAVEPOINT Delete_Worksheet_Pvt ;
6329: /*For Bug No : 2266309 Start*/
6330: --
6331: p_return_status := FND_API.G_RET_STS_SUCCESS ;
6332:
6333: --
6334: -- p_delete_lines_flag specifies whether psb_ws_account_lines and
6335: -- psb_ws_position_lines related tables will be deleted or not.
6500: /*For Bug No : 2266309 Start*/
6501: ROLLBACK TO Delete_Worksheet_Pvt ;
6502: /*For Bug No : 2266309 End*/
6503: --
6504: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6505: --
6506: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
6507: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
6508: l_api_name );
6542: --
6543: PSB_WS_Ops_Pvt.Delete_Worksheet
6544: (
6545: p_api_version => 1.0 ,
6546: p_init_msg_list => FND_API.G_TRUE,
6547: /*For Bug No : 2266309 Start*/
6548: --p_commit => FND_API.G_FALSE,
6549: p_commit => FND_API.G_TRUE,
6550: /*For Bug No : 2266309 End*/
6544: (
6545: p_api_version => 1.0 ,
6546: p_init_msg_list => FND_API.G_TRUE,
6547: /*For Bug No : 2266309 Start*/
6548: --p_commit => FND_API.G_FALSE,
6549: p_commit => FND_API.G_TRUE,
6550: /*For Bug No : 2266309 End*/
6551: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6552: p_return_status => l_return_status,
6545: p_api_version => 1.0 ,
6546: p_init_msg_list => FND_API.G_TRUE,
6547: /*For Bug No : 2266309 Start*/
6548: --p_commit => FND_API.G_FALSE,
6549: p_commit => FND_API.G_TRUE,
6550: /*For Bug No : 2266309 End*/
6551: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6552: p_return_status => l_return_status,
6553: p_msg_count => l_msg_count,
6547: /*For Bug No : 2266309 Start*/
6548: --p_commit => FND_API.G_FALSE,
6549: p_commit => FND_API.G_TRUE,
6550: /*For Bug No : 2266309 End*/
6551: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
6552: p_return_status => l_return_status,
6553: p_msg_count => l_msg_count,
6554: p_msg_data => l_msg_data,
6555: --
6556: p_worksheet_id => p_worksheet_id,
6557: p_keep_local_copy_flag => p_keep_local_copy_flag
6558: );
6559: --
6560: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
6561: RAISE FND_API.G_EXC_ERROR;
6562: END IF;
6563: --
6564:
6557: p_keep_local_copy_flag => p_keep_local_copy_flag
6558: );
6559: --
6560: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
6561: RAISE FND_API.G_EXC_ERROR;
6562: END IF;
6563: --
6564:
6565: --
6567: COMMIT WORK;
6568: --
6569: EXCEPTION
6570: --
6571: WHEN FND_API.G_EXC_ERROR THEN
6572: --
6573: /*For Bug No : 2266309 Start*/
6574: --ROLLBACK TO Delete_Worksheet_CP_Pvt ;
6575: ROLLBACK;
6574: --ROLLBACK TO Delete_Worksheet_CP_Pvt ;
6575: ROLLBACK;
6576: /*For Bug No : 2266309 End*/
6577: PSB_MESSAGE_S.Print_Error ( p_mode => FND_FILE.LOG ,
6578: p_print_header => FND_API.G_TRUE ) ;
6579: retcode := 2 ;
6580: --
6581: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6582: --
6577: PSB_MESSAGE_S.Print_Error ( p_mode => FND_FILE.LOG ,
6578: p_print_header => FND_API.G_TRUE ) ;
6579: retcode := 2 ;
6580: --
6581: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6582: --
6583: /*For Bug No : 2266309 Start*/
6584: --ROLLBACK TO Delete_Worksheet_CP_Pvt ;
6585: ROLLBACK;
6584: --ROLLBACK TO Delete_Worksheet_CP_Pvt ;
6585: ROLLBACK;
6586: /*For Bug No : 2266309 End*/
6587: PSB_MESSAGE_S.Print_Error ( p_mode => FND_FILE.LOG ,
6588: p_print_header => FND_API.G_TRUE ) ;
6589: retcode := 2 ;
6590: --
6591: WHEN OTHERS THEN
6592: --
6600: l_api_name ) ;
6601: END IF ;
6602: --
6603: PSB_MESSAGE_S.Print_Error ( p_mode => FND_FILE.LOG ,
6604: p_print_header => FND_API.G_TRUE ) ;
6605: retcode := 2 ;
6606: --
6607: END Delete_Worksheet_CP ;
6608: /*---------------------------------------------------------------------------*/
6617: --
6618: PROCEDURE Create_New_Position_Worksheet
6619: (
6620: p_api_version IN NUMBER ,
6621: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
6622: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
6623: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
6624: p_return_status OUT NOCOPY VARCHAR2 ,
6625: p_msg_count OUT NOCOPY NUMBER ,
6618: PROCEDURE Create_New_Position_Worksheet
6619: (
6620: p_api_version IN NUMBER ,
6621: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
6622: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
6623: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
6624: p_return_status OUT NOCOPY VARCHAR2 ,
6625: p_msg_count OUT NOCOPY NUMBER ,
6626: p_msg_data OUT NOCOPY VARCHAR2 ,
6619: (
6620: p_api_version IN NUMBER ,
6621: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE ,
6622: p_commit IN VARCHAR2 := FND_API.G_FALSE ,
6623: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL ,
6624: p_return_status OUT NOCOPY VARCHAR2 ,
6625: p_msg_count OUT NOCOPY NUMBER ,
6626: p_msg_data OUT NOCOPY VARCHAR2 ,
6627: --
6627: --
6628: p_worksheet_id IN psb_worksheets.worksheet_id%TYPE ,
6629: p_budget_group_id IN psb_worksheets.budget_group_id%TYPE ,
6630: p_service_package_operation_id
6631: IN NUMBER := FND_API.G_MISS_NUM ,
6632: p_worksheet_id_OUT OUT NOCOPY psb_worksheets.worksheet_id%TYPE
6633: )
6634: IS
6635: --
6663: BEGIN
6664: --
6665: SAVEPOINT Create_New_Position_WS_Pvt ;
6666: --
6667: IF NOT FND_API.Compatible_API_Call ( l_api_version,
6668: p_api_version,
6669: l_api_name,
6670: G_PKG_NAME )
6671: THEN
6668: p_api_version,
6669: l_api_name,
6670: G_PKG_NAME )
6671: THEN
6672: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6673: END IF;
6674: --
6675: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
6676: FND_MSG_PUB.initialize ;
6671: THEN
6672: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6673: END IF;
6674: --
6675: IF FND_API.To_Boolean ( p_init_msg_list ) THEN
6676: FND_MSG_PUB.initialize ;
6677: END IF;
6678: --
6679:
6676: FND_MSG_PUB.initialize ;
6677: END IF;
6678: --
6679:
6680: p_return_status := FND_API.G_RET_STS_SUCCESS ;
6681: p_worksheet_id_OUT := 0 ;
6682:
6683: --
6684: -- Finding the worksheet information.
6691: --
6692: Fnd_Message.Set_Name ('PSB', 'PSB_INVALID_WORKSHEET_ID') ;
6693: Fnd_Message.Set_Token('ROUTINE', l_api_name ) ;
6694: FND_MSG_PUB.Add;
6695: RAISE FND_API.G_EXC_ERROR ;
6696: END IF ;
6697:
6698: -- l_budget_by_position defines whether worksheet contains positions or not.
6699: l_budget_by_position := NVL(l_worksheets_rec.budget_by_position, 'N') ;
6730: --
6731: PSB_Worksheet_Pvt.Create_Worksheet
6732: (
6733: p_api_version => 1.0 ,
6734: p_init_msg_list => FND_API.G_FALSE,
6735: p_commit => FND_API.G_FALSE,
6736: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
6737: p_return_status => l_return_status,
6738: p_msg_count => l_msg_count,
6731: PSB_Worksheet_Pvt.Create_Worksheet
6732: (
6733: p_api_version => 1.0 ,
6734: p_init_msg_list => FND_API.G_FALSE,
6735: p_commit => FND_API.G_FALSE,
6736: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
6737: p_return_status => l_return_status,
6738: p_msg_count => l_msg_count,
6739: p_msg_data => l_msg_data ,
6732: (
6733: p_api_version => 1.0 ,
6734: p_init_msg_list => FND_API.G_FALSE,
6735: p_commit => FND_API.G_FALSE,
6736: p_validation_level => FND_API.G_VALID_LEVEL_NONE,
6737: p_return_status => l_return_status,
6738: p_msg_count => l_msg_count,
6739: p_msg_data => l_msg_data ,
6740: --
6780: p_context => l_worksheets_rec.context,
6781: p_worksheet_id => l_new_worksheet_id
6782: );
6783: --
6784: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6785: RAISE FND_API.G_EXC_ERROR ;
6786: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6788: END IF;
6781: p_worksheet_id => l_new_worksheet_id
6782: );
6783: --
6784: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6785: RAISE FND_API.G_EXC_ERROR ;
6786: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6788: END IF;
6789:
6782: );
6783: --
6784: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6785: RAISE FND_API.G_EXC_ERROR ;
6786: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6788: END IF;
6789:
6790: --
6783: --
6784: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6785: RAISE FND_API.G_EXC_ERROR ;
6786: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6787: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6788: END IF;
6789:
6790: --
6791: -- Get budget calendar related info to find all the budget groups down in the
6799: p_return_status => l_return_status ,
6800: p_budget_calendar_id => l_main_budget_calendar_id
6801: );
6802: --
6803: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6804: RAISE FND_API.G_EXC_ERROR ;
6805: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6806: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6807: END IF;
6800: p_budget_calendar_id => l_main_budget_calendar_id
6801: );
6802: --
6803: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6804: RAISE FND_API.G_EXC_ERROR ;
6805: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6806: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6807: END IF;
6808: --
6801: );
6802: --
6803: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6804: RAISE FND_API.G_EXC_ERROR ;
6805: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6806: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6807: END IF;
6808: --
6809: END IF ;
6802: --
6803: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6804: RAISE FND_API.G_EXC_ERROR ;
6805: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6806: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6807: END IF;
6808: --
6809: END IF ;
6810:
6816: SELECT count(*) INTO l_service_package_count
6817: FROM psb_ws_submit_service_packages
6818: WHERE worksheet_id = p_worksheet_id
6819: AND operation_id = NVL( p_service_package_operation_id ,
6820: FND_API.G_MISS_NUM ) ;
6821: --
6822: -- Maintain psb_ws_lines_positions table if worksheet contains positions.
6823: --
6824: IF l_budget_by_position = 'Y' THEN
6867: --
6868: PSB_WS_Pos_Pvt.Create_Position_Matrix
6869: (
6870: p_api_version => 1.0 ,
6871: p_init_msg_list => FND_API.G_FALSE ,
6872: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
6873: p_return_status => l_return_status ,
6874: p_msg_count => l_msg_count ,
6875: p_msg_data => l_msg_data ,
6868: PSB_WS_Pos_Pvt.Create_Position_Matrix
6869: (
6870: p_api_version => 1.0 ,
6871: p_init_msg_list => FND_API.G_FALSE ,
6872: p_validation_level => FND_API.G_VALID_LEVEL_NONE ,
6873: p_return_status => l_return_status ,
6874: p_msg_count => l_msg_count ,
6875: p_msg_data => l_msg_data ,
6876: --
6879: p_freeze_flag => l_lines_pos_rec.freeze_flag ,
6880: p_view_line_flag => l_lines_pos_rec.view_line_flag
6881: ) ;
6882: --
6883: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6884: RAISE FND_API.G_EXC_ERROR ;
6885: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6886: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6887: END IF;
6880: p_view_line_flag => l_lines_pos_rec.view_line_flag
6881: ) ;
6882: --
6883: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6884: RAISE FND_API.G_EXC_ERROR ;
6885: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6886: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6887: END IF;
6888: --
6881: ) ;
6882: --
6883: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6884: RAISE FND_API.G_EXC_ERROR ;
6885: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6886: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6887: END IF;
6888: --
6889:
6882: --
6883: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6884: RAISE FND_API.G_EXC_ERROR ;
6885: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6886: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6887: END IF;
6888: --
6889:
6890: --
6915: p_creation_date => g_current_date,
6916: p_return_status => l_return_status
6917: ) ;
6918: --
6919: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6920: RAISE FND_API.G_EXC_ERROR ;
6921: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6923: END IF;
6916: p_return_status => l_return_status
6917: ) ;
6918: --
6919: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6920: RAISE FND_API.G_EXC_ERROR ;
6921: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6923: END IF;
6924: --
6917: ) ;
6918: --
6919: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6920: RAISE FND_API.G_EXC_ERROR ;
6921: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6923: END IF;
6924: --
6925:
6918: --
6919: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
6920: RAISE FND_API.G_EXC_ERROR ;
6921: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
6922: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
6923: END IF;
6924: --
6925:
6926: END LOOP ; --/ Maintain position_line_id related account lines.
6939: p_worksheet_id_OUT := l_new_worksheet_id ;
6940: END IF ;
6941:
6942: --
6943: IF FND_API.To_Boolean ( p_commit ) THEN
6944: COMMIT WORK;
6945: END IF;
6946: --
6947: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6948: p_data => p_msg_data );
6949: --
6950: EXCEPTION
6951: --
6952: WHEN FND_API.G_EXC_ERROR THEN
6953: --
6954: ROLLBACK TO Create_New_Position_WS_Pvt ;
6955: p_return_status := FND_API.G_RET_STS_ERROR;
6956: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6951: --
6952: WHEN FND_API.G_EXC_ERROR THEN
6953: --
6954: ROLLBACK TO Create_New_Position_WS_Pvt ;
6955: p_return_status := FND_API.G_RET_STS_ERROR;
6956: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6957: p_data => p_msg_data );
6958: --
6959: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6955: p_return_status := FND_API.G_RET_STS_ERROR;
6956: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6957: p_data => p_msg_data );
6958: --
6959: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6960: --
6961: ROLLBACK TO Create_New_Position_WS_Pvt ;
6962: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6963: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6958: --
6959: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
6960: --
6961: ROLLBACK TO Create_New_Position_WS_Pvt ;
6962: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6963: FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
6964: p_data => p_msg_data );
6965: --
6966: WHEN OTHERS THEN
6969: CLOSE l_worksheets_csr ;
6970: END IF ;
6971: --
6972: ROLLBACK TO Create_New_Position_WS_Pvt ;
6973: p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
6974: --
6975: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
6976: FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
6977: l_api_name);